關於
PCA(Principal component analysis)主成分分析,是SVD(Singular value decomposition)奇異值分析的一種特殊情況。主要用於數據降維,特徵提取。
Matlab演示
生成一個隨機矩陣
這裏生成一個
A = rand(3,3);
特徵值分解
[V,D] = eig(A);
V是特徵向量,D是特徵向量對應的特徵值。特徵值從小到大依次爲20,1.3060,0.0655。最後一個特徵非常小,因爲我們可以捨去。
構造子空間的基
SubSpace = V(:,2:end);
我們選取最大的兩個特徵值對應的特徵向量,構成我們的子空間。
構造子空間上的正交投影
Q = SubSpace * SubSpace ’;
子空間投影
B = Q'*A ;
計算子空間與原始空間的差值
可以看出這裏我們使用子空間投影復原的矩陣
norm(A-B,'fro');
數學好的同學已經看出來了,其實這也就是矩陣的低秩逼近問題。
完。
Licenses
作者 | 日期 | 聯繫方式 |
---|---|---|
風吹夏天 | 2015年8月10日 | [email protected] |