PCA biplot = PCA score plot + loading plot
matlab PCA分析命令:
[coeff,score,latent,tsquared,explained,mu] = pca(X);
前兩個主成分的PCA Biplot
如上圖所示,PCA Biplot包含兩部分。首先是loading plot,這里loading即PCA變換系數。這里有6個變量(X的維度為6),返回的loading為:
coeff = 0.3541 -0.1231 0.2676 0.1314 0.6925 -0.5396 0.3408 0.5872 0.6770 0.0068 -0.2737 0.0759 0.2556 -0.2597 0.1699 -0.0613 0.4066 0.8181 0.4483 -0.3120 -0.1127 0.7449 -0.3655 0.0218 0.5788 0.4460 -0.6410 -0.2127 0.0952 0.0306 0.3965 -0.5257 0.1328 -0.6154 -0.3710 -0.1800
ps: loading矩陣是正交的(coeff * coeff' = I)。
上面PCA Biplot中考慮前兩個主成分,繪制loading plot時取coeff的前兩列。可以看到,第二行和第五行兩個坐標均為正,因此,PCA Biplot中V2, V5在第一象限。其余行均為一正一負,因此V1, V3, V4, V6均位於第四象限。
其次是,score plot,這里score指的是主成分值(即輸入X經過loading矩陣變換后的值,也稱為潛變量)。這里僅考慮前兩個主成分,繪制即可。上圖紅色的散點即是score plot。
Please note that both the scores and the loadings are scaled to a maximum value of 1.0.
請注意,score和loading都被縮放到1.0的最大值。
PCA biplot含義
從PCA biplot可以看出什么?
1. 各變量間的相關性
V1至V6之間的夾角表示各維度間的相關性,從上圖看出,各變量間夾角均小於90度,說明他們呈正相關。(等於90度,沒有明確的相關關系,大於90度,負相關關系)
2. 各變量對前兩個主成分的貢獻
V1-V6的徑向長度表示影響的大小,方向表示正負。如,6個變量均對第一主成分有正的影響,V2, V5對第二主成分有正的響應,V1, V3, V4, V6對第二主成分有負的響應。
3. 主成分的變化性
可以看到第一主成分具有最大的方差,第二主成分變化性顯著減弱。
4. score的分布
從上圖看出除了一些離群點外,score的分布較為緊湊,說明所有樣本對系統的反應較為一致。
A biplot simultaneously plots information on the observations and the variables in a multidimensional dataset.
- distances between observations
- relationships between variables
- inner products between observations and variables
訓練集中異常值對Biplot的影響
發現訓練集中如果存在離群值則會對Biplot有較大的影響。Biplot中的點會隨着訓練集比率的增大逐漸發生偏斜。
訓練集比率:10%
訓練集比率:20%
如上圖所示,訓練集比率增大后Biplot發生顯著變化。經檢查后發現,因為數據集中存在部分離群點,當訓練集比率增大時,訓練集中會引入更多的異常點,這導致訓練集統計屬性發生改變。
為了避免發生上述現象,可以將訓練集中的異常樣本剔除,這樣訓練集樣本更具有代表性,刻畫的數據分布更准確。
訓練集比率:20%(剔除訓練集離群值)