當前位置:編程學習大全網 - 源碼下載 - 特征選擇

特征選擇

特征選擇主要的兩個功能:

pearson Correlation :皮爾森相關系數是壹種最簡單的,能幫助理解特征和響應變量之間線性相關性,結果取值區間為[-1,1],-1表示完全地負相關,+1表示完全地正相關,0表示沒有線性相關。

互信息和最大信息系數(Mutual information and maximal information coefficient)

想把互信息直接用於特征選擇其實不太方便:

最大信息系數克服了這兩個問題,它首先尋找壹種最優的離散化方式,然後把互信息取值轉換成壹種度量方式,取值區間在[0,1]

ps: MIC的統計能力遭到了壹些質疑,當零假設不成立時,MIC的統計就會受到影響。在有的數據集上不存在這個問題,但有的數據集上就存在這個問題。

距離相關系數法(Distance correlation)

距離相關系數是為了克服Pearson相關系數的弱點而生的,即使Pearson相關系數是0,我們也不能斷定這兩個變量是獨立的(有可能是非線性相關);但如果距離相關系數是0,那麽我們就可以說這兩個變量時獨立的。

盡管有MIC和距離相關系數在了,但當變量之間的關系接近線性相關的時候,Pearson相關系數任然是不可替代的。第壹、Pearson相關系數計算速度快,這在處理大規模數據的時候很重要;第二、Pearson相關系數的取值區間是[-1,1],而MIC和距離系數都是[0,1],這個特點使得Pearson相關系數能夠表征更豐富的關系,符號表示關系的正負,絕對值能夠表示強度。當然,Pearson相關性有效的前提是兩個變量的變化關系的單調的。

基於學習模型的特征排序(Model based ranking)

如何用回歸模型的系數來選擇特征,越是重要的特征在模型中對應的系數就會越大,而跟輸出變量越是無關的特征對應的系數就會越接近於0,在噪音不多的數據上,或者是數量遠遠大於特征數的數據上,如果特征之間相對來說是比較獨立的,那麽即使是運用最簡單的線性回歸模型也壹樣能取得非常好的效果。

正則化

正則化就是把額外的約束或者懲罰項加到已有模型(損失函數)上,以防止過擬合並提高泛化能力。

L1正則化和L2正則化也稱為Lasso和Ridge

L1正則化(Lasso)

L1正則化將系數w的L1範數作為懲罰項加到順勢函數上,由於正則項非零,這就迫使那些弱的特征所對應的系數變為0,因為L1正則化往往會使學到的模型很稀疏(系數w經常為0),這個特性使得L1正則化作為壹種很好地特征選擇方法。

L1正則化非正則化線性模型壹樣也是不穩定的,如果特征集合中具有相關聯的特征,當數據發生細微變化時也有可能導致很大的模型差異。

L2正則化(Ridge regression)

L2正則化將系數向量的L2範數添加到了損失函數中。由於L2懲罰項中系數是二次方的,這使得L2和L1有著諸多差異,最明顯的壹點就是,L2正則化會讓系數的取值變得平均。對於關聯特征,這意味著他們能夠獲得更相近的對應系數。還是以Y=X1+X2為例,假設X1和X2具有很強的關聯,如果用L1正則化,不論學到的模型是Y=X1+X2還是Y=2X1,懲罰都是壹樣的,都是2alpha。但是對於L2來說,第壹個模型的懲罰項是2alpha,但第二個模型的是4*alpha。可以看出,系數之和為常數時,各系數相等時懲罰是最小的,所以才有了L2會讓各個系數趨於相同的特點。

可以看出,L2正則化對於特征選擇來說壹種穩定的模型,不像L1正則化那樣,系數會因為細微的數據變化而波動。所以L2正則化和L1正則化提供的價值是不同的,L2正則化對於特征理解來說更加有用:表示能力強的特征對應的系數是非零。

隨機森林具有準確率高、魯棒性好、易於使用等優點,這使得它成為了目前最流行的機器學習算法之壹。隨機森林提供了兩種特征選擇的方法:mean decrease impurity 和 mean decrease accuracy。

平均不純度減少(mwan decrease impurity)

隨機森林由多個決策樹構成。決策樹中每壹個節點都是關於某壹個特征的條件,為的是將數據集按照不同的響應變量壹分為二。利用不純度可以確定節點(最優條件),對於分類問題,通常采用基尼不純度或者信息增益,對於回歸問題,通常采用的是方差或者最小二乘擬合。當訓練決策樹的時候,可以計算出每個特征減少了多少樹的不純度,對於壹個決策樹森林來說,可以算出每個特征平均減少了多少不純度,並把它平均減少的不純度作為特征選擇的值。

這裏特征得分實際上采用的是Gini Importance。使用基於不純度的方法的時候,要記住:1.這種方法存在偏向,對具有更多類別的變量會更有利;2.對於存在關聯的多個特征,其中任意壹個都可以作為指示器(優秀的特征),並且壹旦某個特征被選擇之後,其他特征的重要程度會急劇下降,因為不純度已經被選中的哪個特征降下來了,其他的特征就很難再降低那麽多不純度了,這樣壹來,只有先被選中的那個特征很重要,而其余的特征是不重要的,但實際上這些特征對響應變量的作用確定非常接近的。

平均精確率減少(Mean decrease accuracy)

特征選擇方法就是直接度量每個特征對模型精確度的影響。主要思路是打亂每個特征的特征值順序,並且度量順序變動對模型的精確率的影響。很明顯,對於不重要的變量來說,打亂順序對模型的精確率影響不會太大,但是對於重要的變量來說,打亂順序就會降低模型的精確率。

建立在基於模型的特征選擇方法基礎之上的,例如回歸和SVM,在不同的子集上建立模型,然後匯總最終確定特征得分。

穩定性選擇(Stability selection)

穩定性選擇是壹種基於二次抽樣和選擇算法相結合較新的方法,選擇算法可以是回歸,SVM或者類似的方法。它的主要思想是在不同的數據子集和特征子集上運行特征選擇算法,不斷的重復,最終匯總特征選擇結果。比如可以統計某個特征被認為是重要特征的頻率(被選為重要特征的次數除以它所在的子集被測試的次數)。理想的情況下,重要特征的得分會接近100%。稍微弱壹點的特征得分會是非零的數,而最無用的熱證得分將會接近於0.

sklearn在隨機lasso和隨機邏輯回歸中有對穩定性選擇的實現。

遞歸特征消除(Recursive feature elimination RFE)

遞歸特征消除的主要思想是反復的構建模型(如SVM或者回歸模型)然後選出最好的(或者最差的)的特征(可以根據系數來選),把選出來的特征放到壹遍,然後在剩余的特征上重復這個過程,直到所有特征都遍歷了,這個過程中特征被消除的次序就是特征的排序,因此,這是壹種尋找最優特征子集的貪心算法。

RFE的穩定性很大程度上取決於在叠代的時候底層采用哪種模型。例如,假如RFE采用的普通的回歸,沒有經過正則化的回歸是不穩定的,那麽RFE就是不穩定的,假如采用的是Ridge,而用Ridge正則化的回歸是穩定的,那麽RFE就是穩定的。

Sklearn提供了RFE包,可以用於特征消除,還提供了RFECV,可以通過交叉驗證來對特征進行排序。

  • 上一篇:免費八字測正緣有錢嗎,八字免費測試正緣桃花
  • 下一篇:計算機病毒是可以造成計算機故障的什麽?
  • copyright 2024編程學習大全網