从数学的角度浅谈特征值和特征向量的求法(从数学的角度浅谈特征值和特征向量的求法的关系)

作者:教育资讯网 2024-08-04 09:25:15 94

参考文章:对称矩阵特征向量的正交性证明

作为一名数学新手,我正在尝试通过数学手段推导特征值和特征向量的计算公式。这里有一个小记录。

从数学的角度浅谈特征值和特征向量的求法(从数学的角度浅谈特征值和特征向量的求法的关系)

1.计算特征值和特征向量的数学公式

如果一个向量v是矩阵A的特征向量,则可以表示为以下形式(定义)

rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='Av=#x03BB;v'角色='演示'Av=vAv=\lambdav

其中rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'数据-mathml='#x03BB;'role='presentation'\lambda是特征向量对应的特征值,矩阵的一组特征向量就是一组正交向量

在分解特征值时,我们经常使用数学公式

rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='|#x03BB;E#x2212;A|=0'角色='演示'|EA|=0\left|\begin{array}{ccc}\lambdaE-A\end{array}\right|=0

这可以通过特征向量的公式进行小的变换来获得。

rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='Av=#x03BB;v#x03BB;v#x2212;Av=0(#x03BB;E#x2212;A)v=0|#x03BB;E#x2212;A||v|=0'角色='演示'Av=vvAv=0(EA)v=0|EA||v|=0Av=\lambdav\\\lambdav-Av=0\\(\lambdaE-A)v=0\\|\lambdaE-A||v|=0

因为特征向量是非零向量(零向量时'tabindex='0'style='font-size:100%;display:inline-block;position:relative;color:green;'data-mathml='#x03BB;'role='presentation'\lambda可以取任意值,所以排除),所以rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='|v|#x2260;0'角色='演示'|v|0|v|\neq0,所以有rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='|#x03BB;E#x2212;A|=0'角色='演示'|EA|=0|\lambdaE-A|=0

2.特征值分解

特征值分解是将矩阵A分解为如下形式

rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='A=Q#x03A3;Q#x2212;1'角色='演示'A=QQ1A=Q\SigmaQ^{-1}

这里可以先将上面的公式换算一下

rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'数据数学='AQ=Q#x03A3;'角色='演示'AQ=QAQ=Q\Sigma

由于上式中,rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='Q'role='presentation'QQ是矩阵A特征向量组成的矩阵,rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'数据-mathml='#x03A3;'role='presentation'\Sigma是对角矩阵,所以有rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'数据-mathml='#x03A3;=[#x03BB;1,#x03BB;2,#x03BB;n]'角色='演示'=[1,2,n]\Sigma=[\lambda_{1},\lambda_{2},\lambda_{n}]

并且rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='Avi=#x03BB;ivi=vi#x03BB;i'角色='演示'Avi=ivi=viiAv_{i}=\lambda_{i}v_{i}=v_{i}\lambda_{i},所以rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='AQ=#x03BB;Q=[#x03BB;0,#x03BB;1,#x03BB;n]Q=#x03A3;Q=Q#x03A3;'角色='演示'AQ=Q=[0,1,n]Q=Q=QAQ=\lambdaQ=[\lambda_{0},\lambda_{1},\lambda_{n}]Q=\SigmaQ=Q\Sigma,两边乘以ram'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='Q#x2212;1'role='presentation'Q1Q^{-1},得到公式rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:颜色:绿色;'data-mathml='A=Q#x03A3;Q#x2212;1'角色='演示'A=QQ1A=Q\SigmaQ^{-1}

3.SVD分解

奇异值可以应用于任何矩阵的分解。任何矩阵总是存在奇异值分解:

rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='A=U#x03A3;VT'role='presentation'A=UVTA=U\SigmaV^{T},其中A是一个RAM'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'数据-mathml='m#x2217;n'角色='演示'm*nm*n矩阵,rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='U'role='presentation'UUisaram'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='m#x2217;m'角色='演示'm*mm*m单位方阵,rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'数据-mathml='#x03A3;'role='presentation'\Sigmaisaram'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='m#x2217;n'role='presentation'm*nm*n矩阵,除对角线以外的所有元素均为0,对角线上的元素称为奇异值。rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='VT'role='presentation'VTV^{T}是v的转置矩阵是一个rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='n#x2217;n'role='presentation'n*nn*n的单位矩阵,其中的正交向量称为右奇异值向量。

rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='Am#x2217;n=Um#x2217;m#x03A3;m#x2217;nVn#x2217;nT'角色='演示'Am*n=Um*mm*nVn*nTA_{m*n}=U_{m*m}\Sigma_{m*n}V^{T}_{n*n}

下面详细说一下左奇异值向量和右奇异值向量。

rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='(ATA)n#x2217;nvi=#x03BB;vi'角色='演示'(ATA)n*nvi=vi(A^{T}A)_{n*n}v_{i}=\lambdav_{i},则rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='vi'role='presentation'viv_{i}为左奇异向量,rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='(AAT)ui=#x03BB;iui'role='presentation'(AAT)ui=iui(AA^{T})u_{i}=\lambda_{i}u_{i},则rametabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='ui'role='presentation'uiu_{i}是左奇异向量

这里注意rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='ATA'role='presentation'ATAA^{T}A是对称矩阵,导出公式rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='(ATA)T=ATA'role='presentation'(ATA)T=ATA(A^{T}A)^{T}=A^{T}A,类似rame'tabindex='0'样式='字体大小:100%;display:内联块;相对位置:color:绿色;'data-mathml='AAT'role='presentation'AATAA^{T}也是一个对称矩阵。对称矩阵的特征向量相互正交【证明1】,所以这里rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='U=[u1,u2,un]'角色='演示'U=[u1,u2,un]U=[u_{1},u_{2},u_{n}],带有rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='UTU=E'role='presentation'UTU=EU^{T}U=E,类似rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='V=[v1,v2,vn]'角色='演示'V=[v1,v2,vn]V=[v_{1},v_{2},v_{n}],带有ram'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='VTV=E'角色='演示'VTV=EV^{T}V=E。

(因为rame'tabindex='0'style='font-size:100%;display:inline-block;position:relative;color:green;'data-mathml='u1,u2,un'role='presentation'u1,u2,unu_{1},u_{2},u_{n}彼此正交,因此rame'tabindex='0'style='font-size:100%;display:inline-block;position:相对;color:绿色;'data-mathml='u1Tu2=0,u1Tu3=0,u1Tun=0'角色='演示'u1Tu2=0,u1Tu3=0,u1Tun=0u_{1}^{T}u_{2}=0,u_{1}^{T}u_{3}=0,u_{1}^{T}u_{n}=0,并且因为rame'tabindex='0'style='font-size:100%;display:inline-block;position:relative;color:green;'data-mathml='u'role='presentation'uu是单位正交向量,【单位正交列向量指的是x和y的内积为0,即x乘以y的转置为0,其分量的平方和为1,指单位正交向量。]所以rame'tabindex='0'style='font-size:100%;display:内联块;position:相对;color:绿色;'data-mathml='u1Tu1=1'角色='演示'u1Tu1=1u_{1}^{T}u_{1}=1)

这里rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='U,V'role='presentation'U,VU,V负责不同维度的变换,并rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'数据-mathml='#x03A3;'role='presentation'\Sigma负责缩放,由于rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'数据-mathml='#x03A3;'role='presentation'\Sigma已缩放,因此ram'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='U#xFF0C;V'role='presentation',U、VU、V都可以转换为单位正交矩阵

rame的特征向量'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='AAT'role='presentation'AATAA^{T}上面得到的矩阵是SVD中的V矩阵,rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='AAT'role='presentation'AATAA^{T}的特征向量构成了我们的SVD中的U矩阵。证明如下:

rame'tabindex='0'data-mathml='A=U#x03A3;VTAT=V#x03A3;TUT'角色='演示'style='font-size:100%;display:内联块;相对位置:color:绿色;'A=UVTAT=VTUTA=U\SigmaV^{T}\\A^{T}=V\Sigma^{T}U^{T}\\

因为rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='UTU=E'角色='演示'UTU=EU^{T}U=E,rame'tabindex='0'style='font-size:100%;display:内联块;相对位置:color:绿色;'data-mathml='#x03A3;T#x03A3;=#x03A3;2'角色='演示'T=2\Sigma^{T}\

Sigma=\Sigma^{2},因此可知rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="ATA"role="presentation">ATAA^{T}A的特征向量就是SVD中的V矩阵,而rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="AAT"role="presentation">AATAA^{T}的特征向量就是SVD中的U矩阵

4.np.linalg.svd函数调用

np.linalg.svd可以直接计算出上面的rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="U,Σ特征值,VT"role="presentation">,特征值,U,Σ特征值,VTU,\Sigma特征值,V^{T}矩阵的内容

importnumpyasnpa=np.random.randn(9,6)u,s,vh=np.linalg.svd(a,full_matrices=True)这里可以看出返回三个值u,s,vh,其中各个参数的shape为

u.shape=(9,9)s.shape=(6,)vh.shape=(6,6)这里的u对应着上面的u矩阵,vh对应着上面的vh矩阵,而s对应着特征值

验算一下得到最终的a矩阵

new_s1=np.diag(s)new_s2=np.zeros((3,6))new_s=np.concatenate((new_s1,new_s2),axis=0)result1=np.matmul(u,new_s)result2=np.matmul(result1,vh)这里的result2矩阵与上面的vh矩阵相同

附录:证明对称矩阵的特征向量相互正交

若rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="x1,x2"role="presentation">x1,x2x_{1},x_{2}是对称矩阵rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="A"role="presentation">AA的两个特征向量,即rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="Ax1=λ1x1,Ax2=λ2x2"role="presentation">Ax1=λ1x1,Ax2=λ2x2Ax_{1}=\lambda_{1}x_{1},Ax_{2}=\lambda_{2}x_{2},如果rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="λ1≠λ2"role="presentation">λ1≠λ2\lambda_{1}\neq\lambda_{2},则有rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="x1Tx2=0"role="presentation">x1Tx2=0x_{1}^{T}x_{2}=0。

总结:已知条件rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="AT=A"role="presentation">AT=AA^{T}=A,rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="λ1≠λ2"role="presentation">λ1≠λ2\lambda_{1}\neq\lambda_{2},需要去求rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="x1Tx2=0"role="presentation">x1Tx2=0x_{1}^{T}x_{2}=0。

(1)设rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="z=x1TAx2"role="presentation">z=x1TAx2z=x_{1}^{T}Ax_{2},因为rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="z"role="presentation">zz是标量,所以有rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="zT=z"role="presentation">zT=zz^{T}=z,即rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="x2TATx1=x1TAx2"role="presentation">x2TATx1=x1TAx2x_{2}^{T}A^{T}x_{1}=x_{1}^{T}Ax_{2}

(利用特性标量的转置等于它本身,再将标量转换,从而得到原来的向量。)

(2)因为rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="A"role="presentation">AA是对称矩阵,所以rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="AT=A"role="presentation">AT=AA^{T}=A,所以有rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="x2TATx1=x2TAx1=x1TAx2"role="presentation">x2TATx1=x2TAx1=x1TAx2x_{2}^{T}A^{T}x_{1}=x_{2}^{T}Ax_{1}=x_{1}^{T}Ax_{2}

(利用rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="AT=A"role="presentation">AT=AA^{T}=A的特性,为之前的等式搭建桥梁)

(3)rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="x1TAx2=x1Tλ2x2=λ2x1Tx2x2TAx1=x2Tλ1x1=λ1x2Tx1=λ1x1Tx2"role="presentation">x1TAx2=x1Tλ2x2=λ2x1Tx2x2TAx1=x2Tλ1x1=λ1x2Tx1=λ1x1Tx2x_{1}^{T}Ax_{2}=x_{1}^{T}\lambda_{2}x_{2}=\lambda_{2}x_{1}^{T}x_{2}\\x_{2}^{T}Ax_{1}=x_{2}^{T}\lambda_{1}x_{1}=\lambda_{1}x_{2}^{T}x_{1}=\lambda_{1}x_{1}^{T}x_{2}

(利用特征向量的特性rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="Ax1=λx1"role="presentation">Ax1=λx1Ax_{1}=\lambdax_{1},以及列向量的特性rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="x1Tx2=x2Tx1"role="presentation">x1Tx2=x2Tx1x_{1}^{T}x_{2}=x_{2}^{T}x_{1},找寻特征值之间的对应关系)

(4)又rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="z=zTλ1x1Tx2=λ2x1Tx2λ1x1Tx2?λ2x1Tx2=(λ1?λ2)x1Tx2=0"role="presentation">z=zTλ1x1Tx2=λ2x1Tx2λ1x1Tx2?λ2x1Tx2=(λ1?λ2)x1Tx2=0z=z^{T}\\\lambda_{1}x_{1}^{T}x_{2}=\lambda_{2}x_{1}^{T}x_{2}\\\lambda_{1}x_{1}^{T}x_{2}-\lambda_{2}x_{1}^{T}x_{2}=(\lambda_{1}-\lambda_{2})x_{1}^{T}x_{2}=0

因为rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="λ1≠λ2"role="presentation">λ1≠λ2\lambda_{1}\neq\lambda_{2},所以有rame"tabindex="0"style="font-size:100%;display:inline-block;position:relative;color:green;"data-mathml="x1Tx2=0"role="presentation">x1Tx2=0x_{1}^{T}x_{2}=0,所以对称矩阵特征值不等的特征向量正交。

相关推荐

  • 大体重缓震好的跑鞋(大体重跑者选缓震还是支撑)

    大体重缓震好的跑鞋(大体重跑者选缓震还是支撑)

    上期我们给跑友们分享了适合高级跑者的训练鞋。双十一有哪些值得进阶跑者入手的新款训练跑鞋?闭上眼睛,进入!本期我们继续分享跑鞋的话题,聊聊适合新手/重量级跑者的入…

    大体重缓震好的跑鞋(大体重跑者选缓震还是支撑) 2024-08-12 10:17:29
  • 中考介词讲解视频(中考介词讲解ppt)

    中考介词讲解视频(中考介词讲解ppt)

    介词在英语中起着至关重要的作用。掌握中考常考的介词可以大大提高你的语言表达能力。本文将从介词的基本含义、用法搭配、常用短语、易混淆介词等四个方面详细阐述如何掌握…

    中考介词讲解视频(中考介词讲解ppt) 2024-08-11 13:50:45
  • 2021年电脑音箱推荐(2020年电脑音响推荐)

    2021年电脑音箱推荐(2020年电脑音响推荐)

    半夜睡不着就写代码了。今天给大家推荐一些比较专业、高品质的电脑音箱。价格很好而且产品真的很好。您可以根据您的需要进行选择。生活从来都不容易。希望每个人都能找到一…

    2021年电脑音箱推荐(2020年电脑音响推荐) 2024-08-01 02:37:29
  • 三角函数诱导公式经典例题(三角函数诱导公式口诀怎么理解)

    三角函数诱导公式经典例题(三角函数诱导公式口诀怎么理解)

    常用的诱导公式有以下几组:公式1:假设为任意角,则具有相同终边的角的同三角函数值相等:sin(2k+)=sin(kZ)cos(2k+)=cos(kZ)tan(2…

    三角函数诱导公式经典例题(三角函数诱导公式口诀怎么理解) 2024-07-29 03:22:50
  • win10专业版使用(windows10专业版好不好用)

    win10专业版使用(windows10专业版好不好用)

    很多用户购买的新电脑基本都是Win10家庭版,但是最近收到很多粉丝私信说想使用Win10专业版系统,更加稳定,功能也更多。那么专业版有哪些优势呢?我们先来对比一…

    win10专业版使用(windows10专业版好不好用) 2024-07-27 00:48:14
热门推荐

猜你喜欢