天天看點

特征工程 之 特征選擇

特征選擇

特征選擇的目的

減少特征數量、降維,使模型泛化能力更強,減少過拟

增強對特征之間的了解

  • 去掉變化小的特征

    統計樣本個數

    這應該是最簡單的特征選擇方法了:假設某特征的特征值隻有0和1,并且在所有輸入樣本中,95%的執行個體的該特征取值都是1,那就可以認為這個特征作用不大。如果100%都是1,那這個特征就沒意義了。當特征值都是離散型變量的時候這種方法才能用,如果是連續型變量,就需要将連續變量離散化之後才能用,而且實際當中,一般不太會有95%以上都取某個值的特征存在,是以這種方法雖然簡單但是不太好用。可以把它作為特征選擇的預處理,先去掉那些取值變化小的特征,然後再從接下來提到的的特征選擇方法中選擇合适的進行進一步的特征選擇。

  • 單變量特征選擇

    單變量特征選擇能夠對每一個特征進行測試,衡量該特征和響應變量之間的關系,根據得分扔掉不好的特征。對于回歸和分類問題可以采用卡方檢驗等方式對特征進行測試。

    這種方法比較簡單,易于運作,易于了解,通常對于了解資料有較好的效果(但對特征優化、提高泛化能力來說不一定有效);這種方法有許多改進的版本、變種。

  • person相關系數

    皮爾森相關系數是一種最簡單的,能幫助了解特征和響應變量之間關系的方法,該方法衡量的是變量之間的線性相關性,結果的取值區間為[-1,1],-1表示完全的負相關(這個變量下降,那個就會上升),+1表示完全的正相關,0表示沒有線性相關。

    Pearson相關系數的一個明顯缺陷是,作為特征排序機制,他隻對線性關系敏感。如果關系是非線性的,即便兩個變量具有一一對應的關系,Pearson相關性也可能會接近0

  • 學習模型的特征排序

    每個單獨的特征和響應變量建立預測模型

  • 線性模型 和 正則化

    回歸系數 來選擇

  • LASSO 正則 RIDGE 正則
  • 決策樹

    随機森林

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

  • xgboost

    feature importances 串行計算,boost,可以對缺失值很好的抽樣 離散值要one-hot,和連續值一起作為輸入

    參考連結:https://blog.csdn.net/kebu12345678/article/details/78437118