1. 程式人生 > >Feature Selection詳解(附帶Relief、Relief-F、LVM詳解)(二)

Feature Selection詳解(附帶Relief、Relief-F、LVM詳解)(二)

Feature Selection詳解

第二十六次寫部落格,本人數學基礎不是太好,如果有幸能得到讀者指正,感激不盡,希望能借此機會向大家學習。這一篇承接上一篇《Feature Selection詳解(附帶Relief、Relief-F、LVM詳解)(一)》的內容,仍然是針對特徵選擇問題的其他幾種常見方法進行闡述,並介紹其中一種比較經典的特徵選擇演算法(LVM)。

“包裹式”特徵選擇

  與過濾式方法在選擇特徵時不考慮學習器不同,“包裹式”特徵選擇方法將學習器的效能作為特徵子集的度量方法考慮進來,因此,包裹式選擇方法可以被認為是為指定學習器選擇最適合的特徵子集。實驗證明,雖然使用該方法的最終學習器的效能要高於過濾式,但是由於特徵選擇過程中需要對學習器進行多次訓練,因此大大增加了計算開銷。
  LVW(Las Vegas Wrapper)是一個典型的包裹式特徵選擇方法,於1996年由Liu和Setiono提出,他是“拉斯維加斯演算法”(Las Vegas Algorithm)的一種改進版本,拉斯維加斯演算法是一種隨機搜尋策略,在給定執行時間限制的情況下,該演算法可能得不到最優的結果,在搜尋空間很大(特徵很多)而又不設定時間限制時,可能會得不到最終結果。LVW在隨機搜尋的過程中,加入訓練學習器並評估學習器效能的步驟,演算法虛擬碼如下圖所示。

圖2 LVM演算法

演算法第1-4行:初始化最小分類錯誤率 E E 、當前最優特徵子集大小 d d 、當前最優特徵子集 A

A^* 以及當前執行次數 t t ,將原始資料集劃分為訓練集和驗證集;
演算法第5行:為該演算法新增明確的時間界;
演算法第6-7行:在原始特徵集合 A
A
中隨機選擇特徵子集 A A' ,設定該輪迴圈的特徵子集大小 d d'
演算法第8行:在當前樣本空間(只保留 A A' 中的值)中,通過訓練集訓練指定的學習器,並通過驗證集測試該學習器的分類錯誤率 E E'
演算法第9-14行:如果該輪迴圈得到的學習器分類錯誤率 E E' 低於 E E ,或者 E E' 等於 E E 且該輪迴圈的特徵子集大小 d d' 小於 d d ,就將當前執行次數 t t 清零,將 E E 設定為 E E' d d 設定為 d d' A A^* 設定為 A A' ,否則,執行次數增一。

“嵌入式”特徵選擇

  在過濾式和包裹式特徵選擇中,特徵選擇過程與學習器訓練過程由明顯的分別,與此不同,“嵌入式”特徵選擇 是將特徵選擇過程與學習器訓練過程結合在一起,兩者在同一個優化過程中完成,即在學習器訓練過程中自動完成特徵選擇。
  線上性迴歸問題中,優化目標可以表示為

為了防止過擬合,在上述優化目標中加入 L 2 L_2 正則項,得到下式

其中, λ \lambda 是正則化係數,上式被稱為“嶺迴歸”(Ridge Regression)。現在將 L 2 L_2 正則項替換為 L 1 L_1 正則項,那麼可以得到

上式被稱為LASSO(Least Absolute Shrinkage and Selection Operator),通過加入 L 1 L_1 正則項得到的解更加稀疏,因此可以作為一種有效的嵌入式特徵選擇方法,這種問題的最終解可以通過“近端梯度下降”(Proximal Gradient Descent,簡稱PGD)得到,假設優化目標可以表示為

這裡 x \mathbf{x} 是優化變數,令 \triangledown 表示微分運算元。如果 f ( x ) f\left(\mathbf{x}\right) 可導,且滿足L-Lipschitz條件,即存在常數 L > 0 L>0 使得下式成立

則在 x k \mathbf{x}_k 附近可以將 f ( x k ) f\left(\mathbf{x}_k\right) 通過二階泰勒展開式近似為

其中, const \text{const} 是與 x \mathbf{x} 無關的常數, , \langle\centerdot,\centerdot\rangle 是內積,上式的最小值在如下 x k + 1 \mathbf{x}_{k+1} 獲得,

如果通過梯度下降法對 f ( x ) f\left(\mathbf{x}\right) 進行最小化,那麼每一步梯度下降迭代實際上等價於最小化二次函式 f ^ ( x ) \hat{f}\left(\mathbf{x}\right) ,將這種思想推廣到帶有 L 1 L_1 正則項的優化目標,可以類似的得到其每一步迭代為

即在每一步進行梯度下降的同時考慮 L 1 L_1 範數最小化,對於上式,可以先計算

然後求解

由於優化引數的各個分量之間不相關,因此上式由如下閉式解

其中 x k + 1 i x^i_{k+1} z i z^i 分別是向量 x k + 1 \mathbf{x}_{k+1} z \mathbf{z} 的第 i i 個分量。

參考資料

【1】《機器學習》 周志華
【2】《The Feature Selection Problem :Traditional Methods and a New Algorithm》Kenji Kira,Larry A. Rendell
【3】《Estimating Attributes: Analysys and Extensions of RELIEF》 Igor Kononenko
【4】《Feature Selection And Classification - A Probabilistic Wrapper Approach》 Huan Liu,Rudy Setiono