官术网_书友最值得收藏!

2.1.7 封裝方法

由于過濾方法與具體的機器學習算法相互獨立,因此過濾方法沒有考慮所選特征集合在具體機器學習算法上的效果。與過濾方法不同,封裝方法直接使用機器學習算法評估特征子集的效果,它可以檢測出兩個或者多個特征之間的交互關系,而且選擇的特征子集會讓模型的效果達到最優。封裝方法是特征子集搜索和評估指標相結合的方法,前者提供候選的新特征子集,后者則基于新特征子集訓練一個模型,并用驗證集進行評估,為每一組特征子集進行打分。最簡單的方法則是在每一個特征子集上訓練并評估模型,從而找出最優的特征子集。


封裝方法需要對每一組特征子集訓練一個模型,所以計算量很大。封裝方法的缺點是:樣本不夠充分時容易過擬合;特征變量較多時計算復雜度太高。


最常用的封裝方法是遞歸特征消除法(recursive feature elimination)。遞歸特征消除法使用一個機器學習模型來進行多輪訓練,每輪訓練后,消除若干權值系數的對應特征,再基于新的特征集進行下一輪訓練。


下面以經典的SVM-RFE算法來討論這個特征選擇的思路。這個算法以支持向量機來為RFE的機器學習模型選擇特征。在第一輪訓練的時候,它會選擇所有的特征來訓練,得到了分類的超平面xTw+b=0后,如果有n個特征,那么SVM-RFE會選擇w 中分量的最小的序號i所對應的特征加以排除,在第二輪訓練的時候,特征數就剩下n-1個了,繼續用這n-1個特征和輸出值來訓練SVM,同樣,去掉最小的序號i所對應的特征。以此類推,直到剩下的特征數滿足我們的需求為止。

主站蜘蛛池模板: 东阳市| 翼城县| 红桥区| 连城县| 安多县| 清水县| 扶沟县| 昌图县| 武隆县| 博野县| 西峡县| 玉门市| 广饶县| 清原| 双峰县| 凉山| 饶阳县| 鹰潭市| 应城市| 阜南县| 新沂市| 舒城县| 庆元县| 怀化市| 故城县| 昔阳县| 张家港市| 邹城市| 策勒县| 宁陕县| 泽普县| 长寿区| 灵山县| 张家界市| 吉木乃县| 若羌县| 雷波县| 柳州市| 无为县| 敦煌市| 安义县|