機(jī)器學(xué)習(xí)都能自動(dòng)化了?自動(dòng)之自動(dòng) = 自動(dòng)的乘方?
機(jī)器學(xué)習(xí)作為人工智能領(lǐng)域廣受關(guān)注的技術(shù)一直倍受學(xué)習(xí)者的追捧,但其較高的技術(shù)門檻和對(duì)學(xué)習(xí)者時(shí)間、精力的要求又使人望而卻步,這篇來(lái)自Airbnb的文章就將教你自動(dòng)化機(jī)器學(xué)習(xí)的實(shí)現(xiàn)方法。
Airbnb的數(shù)據(jù)科學(xué)項(xiàng)目涉及大量的機(jī)器學(xué)習(xí),而眾所周知,機(jī)器學(xué)習(xí)的流程其實(shí)有許多重復(fù)的任務(wù),其中包括了(但不局限于)以下幾項(xiàng)內(nèi)容:
- 探索性數(shù)據(jù)分析:對(duì)數(shù)據(jù)進(jìn)行可視化是機(jī)器學(xué)習(xí)建模前的關(guān)鍵步驟。自動(dòng)化這些任務(wù)可以節(jié)省數(shù)據(jù)科學(xué)家的大量時(shí)間,比如自動(dòng)繪制全部變量對(duì)要預(yù)測(cè)的目標(biāo)變量的關(guān)系圖(例如散布圖Scatter Plot),以及自動(dòng)計(jì)算總結(jié)性的統(tǒng)計(jì)數(shù)字(例如平均值和標(biāo)準(zhǔn)差)。
- 特征變換:在如何編碼分類變量、填補(bǔ)缺失值、編碼序列和文本等問題上有各種各樣的特征變換方法可供選擇,但其中不少方法其實(shí)已經(jīng)可以在非常可靠的情況下標(biāo)準(zhǔn)化地應(yīng)用于許多問題。
- 算法選擇以及調(diào)整模型參數(shù):豐富的算法以及模型參數(shù)時(shí)混亂的方向往往令人眼花繚亂。但其實(shí)讓自動(dòng)化的流程去實(shí)現(xiàn)這些任務(wù)會(huì)更好。
- 模型診斷:自動(dòng)生成學(xué)習(xí)曲線、部分依賴圖、特征重要性圖表、ROC曲線等模型用來(lái)診斷圖表將會(huì)非常實(shí)用。
AML時(shí)代來(lái)臨
越來(lái)越多的社區(qū)開始創(chuàng)建各種工具來(lái)自動(dòng)化上述及其他機(jī)器學(xué)習(xí)的工作流程。包含了類似范式的概念,這些流程常常被稱為自動(dòng)化的機(jī)器學(xué)習(xí)(以下簡(jiǎn)稱為AML)
自動(dòng)化的機(jī)器學(xué)習(xí)引起熱議
實(shí)踐中的AML
對(duì)于AML,迄今為止還沒有公認(rèn)的范疇,但那些常在年度ICML會(huì)議上組織AML研討會(huì)的專家們?cè)谒麄兊木W(wǎng)站上定義了一個(gè)合理的AML范疇,其中包括了前文中提到的所有重復(fù)型任務(wù)的自動(dòng)化。
這個(gè)對(duì)AML范疇的定義看起來(lái)很有野心,但AML在實(shí)踐中真的有效嗎?答案取決于你如何使用它。AML很難完全取代數(shù)據(jù)科學(xué)家,因此我們需要特定領(lǐng)域的專業(yè)知識(shí)加上人為判斷來(lái)正確配置大部分的機(jī)器學(xué)習(xí)問題。
我們還發(fā)現(xiàn)AML工具對(duì)使用表格式數(shù)據(jù)集的回歸和分類問題最有效。AML領(lǐng)域正在迅速發(fā)展??偟膩?lái)說,可以相信AML在某些情況下能成倍地提高數(shù)據(jù)科學(xué)家的生產(chǎn)率。
在Airbnb中AML已經(jīng)形成了以下成果:
(1)設(shè)定標(biāo)桿
- 客觀地展示“挑戰(zhàn)者”模型:AML可以使用與現(xiàn)有模型相同的訓(xùn)練數(shù)據(jù)集來(lái)快速展示大量“挑戰(zhàn)者”模型。這可以幫助數(shù)據(jù)科學(xué)家選擇***的模型。
(2)診斷和探索
- 檢測(cè)數(shù)據(jù)泄漏問題:因?yàn)锳ML可迅速地自動(dòng)建立候選模型,所以我們可以在建模生命周期中更早地檢測(cè)出數(shù)據(jù)泄漏。
- 診斷:如上所述,AML可自動(dòng)產(chǎn)生診斷的標(biāo)準(zhǔn),包括學(xué)習(xí)曲線、部分依賴圖、特征值重要性圖表等等。
(3)自動(dòng)化
- 在某種程度上,AML能自動(dòng)完成如探索性數(shù)據(jù)分析、數(shù)據(jù)預(yù)處理、超參數(shù)調(diào)參、模型選擇以及把模型用于生產(chǎn)這些任務(wù)。
AML工具
目前市面上有很多商業(yè)版本的或開源的AML工具。我們最喜歡的AML平臺(tái)之一是DataRobot。這是個(gè)建立在很多為大家熟知的開源算法基礎(chǔ)上的商業(yè)化平臺(tái)。Airbnb正在進(jìn)行的很多項(xiàng)目都使用了DataRobot。
Airbnb也嘗試過以下正在開發(fā)中的開源AML工具:
- TPOT
- Auto-Sklearn
- Auto-Weka
- Machine-JS
案例研究:顧客終身價(jià)值模型的競(jìng)爭(zhēng)基準(zhǔn)
Airbnb使用了機(jī)器學(xué)習(xí)來(lái)建立房客和房主的終身價(jià)值(LTV(lifetime value))模型。這些模型可以幫助Airbnb用預(yù)期回報(bào)來(lái)精細(xì)地校準(zhǔn)營(yíng)銷花費(fèi)(最細(xì)可到單個(gè)用戶水平)。
對(duì)于房客,LTV模型被定義成一個(gè)標(biāo)準(zhǔn)的回歸問題,目標(biāo)變量是在每個(gè)房客在某段時(shí)間跨度內(nèi)的消費(fèi)。這個(gè)模型的特征包括:人口,地理位置,以及從Airbnb網(wǎng)絡(luò)和移動(dòng)應(yīng)用獲取的活動(dòng)信息。這個(gè)模型中有許多可變更的部分可以解釋供需彈性、預(yù)期成本和其他變量。
建模過程中重要的一點(diǎn)是數(shù)據(jù)科學(xué)家需要客觀地選擇算法。例如,一個(gè)復(fù)雜的模型可能比起簡(jiǎn)單的模型可以得到一個(gè)很小的增量效益,這種取舍就需要仔細(xì)斟酌。再比如,在建立LTV模型的過程中,我們傾向去使用 eXtreme gradient boosted trees (XGBoost),這是基于以下幾點(diǎn)原因:
- 這個(gè)算法在解決類似問題上往往有不錯(cuò)的效果。
- 在特設(shè)的交叉驗(yàn)證(cross validation)中,XGBoost有***的結(jié)果。
- 時(shí)間有限。項(xiàng)目需要花費(fèi)很多時(shí)間在特征工程(feature engineering)、數(shù)據(jù)清洗、以及將模型應(yīng)用到生產(chǎn)系統(tǒng)這些模塊上。這樣就沒有很多時(shí)間去做算法選擇和參數(shù)調(diào)整。
當(dāng)Airbnb意識(shí)到這些偏見后,他們通過了AML平臺(tái)(datarobot)對(duì)原始訓(xùn)練數(shù)據(jù)執(zhí)行了完整性檢查來(lái)設(shè)置模型的誤差基準(zhǔn)。
下圖列出了這些基準(zhǔn)。這個(gè)圖表顯示了各種模型的時(shí)間交叉驗(yàn)證集的均方根誤差(RMSE)分布。y軸對(duì)應(yīng)不同的“藍(lán)圖”,它是算法和特征工程步驟的結(jié)合。雖然我們不會(huì)討論每個(gè)藍(lán)圖的細(xì)節(jié),但下面的圖表展示給讀者了一個(gè)概況,以便讀者了解現(xiàn)代AML系統(tǒng)能夠完成的算法選擇的任務(wù)范圍。
DataRobot制作的藍(lán)圖基準(zhǔn)
使用AML,可以很快得到另一種觀點(diǎn):線性模型對(duì)于這個(gè)問題非常有競(jìng)爭(zhēng)力。事實(shí)上,AML平臺(tái)可以測(cè)試很多特征工程步驟,以及進(jìn)行更嚴(yán)格的超參數(shù)調(diào)整,而我們通常沒有時(shí)間手動(dòng)探索這些功能。此外,這些發(fā)現(xiàn)使得Airbnb改變了原來(lái)的算法,減少了超過5%的模型誤差。
結(jié)論
AML能幫助我們快速探索數(shù)據(jù),以及通過更有效的調(diào)參和診斷來(lái)提高模型的準(zhǔn)確率。上述案例研究充分展示了AML提高模型準(zhǔn)確率的能力,但AML也兼具其他優(yōu)勢(shì)。對(duì)于適合AML的問題,可以認(rèn)為AML能夠提供有效的建模方式,因?yàn)橹灰杏?xùn)練數(shù)據(jù)AML就很容易上手。但要注意的是,AML并不能保證100%更優(yōu)結(jié)果,但有技巧地使用AML往往能產(chǎn)生很不錯(cuò)的結(jié)果。
來(lái)源:
https://medium.com/airbnb-engineering/automated-machine-learning-a-paradigm-shift-that-accelerates-data-scientist-productivity-airbnb-f1f8a10d61f8?from=singlemessage&isappinstalled=0
【本文是51CTO專欄機(jī)構(gòu)大數(shù)據(jù)文摘的原創(chuàng)譯文,微信公眾號(hào)“大數(shù)據(jù)文摘( id: BigDataDigest)”】