登录
首页大数据时代一文带你快速了解矩阵中特征值与特征向量那些事儿
一文带你快速了解矩阵中特征值与特征向量那些事儿
2020-08-03
收藏

在线性代数中,我们都学过特征值与特征向量,但是对于这两者的意义以及应用却理解得不是那么深刻。机器学习中,我们也经常会遇到特征值与特征向量这两个概念,小编今天就给大家具体分享一下这两者的基本知识。

一、特征值和特征向量定义

设A为n阶方阵,如果数λ和n为非零列向量x,并使得Ax=λx成立,那么就把λ叫做方阵A的一个特征值,x就是方阵A的对应于特征值λ的一个特征向量。

需要注意:

1.A是方阵。(对于非方阵来说,是不存在特征值的,但是会存在条件数。)

2.特征向量x为非零列向量。

二、特征值和特征向量几何意义

如果把矩阵当做是运动,那么对于运动来说,最重要就是速度和方向了。

特征值表示运动的速度

特征向量表示运动的方向


接下来我们调整向量v的方向,使其看起来特殊一点

特征向量在一个矩阵的作用下作伸缩运动,特征值决定了伸缩的幅度。如果特征值大于1.那么所有属于此特征值的特征向量变长;当特征值大于0小于1时,那么特征向量就会缩短;当特征值小于0.这时特征向量缩过了界,就会反方向到达原点。

三、特征值、特征向量的性质

1.只有方阵才有特征值和特征向量 。因为总有特征多项式(特征方程),所以方阵总有特征值,但是并不是所有方阵都有实数特征

2.实方阵一定有实数特征

3.不同特征值对应的特征向量是线性无关的

4.对于实对称矩阵或埃尔米特矩阵来说,不同特征值对应的特征向量必定正交(相互垂直)

四、矩阵对角化

矩阵对角化的充要条件为:n阶矩阵有n个线性无关的特征向量。

推断出:如果n阶方阵A有n个互不相同的特征值,那么方阵A可对角化。

并且:

对角阵的主对角元素为A的特征

可逆矩阵P由A的n个线性无关的特征向量作列向量构成。

五、python求解特征值和特征向量示例


>>> a=np.array([[1,2,3],[3,2,5],[1,10,8]])
>>> e,q=np.linalg.eig(a)
>>> e
array([ 13.50864036,  -0.42667365,  -2.0819667 ])
>>> q
array([[-0.27543318, -0.6534998 , -0.23748816],
       [-0.44255955, -0.44847532, -0.67779488],
       [-0.85339183,  0.60976053,  0.69584012]])
>>> 
>>> E=np.diag(e) # 对角阵
>>> E
array([[ 13.50864036,   0.        ,   0.        ],
       [  0.        ,  -0.42667365,   0.        ],
       [  0.        ,   0.        ,  -2.0819667 ]])


数据分析咨询请扫描二维码

客服在线
立即咨询