引言
在之前學(xué)習(xí)機(jī)器學(xué)習(xí)技術(shù)中宾抓,很少關(guān)注特征工程(Feature Engineering)子漩,然而,單純學(xué)習(xí)機(jī)器學(xué)習(xí)的算法流程石洗,可能仍然不會使用這些算法幢泼,尤其是應(yīng)用到實(shí)際問題的時候,常常不知道怎么提取特征來建模讲衫。
特征是機(jī)器學(xué)習(xí)系統(tǒng)的原材料缕棵,對最終模型的影響是毋庸置疑的。
特征工程的重要意義
數(shù)據(jù)特征會直接影響你使用的預(yù)測模型和實(shí)現(xiàn)的預(yù)測結(jié)果涉兽。準(zhǔn)備和選擇的特征越好招驴,則實(shí)現(xiàn)的結(jié)果越好。
影響預(yù)測結(jié)果好壞的因素:模型的選擇枷畏、可用的數(shù)據(jù)别厘、特征的提取。
優(yōu)質(zhì)的特征往往描述了數(shù)據(jù)的固有結(jié)構(gòu)拥诡。
大多數(shù)模型都可以通過數(shù)據(jù)中良好的結(jié)構(gòu)很好的學(xué)習(xí)触趴,即使不是最優(yōu)的模型氮发,優(yōu)質(zhì)的特征也可以得到不錯的效果。優(yōu)質(zhì)特征的靈活性可以讓你使用簡單的模型運(yùn)算的更快雕蔽,更容易理解折柠,更容易維護(hù)。
優(yōu)質(zhì)的特征可以在使用不是最優(yōu)的模型參數(shù)的情況下得到不錯的預(yù)測結(jié)果批狐,這樣你就不必費(fèi)力去選擇最適合的模型和最優(yōu)的參數(shù)了扇售。
特征工程定義
特征工程是將原始數(shù)據(jù)轉(zhuǎn)化為特征,更好表示預(yù)測模型處理的實(shí)際問題嚣艇,提升對于未知數(shù)據(jù)的準(zhǔn)確性承冰。它是用目標(biāo)問題所在的特定領(lǐng)域知識或者自動化的方法來生成、提取食零、刪減或者組合變化得到特征困乒。
下面的圖給出了特征工程的概貌:
特征工程的子問題
機(jī)器學(xué)習(xí)中的特征(Feature)
在機(jī)器學(xué)習(xí)和模式識別中,特征是在觀測現(xiàn)象中的一種獨(dú)立贰谣、可測量的屬性娜搂。選擇信息量大的、有差別性的吱抚、獨(dú)立的特征是模式識別百宇、分類和回歸問題的關(guān)鍵一步。
最初的原始特征數(shù)據(jù)集可能太大秘豹,或者信息冗余携御,因此在機(jī)器學(xué)習(xí)的應(yīng)用中,一個初始步驟就是選擇特征的子集既绕,或構(gòu)建一套新的特征集啄刹,減少功能來促進(jìn)算法的學(xué)習(xí),提高泛化能力和可解釋性凄贩。
在表格數(shù)據(jù)中誓军,觀測數(shù)據(jù)或?qū)嵗▽?yīng)表格的一行)由不同的變量或者屬性(表格的一列)構(gòu)成,這里屬性其實(shí)就是特征疲扎。但是與屬性一詞不同的是谭企,特征是對于分析和解決問題有用、有意義的屬性评肆。
在機(jī)器視覺中,一幅圖像是一個觀測非区,但是特征可能是圖中的一條線瓜挽;在自然語言處理中,一個文本是一個觀測征绸,但是其中的段落或者詞頻可能才是一種特征久橙;在語音識別中俄占,一段語音是一個觀測,但是一個詞或者音素才是一種特征淆衷。
特征的重要性(Feature Importance)
你可以客觀的評價特征的實(shí)用性缸榄。判別特征的重要性是對特征進(jìn)行選擇的預(yù)先指標(biāo),特征根據(jù)重要性被分配分?jǐn)?shù)祝拯,然后根據(jù)分?jǐn)?shù)不同進(jìn)行排序甚带,其中高分的特征被選擇出來放入訓(xùn)練數(shù)據(jù)集。
如果與因變量(預(yù)測的事物)高度相關(guān)佳头,則這個特征可能很重要鹰贵,其中相關(guān)系數(shù)和獨(dú)立變量方法是常用的方法。
在構(gòu)建模型的過程中康嘉,一些復(fù)雜的預(yù)測模型會在算法內(nèi)部進(jìn)行特征重要性的評價和選擇碉输,如多元自適應(yīng)回歸樣條法(Multivariate
Adaptive Regression Splines, MARS)亭珍、隨機(jī)森林(Random Forest)敷钾、梯度提升機(jī)(Gradient
Boosted Machines)。這些模型在模型準(zhǔn)備階段會進(jìn)行變量重要性的確定肄梨。
特征提茸杌摹(Feature Extraction)
一些觀測數(shù)據(jù)如果直接建模,其原始狀態(tài)的數(shù)據(jù)太多峭范。像圖像财松、音頻和文本數(shù)據(jù),如果將其看做是表格數(shù)據(jù)纱控,那么其中包含了數(shù)以千計(jì)的屬性辆毡。
特征提取是自動地對原始觀測降維,使其特征集合小到可以進(jìn)行建模的過程甜害。
對于表格式數(shù)據(jù)舶掖,可以使用主元素分析(Principal Component Analysis)、聚類等映射方法尔店;對于圖像數(shù)據(jù)眨攘,可以進(jìn)行線(line)或邊緣(edge)的提取嚣州;根據(jù)相應(yīng)的領(lǐng)域鲫售,圖像、視頻和音頻數(shù)據(jù)可以有很多數(shù)字信號處理的方法對其進(jìn)行處理该肴。
特征選擇(Feature Selection)
不同的特征對模型的準(zhǔn)確度的影響不同情竹,有些特征與要解決的問題不相關(guān),有些特征是冗余信息匀哄,這些特征都應(yīng)該被移除掉秦效。
特征選擇是自動地選擇出對于問題最重要的那些特征子集的過程雏蛮。
特征選擇算法可以使用評分的方法來進(jìn)行排序;還有些方法通過反復(fù)試驗(yàn)來搜索出特征子集阱州,自動地創(chuàng)建并評估模型以得到客觀的挑秉、預(yù)測效果最好的特征子集;還有一些方法苔货,將特征選擇作為模型的附加功能犀概,像逐步回歸法(Stepwise regression)
就是一個在模型構(gòu)建過程中自動進(jìn)行特征選擇的算法。
特征構(gòu)建(Feature Construction)
特征重要性和選擇是告訴使用者特征的客觀特性蒲赂,但這些工作之后阱冶,需要你人工進(jìn)行特征的構(gòu)建。
特征構(gòu)建需要花費(fèi)大量的時間對實(shí)際樣本數(shù)據(jù)進(jìn)行處理滥嘴,思考數(shù)據(jù)的結(jié)構(gòu)木蹬,和如何將特征數(shù)據(jù)輸入給預(yù)測算法。
對于表格數(shù)據(jù)若皱,特征構(gòu)建意味著將特征進(jìn)行混合或組合以得到新的特征镊叁,或通過對特征進(jìn)行分解或切分來構(gòu)造新的特征;對于文本數(shù)據(jù)走触,特征夠自己按意味著設(shè)計(jì)出針對特定問題的文本指標(biāo)晦譬;對于圖像數(shù)據(jù),這意味著自動過濾互广,得到相關(guān)的結(jié)構(gòu)敛腌。
特征學(xué)習(xí)(Feature Learning)
特征學(xué)習(xí)是在原始數(shù)據(jù)中自動識別和使用特征。
現(xiàn)代深度學(xué)習(xí)方法在特征學(xué)習(xí)領(lǐng)域有很多成功案例惫皱,比如自編碼器和受限玻爾茲曼機(jī)像樊。它們以無監(jiān)督或半監(jiān)督的方式實(shí)現(xiàn)自動的學(xué)習(xí)抽象的特征表示(壓縮形式),其結(jié)果用于支撐像語音識別旅敷、圖像分類生棍、物體識別和其他領(lǐng)域的先進(jìn)成果。
抽象的特征表達(dá)可以自動得到媳谁,但是你無法理解和利用這些學(xué)習(xí)得到的結(jié)果涂滴,只有黑盒的方式才可以使用這些特征。你不可能輕易懂得如何創(chuàng)造和那些效果很好的特征相似或相異的特征晴音。這個技能是很難的柔纵,但同時它也是很有魅力的,很重要的锤躁。
特征工程的流程
機(jī)器學(xué)習(xí)中數(shù)據(jù)的轉(zhuǎn)換過程:
選擇數(shù)據(jù):收集整合數(shù)據(jù)首量,將數(shù)據(jù)規(guī)劃化為一個數(shù)據(jù)集
預(yù)處理數(shù)據(jù):對數(shù)據(jù)進(jìn)行清洗、格式化、采樣
轉(zhuǎn)換數(shù)據(jù):特征工程所在
對數(shù)據(jù)建模:構(gòu)建模型加缘、評估模型、調(diào)整模型
特征工程的迭代過程:
對特征進(jìn)行頭腦風(fēng)暴:深入分析問題觉啊,觀察數(shù)據(jù)特點(diǎn)拣宏,參考其他問題的有關(guān)特征工程的方法并應(yīng)用到自己問題中
特征的設(shè)計(jì):你可以自動提取特征,手動構(gòu)造特征杠人,或?qū)烧呦嘟Y(jié)合
特征選擇:使用不同的特征重要性評分方法或特征選擇方法
評估模型:利用所選擇的特征對測試數(shù)據(jù)進(jìn)行預(yù)測勋乾,評估模型準(zhǔn)確性
轉(zhuǎn)載請注明作者Jason Ding及其出處
Github博客主頁(http://jasonding1354.github.io/)
GitCafe博客主頁(http://jasonding1354.gitcafe.io/)
CSDN博客(http://blog.csdn.net/jasonding1354)
簡書主頁(http://www.reibang.com/users/2bd9b48f6ea8/latest_articles)