轉(zhuǎn):知乎
? ? ? ?特征選擇是特征工程中的重要問題(另一個重要的問題是特征提取)芥驳,坊間常說:數(shù)據(jù)和特征決定了機器學(xué)習(xí)的上限柿冲,而模型和算法只是逼近這個上限而已。由此可見兆旬,特征工程尤其是特征選擇在機器學(xué)習(xí)中占有相當(dāng)重要的地位假抄。
? ? ? ?通常而言,特征選擇是指選擇獲得相應(yīng)模型和算法最好性能的特征集丽猬,工程上常用的方法有以下:
- 計算每一個特征與響應(yīng)變量的相關(guān)性:工程上常用的手段有計算皮爾遜系數(shù)和互信息系數(shù)宿饱,皮爾遜系數(shù)只能衡量線性相關(guān)性而互信息系數(shù)能夠很好地度量各種相關(guān)性,但是計算相對復(fù)雜一些脚祟,好在很多toolkit里邊都包含了這個工具(如sklearn的MINE)刑棵,得到相關(guān)性之后就可以排序選擇特征了;
- 構(gòu)建單個特征的模型愚铡,通過模型的準(zhǔn)確性為特征排序蛉签,借此來選擇特征,另外沥寥,記得JMLR'03上有一篇論文介紹了一種基于決策樹的特征選擇方法碍舍,本質(zhì)上是等價的。當(dāng)選擇到了目標(biāo)特征之后邑雅,再用來訓(xùn)練最終的模型片橡;
- 通過L1正則項來選擇特征:L1正則方法具有稀疏解的特性,因此天然具備特征選擇的特性淮野,但是要注意捧书,L1沒有選到的特征不代表不重要,原因是兩個具有高相關(guān)性的特征可能只保留了一個骤星,如果要確定哪個特征重要應(yīng)再通過L2正則方法交叉檢驗经瓷;
- 訓(xùn)練能夠?qū)μ卣鞔蚍值念A(yù)選模型:RandomForest和Logistic Regression等都能對模型的特征打分,通過打分獲得相關(guān)性后再訓(xùn)練最終模型洞难;
- 通過特征組合后再來選擇特征:如對用戶id和用戶特征最組合來獲得較大的特征集再來選擇特征舆吮,這種做法在推薦系統(tǒng)和廣告系統(tǒng)中比較常見,這也是所謂億級甚至十億級特征的主要來源队贱,原因是用戶數(shù)據(jù)比較稀疏色冀,組合特征能夠同時兼顧全局模型和個性化模型,這個問題有機會可以展開講柱嫌。
- 通過深度學(xué)習(xí)來進(jìn)行特征選擇:目前這種手段正在隨著深度學(xué)習(xí)的流行而成為一種手段锋恬,尤其是在計算機視覺領(lǐng)域,原因是深度學(xué)習(xí)具有自動學(xué)習(xí)特征的能力编丘,這也是深度學(xué)習(xí)又叫unsupervised feature learning的原因与学。從深度學(xué)習(xí)模型中選擇某一神經(jīng)層的特征后就可以用來進(jìn)行最終目標(biāo)模型的訓(xùn)練了彤悔。
? ? ? ?整體上來說,特征選擇是一個既有學(xué)術(shù)價值又有工程價值的問題癣防,目前在研究領(lǐng)域也比較熱蜗巧,值得所有做機器學(xué)習(xí)的朋友重視掌眠。