numpy.linalg 实战指南一份实用 numpy.linalg 指南覆盖向量、矩阵乘法、线性系统、分解、特征问题、最小二乘和数值稳定性。理解 NumPy 线性代数背后的几何和形状约定。根据问题选择 solve、lstsq、QR、SVD 或特征值方法。检查残差、秩、条件数和数值容差。编写高效、可解释且可测试的线性代数流程。示例均为独立代码片段可复制到 Python 3 环境中运行。1. 向量、形状、范数与几何含义NumPy 使用 ndarray 表示向量和矩阵。shape 为 (n,) 的一维数组与 shape 为 (n, 1) 的列矩阵并不相同这个区别会影响广播、矩阵乘法和求解器输入。范数衡量大小距离比较向量点积衡量方向一致程度。图 1向量投影表示 v 沿 u 方向的分量。概念NumPy 表达式含义向量形状v.shape(n,) 或明确的 (n, 1)点积np.dot(u, v) 或 u v方向一致性和加权和欧氏范数np.linalg.norm(v)大小 ||v||₂矩阵范数np.linalg.norm(A)取决于指定的范数阶数单位向量v / np.linalg.norm(v)大小为 1 的方向距离np.linalg.norm(u - v)欧氏间隔import numpy as npu np.array([3.0, 1.0])v np.array([1.0, 2.5])print(u.shape, v.shape)print(dot:, u v)print(norm:, np.linalg.norm(u))projection (v u) / (u u) * uprint(projection)形状纪律当表达向量语义时使用 (n)需要列矩阵时明确使用 (n, 1)。使用 前检查维度若 A 是 (m, n)兼容向量应是 (n,) 或 (n, 1)。对一批向量计算范数或归约时显式指定 axis。记录单位和坐标系只有分量可比较时范数才有明确意义。2. 矩阵乘法与线性变换矩阵可以表示线性变换、方程组、类似协方差的对象或系数表。在 NumPy 中* 表示逐元素乘法 表示矩阵乘法。矩阵乘法可以组合变换也可以把加权坐标组合起来。图 2矩阵把单位圆映射为椭圆样的变换曲线。A np.array([[2.0, 0.5], [0.0, 1.5]])B np.array([[1.0, -1.0], [2.0, 0.0]])x np.array([3.0, 4.0])print(A * B) # 逐元素乘法print(A B) # 矩阵乘法print(A x) # 变换向量print(A.T) # 转置操作表达式形状行为逐元素乘法A * B数组按元素广播矩阵乘法A B内部维度必须匹配转置A.T二维矩阵交换轴迹np.trace(A)主对角线之和对角线np.diag(A)提取或构造对角线秩np.linalg.matrix_rank(A)独立方向数量方向与批量计算对于矩阵批次许多函数把前导维度视为批次把最后两个轴作为矩阵维度。应阅读函数的轴约定并用小例子测试。转置视图可能不是连续内存通常没有问题但需要特定内存布局的下游代码可能受影响。3. 求解线性系统与检查残差线性系统 Ax b 要求一个 x 同时满足多条方程。对于方阵且非奇异的系统应使用 np.linalg.solve而不是先计算显式逆矩阵。求解后计算残差 r Ax − b并根据 b 的尺度检查其相对范数。A np.array([[3.0, 1.0], [1.0, 2.0]])b np.array([9.0, 8.0])x np.linalg.solve(A, b)residual A x - brelative_residual np.linalg.norm(residual) / np.linalg.norm(b)print(solution:, x)print(relative residual:, relative_residual)问题推荐方法诊断方阵非奇异 Axbnp.linalg.solve||Ax−b||超定系统np.linalg.lstsq残差和秩奇异或秩亏lstsq 或 pinv秩和奇异值多个右端项solve(A, B)B 有多个列对称正定Cholesky 方法或 solve对称性和正定性为什么不使用 inv(A) b显式求逆通常计算量更大可能放大数值误差也隐藏了实际的线性系统操作。只有在确实需要逆矩阵且理解数值后果时才考虑使用 inv。# 一次求解多个右端项B np.column_stack([b, np.array([1.0, 2.0])])solutions np.linalg.solve(A, B)print(solutions.shape)4. 最小二乘、投影与 QR/SVD 思想当方程数多于未知数时可能不存在精确解。最小二乘选择参数使 ||Ax − b||₂² 最小。从几何上说拟合向量是 b 在 A 的列空间上的投影。NumPy 的 lstsq 返回解、残差信息、秩和奇异值。图 3最小二乘寻找使平方残差最小的直线。x_values np.linspace(0, 10, 30)y_values 2.0 * x_values 1.0 np.random.default_rng(2026).normal(0, 1.5, 30)A np.column_stack([x_values, np.ones_like(x_values)])coefficients, residuals, rank, singular_values np.linalg.lstsq(A, y_values, rcondNone)prediction A coefficientsprint(coefficients)print(residuals, rank, singular_values)结果含义用途solution最佳最小二乘系数预测或参数估计residuals平方残差汇总适用时作为拟合诊断rankA 的数值秩可识别性检查singular values独立方向的尺度条件性和有效秩rcond小奇异值阈值控制秩的解释QR 与 SVD 直觉QR 分解把 A 写成 A QR其中包含正交方向和上三角因子。SVD 把 A 写成 A UΣVᵀ分离输入方向、缩放和输出方向。SVD 特别适合秩亏系统、伪逆、压缩和诊断。列接近线性相关时不要直接把系数解释为稳定结果。5. 特征值、特征向量与对称矩阵特征向量 v 满足 Av λv矩阵 A 作用后向量长度和符号可能变化但方向不变。特征值表示这些缩放因子。对于实对称或 Hermitian 矩阵eigh 会利用结构返回实特征值和正交归一的特征向量。图 4特征向量表示矩阵作用后保持的方向特征值表示缩放程度。A np.array([[3.0, 1.0], [1.0, 2.0]])values, vectors np.linalg.eigh(A)for index, value in enumerate(values):v vectors[:, index]print(value, v)print(np.allclose(A v, value * v))# 一般方阵可能得到复数结果values_general, vectors_general np.linalg.eig(A)函数矩阵假设输出eig一般方阵可能为复数的特征对eigh实对称 / Hermitian实特征值和正交向量eigvals一般方阵只返回特征值eigvalsh对称 / Hermitian只返回特征值且利用结构svd矩形或方阵U、奇异值、Vh特征向量约定特征向量的符号或复数相位不唯一v 与 −v 表示同一实方向。比较不同数值运行时应比较子空间或重构结果而不要强求每个向量符号完全一致。6. SVD、伪逆、范数与矩阵性质奇异值分解 A UΣVᴴ 适用于矩形矩阵是重要的诊断工具。较大的奇异值代表强方向很小的奇异值表示接近线性相关或观测较弱的方向。伪逆使用容差处理小奇异值。图 5奇异值显示主要方向和有效数值秩。A np.array([[1.0, 2.0, 3.0], [2.0, 4.0, 6.0]])U, singular_values, Vh np.linalg.svd(A, full_matricesFalse)rank np.linalg.matrix_rank(A)A_pinv np.linalg.pinv(A)print(U.shape, singular_values, Vh.shape)print(rank)print(np.allclose(A A_pinv A, A))工具问题解释norm(A, 2)最大的奇异值是多少最大放大程度norm(A, fro)总体元素大小是多少平方和开根matrix_rank有多少独立方向依赖容差的数值秩pinv最小范数广义逆是什么使用奇异值截断cond矩阵有多敏感最大与最小相关尺度之比伪逆注意事项伪逆很有用但很小的奇异值会使系数对噪声非常敏感。当解的稳定性重要时应同时报告秩和奇异值。7. 条件性、数值稳定性与生产检查表良态问题在输入发生小扰动时只会产生适度变化病态问题会放大测量误差或舍入误差。条件性是数学问题的性质稳定性还取决于算法。缩放变量、选择利用结构的求解器和检查残差可以提高可靠性但不能让本质上含糊的问题变得有信息。图 6条件性直觉应相对于尺度和敏感性解释小扰动。检查项问题行动形状矩阵和向量维度是否有意设计打印 shape 并断言约定秩行列是否足够独立检查 matrix_rank 和奇异值条件数输入噪声会被放大吗检查 cond 并缩放变量残差解是否满足方程计算绝对和相对残差结构A 是否对称、三角或正定使用结构化方法容差数值上何时视为零设置并记录 rcond 或容差验证已知案例是否有效使用往返和合成测试# 紧凑的线性代数验证报告A np.array([[4.0, 1.0], [1.0, 3.0]])b np.array([1.0, 2.0])x np.linalg.solve(A, b)report {shape_A: A.shape,rank_A: np.linalg.matrix_rank(A),condition_A: np.linalg.cond(A),relative_residual: np.linalg.norm(A x - b) / np.linalg.norm(b),}print(report)numpy.linalg 最终检查表在乘法或求解前明确向量和矩阵形状。线性系统使用 solve而不是显式求逆。超定系统使用 lstsq并检查秩和残差。对称/Hermitian 特征问题使用 eigh使用 SVD 诊断秩和条件性。重要结果应报告尺度、容差、残差和数值限制。
企业数字化 ERP 产品动态
相关推荐
# 鸿蒙端侧 AI:把大模型装在设备本地,开启万物智联新范式 > 摘要
传统 AI 大多依赖云端服务器运算,一旦断网就失效,同时隐私数据上传存在风险。鸿蒙的核心思路是AI 能力下沉到端侧,将轻量化盘古大模型深度集成进操作系统底座,依托麒麟 NPU、MindSpore Lite 推理引擎,在手机、平板… · 2026/9/27 9:36:42
怎么开网站做网红避坑指南:3步打通流量闭环 怎么开网站做网红避坑指南:3步打通流量闭环 网站上线三个月,后台数据一片死寂。你盯着那个个位数的日访问量,心里慌得一批。明明内容不错,设计也花了大价钱,为什么没人看?更别提靠这个搞点流量变现了。… · 2026/9/27 9:36:29
2026最新微信公众平台导航wordpress模版搭建避坑指南 2026最新微信公众平台导航wordpress模版搭建避坑指南 网站做好了没人访问,这大概是项目经理最头疼的噩梦。你盯着后台数据,日活个位数,心里直打鼓:是不是模板选错了?是不是服务器太卡?还是SEO没做对?别急,今天咱们不聊虚的,直接拆解… · 2026/9/27 9:36:23
5个避坑指南教你photoshop网页版在线使用免费 5个避坑指南教你photoshop网页版在线使用免费 网站做好了没人访问?别急着加钱投广告,先查查你的站能不能被搜到。很多老板花几万块做个站,上线后天天盯着后台,流量个位数,心里慌得不行。其实问题往往出在细节上,比如图片没压缩、代码冗余、或… · 2026/9/27 10:24:32
南京招网站开发避坑指南:3个实战案例教你搞定域名备案 南京招网站开发避坑指南:3个实战案例教你搞定域名备案 网站上线了,后台数据一片空白,这是很多老板最头疼的事。在南京招网站开发,光看代码漂亮没用,得看流量能不能进得来。我见过太多南京的中小企业,花大价钱做了个响应式官网,结果因为DNS没配对、… · 2026/9/27 10:24:32
宁波seo外包3个坑:网站没人看?懂建站报价才不亏 宁波seo外包3个坑:网站没人看?懂建站报价才不亏 网站做好了没人访问,这不仅是焦虑,更是很多宁波企业主的真实痛点。我接过不少单子,发现大家往往把宝押在 建站报价… · 2026/9/27 10:24:32
简单的个人网站模板2026最新 个人网站模板避坑指南:3步搞定简单主页速查手册 想做网站却怕代码?别慌,这份简单的个人网站模板速查手册专治手残党。 你不需要懂后端,甚至不用装复杂的IDE,只要会复制粘贴,就能在半天内上线。… · 2026/9/27 10:24:26
Go Fx Value Groups 完整指南:多生产者多消费者场景下的批量依赖注入 后端开发工具 【免费下载链接】fx A dependency injection based application framework for Go. 项目地址: https://gitcode.com/gh_mirrors/fx1/fx 点击查看 免费下载 导读
本文围绕 Uber 开源的依赖注入框架 Fx(本仓库即其源码,模块导入… · 2026/9/27 10:24:26
Ajenti 2 安装指南:虚拟环境一键部署、手动安装与彻底卸载 后端运维 【免费下载链接】ajenti Ajenti Core and stock plugins 项目地址: https://gitcode.com/gh_mirrors/aj/ajenti 点击查看 免费下载 本篇指南基于 Ajenti 官方安装文档(docs/source/man/install.rst)编写,系统讲解在 Deb… · 2026/9/27 10:24:20
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01