You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Numpy计算特征向量结果与教材不符的原因咨询

特征向量结果差异的原因解释

核心原理

  • 特征向量的非零标量倍数仍然是对应特征值的有效特征向量
  • 特征向量矩阵中列的顺序只需与对应特征值的顺序匹配即可,不同工具或教材可能采用不同的排列顺序

针对你的案例分析

你使用的矩阵A是对角矩阵:

A = np.array([[0,0],
              [0,16]])

它的特征值为0和16:

  • 对应特征值0的特征空间是所有形如[k, 0](k≠0)的向量,[1, 0]是该空间的一个基向量
  • 对应特征值16的特征空间是所有形如[0, m](m≠0)的向量,[0, 1]是该空间的一个基向量

numpy的linalg.eig函数返回的特征向量矩阵,其列是按特征值的计算/排序顺序排列的,因此得到:

array([[1., 0.],
       [0., 1.]])

如果教材中的特征向量矩阵需要交换行(或列)才能与numpy结果匹配,本质是以下两种合法情况之一:

  1. 特征向量顺序不同:教材可能将对应特征值16的特征向量放在第一列,对应0的放在第二列,得到的矩阵如[[0,1],[1,0]]——这完全合规,只要列与特征值的对应关系正确即可
  2. 特征向量是原向量的非零倍数:比如教材用[-1, 0]或[0, 5]作为特征向量,这类非零缩放后的向量依然是有效特征向量

验证方法

若要确认特征向量是否正确,只需验证:矩阵A乘以该向量,结果等于对应特征值乘以该向量(即A @ v == λ * v),同时保证特征向量之间线性无关即可。

内容的提问来源于stack exchange,提问作者Johny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 18:12:13