1. 程式人生 > >機器學習—特征選擇

機器學習—特征選擇

拉斯維加斯 n) 樣本 找到 直接 處理 隨機選擇 偽代碼 gas

1、特征選擇

特征選擇是一種及其重要的數據預處理方法。假設你需要處理一個監督學習問題,樣本的特征數非常大(甚至),但是可能僅僅有少部分特征會和對結果產生影響。甚至是簡單的線性分類,如果樣本特征數超過了n,但假設函數的VC維確仍然是O(n),那麽,除非大大擴展訓練集的數量,否則即會帶來過擬合的問題。在這樣的情況下,可以使用特征選擇算法降低特征的數量。

假設樣本有n個特征,那麽,其有種可能的特征子集,如果特征選擇需要去窮舉所有種可能的特征子集,對於n比較大的情況,計算的代價太大,無法真正實現。

特征選擇的定義 :對當前學習任務有價值的屬性稱為是“相關特征”,沒有價值的屬性稱為是“無關特征”,從給定的特征集中選擇出相關特征子集的過程,就稱為是“特征選擇”。 其中還有一種特征稱為是“冗余特征”,這些特征指的是可以從其他特征中推演出來的特征。

特征選擇是一個“數據預處理”過程,它的重要性體現在兩個方面:

1)減輕維度災難問題。

2)去除無關特征可以降低學習的難度。

2、包裹式選擇

與過濾式選擇不考慮後續學習器不同,包裹式選擇直接把最終將要使用的學習器的性能作為特征子集的評價依據,也就是說,包裹式特征選擇是為給定的學習器選擇最有利的特征子集。

  與過濾式選擇相比,包裹式選擇的效果一般會更好,但由於在特征選擇過程中需要多長訓練學習器,因此包裹式選擇的計算開銷要大很多。

LVW(Las Vegas Wrapper)是一種典型的包裹式特征選擇方法,它在拉斯維加斯方法框架下使用隨機策略來進行子集搜索,並以最終分類器的誤差為特征子集評價準則。

LVW 基於拉斯維加斯方法的框架,拉斯維加斯方法是一個典型的隨機化方法,即概率算法中的一種。它具有概率算法的特點,允許算法在執行的過程中隨機選擇下一步,許多情況下,當算法在執行過程中面臨一個選擇時,隨機性選擇常比最優選擇要省時,因此概率算法可在很大程度上降低算法的復雜度。

拉斯維加斯算法不會得到不正確的解,一旦用拉斯維加斯算法找到一個解,那麽這個解一定就是正確的解,但有時用拉斯維加斯算法找不到解。

LVW 基於拉斯維加斯方法的框架,假設數據集為 D,特征集為 A,則 LVW 每次從特征集 A 中隨機產生一個特征子集 A′,然後使用交叉驗證的方法(偽代碼的第 8 步)估計學習器在特征子集 A′上的誤差,若該誤差小於之前獲得的最小誤差,或者與之前的最小誤差相當但 A′中包含的特征數更少,則將 A′保留下來。

技術分享

由於 LVW 算法每次評價子集 A′ 時,都需要重新訓練學習器,計算開銷很大,因此設置了參數 T 來控制停止條件。但當特征數很多(即 |A| 很大)並且 T 設置得很大時,可能算法運行很長時間都不能停止。

3、其他的特征選擇方法

其他的還有很多,如:

子集搜索與評價
過濾式選擇
嵌入式選擇

機器學習—特征選擇