特征分解
1)一般矩陣
特征分解的一般性質:
已知線性無關的向量,一定存在矩陣的逆。
Tip:並非所有的方陣(n×n)都可以被對角化。
2)對稱矩陣
性質1:如果一個對稱矩陣的特征值都不相同,則其相應的特征向量不僅線性無關,而且所有的特征向量正交(乘積為0)。
性質2:對稱矩陣的特征值都是實數。
性質3:
性質4:
性質5:
對稱矩陣可以被U相似對角化(U是特征向量矩陣)
二次型
正定矩陣和負定矩陣均值涉及對稱矩陣的,二次型涉及的矩陣是方陣即可。
性質1:對於一個正定矩陣,他的特征值均大於0
特征分解的應用
1)PCA(特征分解)
矩陣A(m×n)的協方差矩陣是一個對稱矩陣,根據對稱矩陣可以被U相似對角化,則A=UΛUT(U是特征向量矩陣,Λ是對角為方差的對角矩陣)。
降維:
我們取最大的N個特征值對應的特征向量組成的矩陣,可以稱之為壓縮矩陣;得到了壓縮矩陣之后,將去均值的數據矩陣乘以壓縮矩陣,就實現了將原始數據特征轉化為新的空間特征,進而使數據特征得到了壓縮處理。
2)SVD(特征分解的廣義化)
SVD和特征分解的關系:
如何計算SVD分解后U,V呢?
我們將A的轉置和A做矩陣乘法,那么會得到n×n的一個方陣ATA。既然ATA是方陣,那么我們就可以進行特征分解,得到的特征值和特征向量滿足下式:(ATA)vi=λivi。這樣我們就可以得到矩陣ATA的n個特征值和對應的n個特征向量v了。將ATA的所有特征向量張成一個n×n的矩陣V,就是我們SVD公式里面的V矩陣了。一般我們將V中的每個特征向量叫做A的右奇異向量。
反過來我們將A和A的轉置做矩陣乘法,將AAT的所有特征向量張成一個m×m的矩陣V,就是我們SVD公式里面的U矩陣了。一般我們將U中的每個特征向量叫做A的左奇異向量。
同時我們可以得到特征值矩陣等於奇異值矩陣的平方。
如何使用SVD進行降維呢?
注意到PCA僅僅使用了我們SVD的右奇異矩陣,沒有使用左奇異矩陣,那么左奇異矩陣有什么用呢?
假設我們的樣本是m×n的矩陣X,如果我們通過SVD找到了矩陣XXT最大的d個特征向量張成的m×d維矩陣U,則我們如果進行如下處理:
Xd×n′=Ud×mTXm×n
可以得到一個d×n的矩陣X′,這個矩陣和我們原來的m×n維樣本矩陣X相比,行數從m減到了k,可見對行數進行了壓縮。也就是說,左奇異矩陣可以用於行數的壓縮。相對的,右奇異矩陣可以用於列數即特征維度的壓縮,也就是我們的PCA降維。