特徵抽取 PCA主成分分析

2021-08-20 03:02:07 字數 2715 閱讀 4069

一、方法

主成分分析也成主分量分析,利用降維的思想,將多個指標特徵轉化為少數的幾個綜合指標特徵。是一種線性變化來簡化資料集的技術。在減少維數的同時還盡可能多的保留資料集的特徵。

作用在於: 降低維數,弄清變數間關係,在低維可以圖形化,構造回歸模型以及篩選回歸變數等

二、步驟

1.對原始資料標準化 xi=(xi-平均值xi)/si

2.計算標準化後的相關係數矩陣r

3.計算r的特徵值和特徵向量

4.計算貢獻率和累計貢獻率以及主成分載荷 lij=sqrt(lambai)eij,其中ei是對應特徵值lambdai的特徵向量,eij為ei的第j個分量

三、實驗

資料 data.txt

148 41 72 78

139 34 71 76

160 49 77 86

149 36 67 79

159 45 80 86

142 31 66 76

153 43 76 83

150 43 77 79

151 42 77 80

139 31 68 74

140 29 64 74

161 47 78 84

158 49 78 83

140 33 67 77

137 31 66 73

152 35 73 79

149 47 82 79

145 35 70 77

160 47 74 87

156 44 78 85

151 42 73 82

147 38 73 78

157 39 68 80

147 30 65 75

157 48 80 88

151 36 74 80

144 36 68 76

141 30 67 76

139 32 68 73

148 38 70 78

print.m

%pca 主成分分析結果表

function print(x)

z=zscore(x);%進行標準化 (x-平均x/s)

r=corrcoef(z);%對標準化後的矩陣求相關係數矩陣r,這裡使用cov也是可以的,和結果相差無幾,cov的時候可以不對x進行標準化

[v,d]=eig(r); %對相關係數矩陣r求特徵值和特徵向量分別為d和v

cols=size(x,2);%獲取特徵的個數

characters=zeros(1,cols);%將特徵值儲存在characters中

for i=1:cols

characters(i)=d(i,i);

end[sortedcharacters,label]=sort(characters,'descend'); %逆序排序,並記下結果和索引

fprintf(' eigenvalue of the correlation matrix \n');

fprintf(' eigenvalue difference proportion cumulative \n');

total=0;

for i=1:cols

fprintf([' z' num2str(i)]);

fprintf(' %.4f',sortedcharacters(i));

if i==cols

fprintf(' . ');

else

fprintf(' %.4f',sortedcharacters(i)-sortedcharacters(i+1));

endfprintf(' %.4f',sortedcharacters(i)/sum(sortedcharacters));

total=total+sortedcharacters(i);

fprintf(' %.4f\n',total/sum(sortedcharacters));

endfprintf(' eigenvectors \n');

fprintf(' z1 z2 z3 z4 \n');

for i=1:cols

fprintf([' x' num2str(i)]); %進行字串連線

for j=1:cols

fprintf(' %8.4f ',v(i,label(j))); %格式化輸出

endfprintf('\n');

end

結果

可以看出前兩個特徵累計貢獻率已達到96.36%,因此只需要兩個特徵就可以很好地概括這組資料. 一般取累計貢獻率達85%-95%的特徵值lambda1,lambda2,..lambdam對應的前m個主成分. 當沿著z1的向量方向投影是最好的.

pca主成分分析 PCA主成分分析(中)

矩陣 matrix,很容易讓人們想到那部著名的科幻電影 駭客帝國 事實上,我們又何嘗不是真的生活在matrix中。機器學習處理的大多數資料,都是以 矩陣 形式儲存的。矩陣是向量的組合,而乙個向量代表一組資料,資料又是多維度的。比如每個人的都具有身高 體重 長相 性情等多個維度的資訊資料,而這些多維度...

主成分分析PCA

主要參考這篇文章 個人總結 pca是一種對取樣資料提取主要成分,從而達到降維的目的。相比於上篇文章介紹到的svd降維不同,svd降維是指減少資料的儲存空間,資料的實際資訊沒有缺少。個人感覺pca更類似與svd的去噪的過程。pca求解過程中,涉及到了svd的使用。針對資料集d 假設di 的維度為 w ...

PCA 主成分分析

在進行影象的特徵提取的過程中,提取的特徵維數太多經常會導致特徵匹配時過於複雜,消耗系統資源,不得不採用特徵降維的方法。所謂特徵降維,即採用乙個低緯度的特徵來表示高緯度。將高緯度的特徵經過某個函式對映至低緯度作為新的特徵。pca和lda區別 pca是從特徵的角度協方差角度 求出協方差矩陣的特徵值和特徵...