天天看點

學習筆記202—特征選擇方法總結

1、為什麼要做特征選擇

在有限的樣本數目下,用大量的特征來設計分類器計算開銷太大而且分類性能差。

2、特征選擇的确切含義

将高維空間的樣本通過映射或者是變換的方式轉換到低維空間,達到降維的目的,然後通過特征選取删選掉備援和不相關的特征來進一步降維。

3、特征選取的原則

擷取盡可能小的特征子集,不顯著降低分類精度、不影響類分布以及特征子集應具有穩定适應性強等特點

4、特征選擇需要考慮的問題

a、确定選擇算法,在允許的時間内以最小的代價找出最小的、最能描述類别的特征組合

b、确定評價标準,衡量特征組合是否是最優,得到特征擷取操作的停止條件。

5、特征擷取方法

a、按照特征子集的形成方式可以分為三種,窮舉法(exhaustion)、啟發法(heuristic)和随機法(random)。窮舉法需要周遊特征空間中所有的特征組合,是以方法複雜度最大,實用性不強;啟發法通過采用期望的人工機器排程規則,重複疊代産生遞增的特征子集,複雜度略低于窮舉法,但是隻能擷取近似最優解;随即方法分為完全随機方法和機率随機方法兩種,對參數設定的依賴性較強。

b、按照特征評價标準來分,根據評價函數與分類器的關心,可以分為篩選器和封裝器兩種,篩選器的評價函數與分類器無關,封裝器采用分類器的錯誤機率作為評價函數。篩選器的評價函數可以細分為距離測度、資訊測度、相關性測度和一緻性測度。距離測度用距離來衡量樣本之間的相似度,資訊測度利用最小不确定性特征來分類。

6、特征選擇方法總結

1 去掉取值變化小的特征 Removing features with low variance

該方法一般用在特征選擇前作為一個預處理的工作,即先去掉取值變化小的特征,然後再使用其他的特征選擇方法選擇特征。

2 單變量特征選擇 Univariate feature selection

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

2.1 Pearson相關系數 Pearson Correlation

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

2.2 互資訊和最大資訊系數 Mutual information and maximal information coefficient (MIC)

學習筆記202—特征選擇方法總結

以上就是經典的互資訊公式了。想把互資訊直接用于特征選擇其實不是太友善:1、它不屬于度量方式,也沒有辦法歸一化,在不同資料及上的結果無法做比較;2、對于連續變量的計算不是很友善(X和Y都是集合,x,y都是離散的取值),通常變量需要先離散化,而互資訊的結果對離散化的方式很敏感。

2.3 距離相關系數 (Distance correlation)

距離相關系數是為了克服Pearson相關系數的弱點而生的。在x和x^2這個例子中,即便Pearson相關系數是0,我們也不能斷定這兩個變量是獨立的(有可能是非線性相關);但如果距離相關系數是0,那麼我們就可以說這兩個變量是獨立的。

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

這種方法的思路是直接使用你要用的機器學習算法,針對每個單獨的特征和響應變量建立預測模型。其實Pearson相關系數等價于線性回歸裡的标準化回歸系數。假如某個特征和響應變量之間的關系是非線性的,可以用基于樹的方法(決策樹、随機森林)、或者擴充的線性模型等。基于樹的方法比較易于使用,因為他們對非線性關系的模組化比較好,并且不需要太多的調試。但要注意過拟合問題,是以樹的深度最好不要太大,再就是運用交叉驗證。

3 線性模型和正則化

單變量特征選擇方法獨立的衡量每個特征與響應變量之間的關系,另一種主流的特征選擇方法是基于機器學習模型的方法。有些機器學習方法本身就具有對特征進行打分的機制,或者很容易将其運用到特征選擇任務中,例如回歸模型,SVM,決策樹,随機森林等等。說句題外話,這種方法好像在一些地方叫做wrapper類型,大概意思是說,特征排序模型和機器學習模型是耦盒在一起的,對應的非wrapper類型的特征選擇方法叫做filter類型。

3.1 正則化模型

正則化就是把額外的限制或者懲罰項加到已有模型(損失函數)上,以防止過拟合并提高泛化能力。損失函數由原來的E(X,Y)變為E(X,Y)+alpha||w||,w是模型系數組成的向量(有些地方也叫參數parameter,coefficients),||·||一般是L1或者L2範數,alpha是一個可調的參數,控制着正則化的強度。當用線上性模型上時,L1正則化和L2正則化也稱為Lasso和Ridge。

3.2 L1正則化/Lasso

L1正則化将系數w的l1範數作為懲罰項加到損失函數上,由于正則項非零,這就迫使那些弱的特征所對應的系數變成0。是以L1正則化往往會使學到的模型很稀疏(系數w經常為0),這個特性使得L1正則化成為一種很好的特征選擇方法。

3.3 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正則化對于特征了解來說更加有用:表示能力強的特征對應的系數是非零

4 随機森林

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

4.1 平均不純度減少 mean decrease impurity

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

4.2 平均精确率減少 Mean decrease accuracy

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

5 兩種頂層特征選擇算法

之是以叫做頂層,是因為他們都是建立在基于模型的特征選擇方法基礎之上的,例如回歸和SVM,在不同的子集上建立模型,然後彙總最終确定特征得分。

5.1 穩定性選擇 Stability selection

穩定性選擇是一種基于二次抽樣和選擇算法相結合較新的方法,選擇算法可以是回歸、SVM或其他類似的方法。它的主要思想是在不同的資料子集和特征子集上運作特征選擇算法,不斷的重複,最終彙總特征選擇結果,比如可以統計某個特征被認為是重要特征的頻率(被選為重要特征的次數除以它所在的子集被測試的次數)。理想情況下,重要特征的得分會接近100%。稍微弱一點的特征得分會是非0的數,而最無用的特征得分将會接近于0。

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

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

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

6、特征擷取方法的選取原則

a、處理的資料類型

b、處理的問題規模

c、問題需要分類的數量

d、對噪聲的容忍能力

e、無噪聲環境下,産生穩定性好、最優特征子集的能力。

注:

什麼是卡方檢驗?用方差來衡量某個觀測頻率和理論頻率之間差異性的方法

什麼是皮爾森卡方檢驗?這是一種最常用的卡方檢驗方法,它有兩個用途:1是計算某個變量對某種分布的拟合程度,2是根據兩個觀測變量的Contingency table來計算這兩個變量是否是獨立的。主要有三個步驟:第一步用方差和的方式來計算觀測頻率和理論頻率之間卡方值;第二步算出卡方檢驗的自由度(行數-1乘以列數-1);第三步比較卡方值和對應自由度的卡方分布,判斷顯著性。

什麼是p-value?簡單地說,p-value就是為了驗證假設和實際之間一緻性的統計學意義的值,即假設檢驗。有些地方叫右尾機率,根據卡方值和自由度可以算出一個固定的p-value,

什麼是響應變量(response value)?簡單地說,模型的輸入叫做explanatroy variables,模型的輸出叫做response variables,其實就是要驗證該特征對結果造成了什麼樣的影響

繼續閱讀