【数据平台】sklearn库特征工程之特征选择和降维
生活随笔
收集整理的這篇文章主要介紹了
【数据平台】sklearn库特征工程之特征选择和降维
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、特征選擇
當數據預處理完成后,我們需要選擇有意義的特征輸入機器學習的算法和模型進行訓練。通常來說,從兩個方面考慮來選擇特征:
- 特征是否發散:如果一個特征不發散,例如方差接近于0,也就是說樣本在這個特征上基本上沒有差異,這個特征對于樣本的區分并沒有什么用。
- 特征與目標的相關性:這點比較顯見,與目標相關性高的特征,應當優選選擇。除方差法外,本文介紹的其他方法均從相關性考慮。
根據特征選擇的形式又可以將特征選擇方法分為3種:
- Filter:過濾法,按照發散性或者相關性對各個特征進行評分,設定閾值或者待選擇閾值的個數,選擇特征。
- Wrapper:包裝法,根據目標函數(通常是預測效果評分),每次選擇若干特征,或者排除若干特征。
- Embedded:嵌入法,先使用某些機器學習的算法和模型進行訓練,得到各個特征的權值系數,根據系數從大到小選擇特征。類似于Filter方法,但是是通過訓練來確定特征的優劣。
我們使用sklearn中的feature_selection庫來進行特征選擇。
2、降維
當特征選擇完成后,可以直接訓練模型了,但是可能由于特征矩陣過大,導致計算量大,訓練時間長的問題,因此降低特征矩陣維度也是必不可少的。常見的降維方法除了以上提到的基于L1懲罰項的模型以外,另外還有主成分分析法(PCA)和線性判別分析(LDA),線性判別分析本身也是一個分類模型。PCA和LDA有很多的相似點,其本質是要將原始的樣本映射到維度更低的樣本空間中,但是PCA和LDA的映射目標不一樣:PCA是為了讓映射后的樣本具有最大的發散性;而LDA是為了讓映射后的樣本有最好的分類性能。所以說PCA是一種無監督的降維方法,而LDA是一種有監督的降維方法。
#降維,PCA和LDA有很多的相似點,其本質是要將原始的樣本映射到維度更低的樣本空間中,但是PCA和LDA的映射目標不一樣:PCA是為了讓映射后的樣本具有最大的發散性;而LDA是為了讓映射后的樣本有最好的分類性能。所以說PCA是一種無監督的降維方法,而LDA是一種有監督的降維方法。 #1:主成分分析法(PCA) #主成分分析法,返回降維后的數據 #參數n_components為主成分數目 PCA(n_components=2).fit_transform(iris.data) #2:線性判別分析法(LDA) #線性判別分析法,返回降維后的數據 #參數n_components為降維后的維數 LDA(n_components=2).fit_transform(iris.data, iris.target)參考:http://www.cnblogs.com/jasonfreak/p/5448385.html
總結
以上是生活随笔為你收集整理的【数据平台】sklearn库特征工程之特征选择和降维的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【数据平台】sklearn库特征工程之数
- 下一篇: 【正一专栏】瓜迪奥拉就是一座无可匹及的丰