sklearn PCA特征降维
生活随笔
收集整理的這篇文章主要介紹了
sklearn PCA特征降维
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
機器學習中降維能夠消除冗余,防止過擬合;發現潛在特征;減小計算量,節省資源和時間,常用的降維方法有:PCA ,ICA,SOM,MDS, ISOMAP,LLE,本文著重介紹PCA(主成分分析法)。
實現步驟
1.去除類別特征(無監督降維)
2.計算各列均值
3.計算協方差矩陣
4.計算特征值和特征向量
5.按照特征值對其作降序排列
6.將樣本數據變換為新的子空間
注意
1.PCA主要實現降維,其對過擬合的作用可能沒那么大(無監督降維)
2.不能將訓練集和驗證集合并起來進行主成分分析,應在訓練集計算出主成分后,對驗證集進行特征選擇。
優點
1.僅以方差衡量信息量,不依賴于其他數據。
2.各主成分之間相互正交化,能夠消除彼此之間相互影響的因素。
3.計算以特征分解為主,計算量較小。
缺點
1.主成分含義具有一定的模糊性,不如原始樣本解釋強
2.方差小的成分也可能包含很重要的信息
(缺點2解釋:打個比方,一個鮮有學生違紀情況的班級要評選三好學生,指標有違紀次數和考試成績。因為班級鮮有違紀情況,所以違紀次數指標的方差很小。但違紀的同學會在評優時因違紀被一票否決,所以違紀次數雖然方差小但卻包含著重要的信息,對評選起著至關重要的作用。
PCA對象的方法
代碼
pca = PCA(n_components = 10) # 選取前10個主成分 x_train = pca.fit_transform(x_train) # 變化特征值 print("explained variance ratio: %s" % pca.explained_variance_ratio_) # 輸出前10個主成分的各自貢獻率 print('pca:accumulated rate:') # 輸出前10個主成分的累計貢獻率 print(sum(pca.explained_variance_ratio_))總結
以上是生活随笔為你收集整理的sklearn PCA特征降维的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QQ号怎么看
- 下一篇: LeetCode动态规划 杨辉三角