7.11 特征值
admin
2024-01-28 08:24:00

文章目录

  • 1 马尔科夫链
  • 2 特征值与特征向量
  • 3 行列式法求特征值
  • 4 特征空间
  • 5 广义特征向量
  • 6 广义特征空间

1 马尔科夫链

  矩阵的特征值,在马尔科夫链中应用非常广泛。什么是马尔科夫链呢?马尔科夫链是一个概率矩阵。所谓的概率矩阵是有N个概率向量组成的。举个例子,假如有一个移民模型

目的地北京上海
北京0.4
上海0.3

  这个矩阵代表由北京移民到上海的概率为0.3,有上海移民到北京的概率为0.4。
  那么设初始北京有1000万人,上海有1200万人。
  第一次移民后北京的人口为留在北京的1000×0.71000\times0.71000×0.7 +上海移民过来的$ 1000 \times0.4$
  第一次移民后上海的人口为留在上海的1000×0.31000\times0.31000×0.3 +北京移民过来的 1200×0.61200\times0.61200×0.6
  这其实就是矩阵乘以向量嘛。
(0.70.40.30.6)×(10001200)\begin{pmatrix} 0.7 &0.4 \\ 0.3 &0.6 \end{pmatrix}\times\begin{pmatrix}1000\\1200\end{pmatrix} (0.70.3​0.40.6​)×(10001200​)
  那么概率矩阵为:
(0.70.40.30.6)\begin{pmatrix} 0.7 &0.4 \\ 0.3 &0.6 \end{pmatrix} (0.70.3​0.40.6​)
  因为概率的总和是1,所以概率矩阵的每个概率向量,向量里的数字加起来和为1。初始向量为:
(10001200)\begin{pmatrix}1000\\1200\end{pmatrix} (10001200​)
  我们可以用python代码试验这个过程。

from com.youngthing.mathalgorithm.matrix import Matrixif __name__ == '__main__':probability = Matrix([[0.7, 0.4], [0.3, 0.6]])vector = Matrix([[1000], [1200]])for i in range(1, 100):vector = probability * vectorprint(i, "vector=", vector.lines[0][0], vector.lines[1][0])print("vector=", vector)

  在第i=29时,这个向量不再变化,也就是说北京和上海的人口不再变化。python运行结果如下:

29 vector= 1257.1428571428564 942.8571428571427
30 vector= 1257.1428571428564 942.8571428571424
31 vector= 1257.1428571428564 942.8571428571424

  这个向量叫做马可夫链的稳态向量。
  那么稳态向量怎么求呢?如果用上面的循环代码求,那也太蠢了。
  稳态向量的求法是用公式:
Ap=pAp−p=0(A−I)p=0Ap=p\\ Ap-p=0\\ (A-I)p=0 Ap=pAp−p=0(A−I)p=0
  所以解(A−I)p=0(A-I)p=0(A−I)p=0这个方程就可以了
  但是因为稳态向量有多个,所以最好取一个总和为1的向量。所以python代码如下:

def steady_state_vector(self):# 首先构造矩阵A-Isize = len(self.__lines)unit_matrix = Matrix(self.unit_matrix(size))# A - I = 0final_matrix = (self - unit_matrix).append(Matrix([[0] for _ in self.__lines]))# 最后概率总和=1# 不要第一行final_matrix.__lines[0] = [1 for _ in final_matrix.lines[0]]print(final_matrix)return final_matrix.gaussian_reduction()

  这里新加了矩阵的减法:

def __sub__(self, other):return Matrix([[e - other.__lines[y][x] for x, e in enumerate(line)] for y, line in enumerate(self.__lines)])

2 特征值与特征向量

  特征值与特征向量和马尔科夫链的稳态向量概念相似。特征值是这样定义的:
  对于矩阵A和一个非零向量v,如果有:
Av=λvAv=\lambda v Av=λv
  那么λ\lambdaλ就是A的特征值,v就是A的特征向量。和马尔科夫链的稳态向量对比一下:
Ap=pAp=p Ap=p
  可见马尔可夫链的稳态向量就是特征值λ=1\lambda=1λ=1的特殊场景而已。特征向量有无穷多个,但是特征值的个数是有限的。从特征值的几何意义就是,矩阵不过是把某些向量给延长(或缩短)了而已。

3 行列式法求特征值

  求特征值的通用方法,就是大学课本教给我们的方法。
Av−λv=0(A−λI)v=0det(A−λI)=0Av-\lambda v=0\\ (A-\lambda I)v=0\\ det(A-\lambda I)=0 Av−λv=0(A−λI)v=0det(A−λI)=0
  但是为了避免首项的系数是负数,要把det(A−λI)=0det(A-\lambda I)=0det(A−λI)=0换成det(λI−A)=0det(\lambda I-A)=0det(λI−A)=0。
  对det(λI−A)=0det(\lambda I-A)=0det(λI−A)=0的计算,会得到一个多项式方程,这个多项式方程就叫做特征方程。举个例子:
A=(21−112−1−1−12)λI−A=(λ−21−11λ−2−1−1−1λ−2)det(λI−A)=λ3−6λ2+9λ−4=(λ−1)2(λ−4)=0λ1=λ2=1,λ3=4A=\begin{pmatrix} 2& 1& -1\\ 1& 2& -1\\ -1& -1& 2 \end{pmatrix}\\ \lambda I-A=\begin{pmatrix} \lambda-2& 1& -1\\ 1& \lambda-2& -1\\ -1& -1& \lambda-2 \end{pmatrix}\\ det(\lambda I-A)=\lambda^3 - 6\lambda^2 + 9\lambda - 4\\ =(\lambda-1)^2(\lambda-4)=0\\ \lambda_1=\lambda_2=1,\lambda_3=4 A=⎝⎛​21−1​12−1​−1−12​⎠⎞​λI−A=⎝⎛​λ−21−1​1λ−2−1​−1−1λ−2​⎠⎞​det(λI−A)=λ3−6λ2+9λ−4=(λ−1)2(λ−4)=0λ1​=λ2​=1,λ3​=4
  在上面的例子中λ3−6λ2+9λ−4=0\lambda^3 - 6\lambda^2 + 9\lambda - 4=0λ3−6λ2+9λ−4=0就是矩阵的特征方程。

4 特征空间

  前面说过矩阵不过是把自己的特征向量给延长或缩短了,为了求特征值和特征向量,我们有以下的方程:
(A−λI)v=0(A-\lambda I)v=0 (A−λI)v=0
  把某个特征值代进去,得到的A−λIA-\lambda IA−λI是一个矩阵,这个矩阵会把对应的特征向量变成0向量。这群向量构成了一个空间,这个空间就叫做特征空间
  可以举个例子:
A=(2.01.0−1.01.02.0−1.0−1.0−1.02.0)A−λI=(1.01.0−1.01.01.0−1.0−1.0−1.01.0)A=\begin{pmatrix} 2.0 & 1.0 & -1.0\\ 1.0 & 2.0 & -1.0\\ -1.0 & -1.0 & 2.0 \end{pmatrix}\\ A-\lambda I=\begin{pmatrix} 1.0 & 1.0 & -1.0\\ 1.0 & 1.0 & -1.0\\ -1.0 & -1.0 & 1.0 \end{pmatrix}\\ A=⎝⎛​2.01.0−1.0​1.02.0−1.0​−1.0−1.02.0​⎠⎞​A−λI=⎝⎛​1.01.0−1.0​1.01.0−1.0​−1.0−1.01.0​⎠⎞​
  然后我们根据定义解下齐次线性方程组就可以了。
(1.01.0−1.01.01.0−1.0−1.0−1.01.0)∼(1.01.0−1.00.00.00.00.00.00.0)∴v=k1(101)+k2(011)\begin{pmatrix} 1.0 & 1.0 & -1.0\\ 1.0 & 1.0 & -1.0\\ -1.0 & -1.0 & 1.0 \end{pmatrix} \sim \begin{pmatrix} 1.0 & 1.0 & -1.0\\ 0.0 & 0.0 & 0.0\\ 0.0 & 0.0 & 0.0 \end{pmatrix}\\ \therefore v=k_1\begin{pmatrix}1\\0\\1\end{pmatrix}+k_2\begin{pmatrix}0\\1\\1\end{pmatrix} ⎝⎛​1.01.0−1.0​1.01.0−1.0​−1.0−1.01.0​⎠⎞​∼⎝⎛​1.00.00.0​1.00.00.0​−1.00.00.0​⎠⎞​∴v=k1​⎝⎛​101​⎠⎞​+k2​⎝⎛​011​⎠⎞​
  所以这个特征空间的两个基就求出来了。我们再试一下下一个特征值4:
A=(2.01.0−1.01.02.0−1.0−1.0−1.02.0)A−λI=(−2.01.0−1.01.0−2.0−1.0−1.0−1.0−2.0)A=\begin{pmatrix} 2.0 & 1.0 & -1.0\\ 1.0 & 2.0 & -1.0\\ -1.0 & -1.0 & 2.0 \end{pmatrix}\\ A-\lambda I=\begin{pmatrix} -2.0 & 1.0 & -1.0\\ 1.0 & -2.0 & -1.0\\ -1.0 & -1.0 & -2.0 \end{pmatrix}\\ A=⎝⎛​2.01.0−1.0​1.02.0−1.0​−1.0−1.02.0​⎠⎞​A−λI=⎝⎛​−2.01.0−1.0​1.0−2.0−1.0​−1.0−1.0−2.0​⎠⎞​
  同样,解一下这个齐次方程组:
(−2.01.0−1.01.0−2.0−1.0−1.0−1.0−2.0)∼(−2.01.0−1.00.01.01.00.00.00.0)∴v=k(011)\begin{pmatrix} -2.0 & 1.0 & -1.0\\ 1.0 & -2.0 & -1.0\\ -1.0 & -1.0 & -2.0 \end{pmatrix} \sim \begin{pmatrix} -2.0 & 1.0 & -1.0\\ 0.0 & 1.0 & 1.0\\ 0.0 & 0.0 & 0.0 \end{pmatrix}\\ \therefore v=k\begin{pmatrix}0\\1\\1\end{pmatrix} ⎝⎛​−2.01.0−1.0​1.0−2.0−1.0​−1.0−1.0−2.0​⎠⎞​∼⎝⎛​−2.00.00.0​1.01.00.0​−1.01.00.0​⎠⎞​∴v=k⎝⎛​011​⎠⎞​
  这样两个特征值的特征空间就求出来了。

5 广义特征向量

  有了特征向量和特征向量构成的特征空间,我们知道A−λIA-\lambda IA−λI可以把特征空间里的向量变成0。我们再想想,(A−λI)2(A-\lambda I)^2(A−λI)2能不能把某个向量变成0呢?三次方呢?四次方呢?有了方向,数学家们就开始思考了,于是有了广义特征向量的定义:
(A−λI)jv=0(A-\lambda I)^jv=0 (A−λI)jv=0
  公式中v被成为广义特征向量generalized eigenvector,对于某个固定的v,上述公式中的jjj的最小值是广义特征向量的下标index。毫无疑问,特征向量本身是一个j=1的广义特征向量。我们举个例子:
A=(211−2−1−2112)λ=1A= \begin{pmatrix} 2 & 1 & 1\\ -2 & -1 & -2\\ 1 & 1 & 2 \end{pmatrix}\\ \lambda=1 A=⎝⎛​2−21​1−11​1−22​⎠⎞​λ=1
  以λ1=2\lambda_1=2λ1​=2为例子,求它的特征方程:
A−I=(111−2−2−2111)∼(111000000)v=k1(−110)+k2(−101)(A−I)2=(000000000)v=k1(100)+k2(010)+k3(001)A-I= \begin{pmatrix} 1 & 1 & 1\\ -2 & -2 & -2\\ 1 & 1 & 1 \end{pmatrix} \sim \begin{pmatrix} 1 & 1 & 1\\ 0 & 0 & 0\\ 0 & 0 & 0 \end{pmatrix}\\ v=k_1\begin{pmatrix}-1\\1\\0\end{pmatrix}+k_2\begin{pmatrix}-1\\0\\1\end{pmatrix}\\ (A-I)^2= \begin{pmatrix} 0 & 0 & 0\\ 0 & 0 & 0\\ 0 & 0 & 0 \end{pmatrix}\\ v=k_1\begin{pmatrix}1\\0\\0\end{pmatrix}+k_2\begin{pmatrix}0\\1\\0\end{pmatrix}+k_3\begin{pmatrix}0\\0\\1\end{pmatrix}\\ A−I=⎝⎛​1−21​1−21​1−21​⎠⎞​∼⎝⎛​100​100​100​⎠⎞​v=k1​⎝⎛​−110​⎠⎞​+k2​⎝⎛​−101​⎠⎞​(A−I)2=⎝⎛​000​000​000​⎠⎞​v=k1​⎝⎛​100​⎠⎞​+k2​⎝⎛​010​⎠⎞​+k3​⎝⎛​001​⎠⎞​
  所以j到2时,再乘什么都是0矩阵了,广义特征向量就是任意向量,再乘方就没意义了。

6 广义特征空间

  对于上述的规律,我们总在j增大到一定程度后,广义特征向量所在的空间是不会增大的。所以对某个特定的特征值定义了以下空间:
Ej(λ)={v∣(A−λI)jv=0}E_j(\lambda)=\{v|(A-\lambda I)^jv=0\} Ej​(λ)={v∣(A−λI)jv=0}
  当jjj无穷大时定义的空间E∞(λ)E_\infty(\lambda)E∞​(λ),被称为广义特征空间generalized eigenspace。但是也不要看到无穷就悲观,因为前面我们说了当j到一定程度时,Ej(λ)E_j(\lambda)Ej​(λ)空间不再扩大,这个时候就等于广义特征空间,这时候的jjj被称为广义特征向量最大下标maximum index of
a generalized eigenvector of A associated to λ
,数学符号为max−ind(λ)max-ind(\lambda)max−ind(λ)。实际上max−ind(λ)max-ind(\lambda)max−ind(λ)等于该特征值最大约当块的行数。

相关内容

热门资讯

黑科技亲测攻略!《新版wpk好... 黑科技亲测攻略!《新版wpk好友局》外挂辅助软件了!(辅助挂)分析介绍教程(2024已更新)(哔哩哔...
黑科技亲测攻略!(hhpoke... 黑科技亲测攻略!(hhpoker)外挂辅助软件了!(辅助挂)分析介绍教程(2024已更新)(哔哩哔哩...
黑科技亲测攻略!微扑克后台外挂... 黑科技亲测攻略!微扑克后台外挂辅助软件了!(辅助挂)分析介绍教程(2024已更新)(哔哩哔哩)是一款...
黑科技亲测攻略!新版WPK外挂... 黑科技亲测攻略!新版WPK外挂辅助软件了!(辅助挂)分析介绍教程(2024已更新)(哔哩哔哩);在新...
黑科技亲测攻略!德扑之心外挂辅... 黑科技亲测攻略!德扑之心外挂辅助软件了!(辅助挂)分析介绍教程(2024已更新)(哔哩哔哩)是一款可...