整理 | 王銀
【導讀】12 月 5-7 日,由中國計算機學會主辦,CCF 大數據專家委員會承辦,CSDN、中科天璣協辦的中國大數據技術大會(BDTC 2019)在北京長城飯店隆重舉行。100+ 頂尖技術專家、1000+ 大數據從業者齊聚於此,以「大數據驅動智能+」為主題,聚焦智能時代大數據技術的發展曲線,圍繞大數據與社會各行業相結合的最新實踐,進行了深度解讀和討論。
其中,熱門的「自動化機器化學習技術與系統」論壇於12月6日拉開帷幕,作為本次論壇的開場嘉賓,江蘇鴻程大數據研究院副總經理、南京大學PASA大數據實驗室博士朱光輝帶來了《自動化機器學習AutoML技術研究進展 》的主題演講。
核心觀點:改變人工智慧建模依賴專家的手工作坊式生產,打造人工智慧建模的「數控工具機」,利用機器替代人工實現AI模型的構建,大幅提升AI建模效率,降低AI技術門檻,加速AI應用落地。
眾所周知,機器學習與人工智慧技術目前已經成為國家重要發展戰略之一,各行各業都在積極向人工智慧轉型升級。著名計算機專家李開復曾預計,到2025年,AI將無處不在,「AI賦能行業」應用模式在未來將迎來高速成長。然而AI在行業應用落地時,卻存在著專業人才短缺、技術門檻高、建模周期長等痛點,導致很多中小企業對人工智慧望塵莫及。
打造AI行業的「數控工具機」
隨著人工智慧的普及,科技公司對人工智慧的要求越來越高,人才成本、準確度、效率都影響著人工智慧能否落地融入到日常的使用中。對人工智慧應用的快速增長也進而催生了對影響人工智慧水平的關鍵要素——機器學習方法的需求。正因此,自動化機器學習方法AutoML應運而生,利用機器替代人工完成AI建模,從AI for APP到AI for system最後到AI for AI,用人工智慧的方法自動化完成AI模型的構建,大幅降低AI的使用門檻,從而提升建模效率。
「自動化機器學習就好比構建一個AI行業的數控工具機,以前靠人現在靠機器,多快好省的以自動化的方式生產AI模型。「朱光輝說,傳統的AI模型訓練往往要經歷特徵分析、模型選擇、調參、評估等步驟,這些步驟需要經歷數月的時間,如果完全沒經驗,時間會更長。
而AutoML可以完全不用依賴人工專家經驗,它可以依靠數學方法,人工智慧算法理論由完整的數學推理的方式來證明,自動化完成模型自動選擇和參數調優,最終實現實現端到端機器學習流水線的自動化設計。具體來說,就是給定通過輸入數據集,在更短的時間內嘗試更多的算法模型,尋找到最優或者滿足應用精度需求的算法模型。而後針對特定模型,通過數據的分布和模型的性能,不斷評估最優解的分布區間,實現對參數進行優化的目的。
AutoML不僅可以解決傳統學習,還可以解決深度學習、終生學習。AutoML可以解決自動化特徵工程、自動化模型選擇、自動化參數優化等不同類型的任務,在類型和任務確定的前提下可以選擇針對特定任務的AutoML方法,比如語言元學習、強化學習、遺傳算法等等。
多緯度突破創新
南京大學PASA大數據實驗室從2017年開始研究自動化機器學習,談及具體取得了哪些進展,朱光輝從以下層面進行了介紹。
基於強化學習的三階段機器學習流水線,自動化設計算法框架。為了實現高效的機器學習流水線的自動化設計,提出基於強化學習的三階段機器學習流水線算法的框架,主要包括——元學習階段、強化學習階段和集成學習階段。針對強化學習階段,將機器學習流水線自動化設計的問題抽象成強化學習問題,即將從開始到數據預處理,再到特徵選擇、算法選擇的這樣一個流水線抽象成強化學習的問題,再利用強化學習Q-Learning或者DQN等強化學習的方法來解決問題,最終自動地設計出一個最優的機器學習流水線。
如下圖所示,每個狀態代表當前pipeline所處的階段及當前階段所選擇的算法,不同階段之間的算法可以跳轉,但分類算法選擇不可以跳過,因為只有先選擇一個分類算法才可以解對應的分類問題。在既定的計算時間內怎麼選擇最優的流水線,最終由強化學習來自動決定。
另外,元學習階段通過收集多個數據集進行預訓練,實現強化學習階段實現熱啟動。集成學習階段使用Stacking等集成學習方法對多個性能較好的機器學習流水線進行集成,進一步提升算法魯棒性。在PAKDD 2018 舉辦的第二屆AutoML國際競賽,朱光輝帶領團隊從全球285支隊伍中脫穎而出,取得了國際第三名的優異成績。另外,為了提升AutoML算法的運行效率,團隊研究實現了並行化的AutoML算法,支持分布式運行。基於集成學習階段,開發PASA-AutoML系統平臺實現端到端的機器學習流水線自動化設計。籠統來講,PASA-AutoML對在驗證集上表現良好的模型使用交叉驗證,得到訓練集以及測試集的預測作為新的訓練集和測試集的特徵;而後使用新的訓練集訓練一個高層分類器(邏輯回歸),然後用高層分類器類預測新的測試集來得到最終的預測結果。
朱光輝強調,為了實現AutoML的應用落地,將進一步將AutoML技術封裝成一個完整的系統,叫做PASA-AutoML。PASA-AutoML性能優於目前國際上最好的開源自動化機器學習系統Auto-sklearn。,它不僅簡單易用,而且支持更豐富的AutoML業務場景。,還支持超單優化的調優,而相比於單機算法,PASA-AutoML能夠在更短的時間內取得更好的預測性能。
基於自適應連續篩選的模型選擇/超參調優。現實的應用場景中算法和模型的超單數的組合空間非常巨大,但可用的AutoML時間資源卻是有限的,因此過濾出最有模型/超參數就顯得尤為重要。將模型選擇問題抽象成多臂賭博機(Multi-armed bandit)問題,將每個候選模型作為賭臂,並且為每個模型構建貝葉斯模型,而後在每一輪候選模型驗證過程中,根據貝葉斯超參優化結果選擇超參數,將表現較差的模型/超參數組合儘可能早地過濾掉,從而將更多的資源分配給表現較好的模型/超參數組合,從而提升AutoML計算效率。
基於終身學習場景,圍繞自動化特徵編碼、自動化特徵組合、自動化特徵選擇進行規範自動化特徵工程以及增量學習技術,提出基於時間窗口的自適應同時加權集成學習算法,最終實現能夠自動捕捉數據集特徵的變化,實現模型的動態更新自適應地設計出模型的目的。也正是通過這個技術實驗,南京大學PASA大數據實驗室在NIPS 2018舉辦的第三屆AutoML國際競賽中從全球348支參賽隊伍(包括清華大學、北京大學、麻省理工學院、UC Berkeley等國內外知名高校以及微軟、騰訊、阿里巴巴等科技巨頭公司)脫穎而出,取得國際第三名的優異成績。
基於時序多表關係型數據集,構建高效有效機器學習模型。在實際生產環境下,數據往往分布在多個關係數據表中,而多表自動關聯後,特徵維數急劇膨脹。這時,採用基於採樣的自動化特徵選擇方法可以有效降低內存開銷;除此之外,還可以採用基於多次採樣數據的集成學習方法,將LightGBM作為學習器,並利用貝葉斯優化進行超參數調優。而在KDD Cup 2019數據挖掘國際大賽中榮獲TOP10優勝獎(全球860多支參賽隊伍),體現了該技術在解決時序多表關係數據AutoML正是AutoML能夠高效利用關係型數據的有效性有力佐證。
基於多保真度優化,提出優化深度神經網絡超參算法。在多保真度優化層面,相比於傳統的機器學習,深度神經網絡訓練時間開銷較大,對應地,深度神經網絡超參調優的時間開銷也會大幅度提升。而為了提升深度神經網絡超參優化效率,團隊提出多保真度優化和early-stopping機制相結合的算法,在多組採樣數據集上高效評估超參數組合性能,同時具備良好的anytime performance和final performance。
AutoSpeech大賽顯身手
隨著AutoML越來越火,越來越多的人開始嘗試將AutoML和時間序列數據集、自然語言文本數據集以及語音數據集關聯起來,通過自動化的方式解決語音自動化分類或者文本的自動分類問題。朱光輝所在的團隊參加了在ACML 2019舉辦的第一屆AutoSpeech國際競賽,並獲得第一名,並獲邀至在加拿大舉辦的NIPS 2019做技術分享報告。AutoSpeech作為NIPS 2019 AutoDL自動化深度學習系列挑戰賽之一,吸引了廣泛的關注。
該賽事的指標是圖裡陰影的面積,它是性能和時間的積分,叫做性能的時間函數。這個指標不僅要考慮性能,而且要在更短的時間得到性能優異的模型內出結果。因為做AutoML算法要考慮其通用性的特點,比如音頻數據集可能涉及3個甚至100個類別,音頻時長不同,數據集的特徵不同,但是算法要涵蓋不同數據集的特點,做通用的解決方案。
首先,針對不同數據集,制定通用解決方案,語音特徵選取MFCC、梅爾頻譜,文本就是數據選取用TF-IDF特徵快速出結果,再用Embedding提升最終性能,從而構建的遞增式學習框架。
根據評價指標,團隊設計了一個比較個性化的框架,先用簡單的模型,邏輯回歸模型快速得出結果,再用複雜的模型,如神經網絡CRN或LSTM得到較高的性能。根據這樣一個評價指標先用簡單的模型快速得出結果,再用複雜的模型提出最終的性能,用增量的學習框架解決這個問題。
團隊還為該模型做了一個集成學習的方法,每個模型會一直維護 top3 的小集成,在通過求大集成和小集成的平均率得到最終的效能。
在一些數據集下用傳統的機器學習算法就已經達到了很好的性能,出結果很快,不到幾秒就能達到性能上限,說明做文本分析或語音分類解決實際問題時不一定上來就用神經網絡,可以選擇比較好的特徵,用傳統的機器學習模型探索,再逐漸應用深度學習網絡。
此外,朱光輝還表示南京大學PASA大數據實驗室下一步的重點是做自動化特徵組合的相關工作,他們發現,各種比賽的特徵組合對於提高最終的性能非常有幫助,所以其首要工作就是自動化的特徵組合。
第二,將聚焦於AutoML的效率方面,提高AutoML效率也是一個非常關鍵的問題,比如可以通過採樣提高性能,或通過減少迭代次數提升大數據的AutoML性能。
第三,深度森林為代表的深度集成學習的架構搜索。
在和華為的一項合作項目中發現,做自動化機器學習技術時不僅考慮模型性能,還要考慮模型的複雜度,比如華為很多算法部署在基站信號塔裡,所以要考慮模型的複雜度和性能優化的問題。
第四是AutoML+圖像、文本、語音、時間序列。PASA大數據實驗室也正在研究自動化半監督學習,讓用戶只需要部分標註數據就可以實現自動化建模。
「如今,我們的技術已經被華為、360廣泛使用,有非常廣闊的市場空間,我們的團隊成立了研究院江蘇鴻程大數據研究院,加快科技成果轉化。」談及未來,朱光輝說,「我們還將進一步開發完善AutoML平臺,面向細分行業提供定製化分析的AutoML產品或服務,以自動化和高效易用的方式,支持行業大數據智能化分析建模與應用的快速開發。「而我們也堅信,讓AI惠及更多的行業和企業,以此讓AI真正普及並賦能行業應用。」