参考文章:对称矩阵特征向量的正交性证明
作为一名数学新手,我正在尝试通过数学手段推导特征值和特征向量的计算公式。这里有一个小记录。
如果一个向量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
特征值分解是将矩阵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}
奇异值可以应用于任何矩阵的分解。任何矩阵总是存在奇异值分解:
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矩阵
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="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,所以对称矩阵特征值不等的特征向量正交。
上期我们给跑友们分享了适合高级跑者的训练鞋。双十一有哪些值得进阶跑者入手的新款训练跑鞋?闭上眼睛,进入!本期我们继续分享跑鞋的话题,聊聊适合新手/重量级跑者的入…
介词在英语中起着至关重要的作用。掌握中考常考的介词可以大大提高你的语言表达能力。本文将从介词的基本含义、用法搭配、常用短语、易混淆介词等四个方面详细阐述如何掌握…
半夜睡不着就写代码了。今天给大家推荐一些比较专业、高品质的电脑音箱。价格很好而且产品真的很好。您可以根据您的需要进行选择。生活从来都不容易。希望每个人都能找到一…
常用的诱导公式有以下几组:公式1:假设为任意角,则具有相同终边的角的同三角函数值相等:sin(2k+)=sin(kZ)cos(2k+)=cos(kZ)tan(2…
很多用户购买的新电脑基本都是Win10家庭版,但是最近收到很多粉丝私信说想使用Win10专业版系统,更加稳定,功能也更多。那么专业版有哪些优势呢?我们先来对比一…
2024-10-19 16:05:02
2024-10-19 09:10:24
2024-10-19 04:30:04
2024-10-18 23:50:10
2024-10-18 19:55:06
大家好,今天小编关注到一个比较有意思的话题,就是关于幼儿园轻声教育培训的问题,于…
大家好,今天小编关注到一个比较有意思的话题,就是关于教育课程顾问的文案简短的问题…