近日,PAKDD 2019 AutoML3+ 挑戰賽公佈了最終結果:Feedback phase 和 AutoML phase 的 Top3 排名相同,深蘭科技 DeepBlueAI 團隊斬獲第一名,由微軟亞洲研究院、北航組成的 ML Intelligence 團隊位居第二名,由清華大學組成的 Meta_Learners 團隊獲得第三名。
PAKDD 是資料探勘領域歷史最悠久,最領先的國際會議之一。它為研究人員和行業從業者提供了一個國際論壇,供大家分享在 KDD 相關領域的新想法,原創研究成果和實踐開發經驗。
大賽簡介
在人工智慧的時代,許多實際應用程式都依賴於機器學習,然而這些程式的開發人員卻並不都具備專業的機器學習演算法研發能力,因而非常需要部署 AutoML 演算法來自動進行學習。
此外,有些應用中的資料只能分批次獲取,例如每天、每週、每月或每年,並且資料分佈隨時間的變化相對緩慢。這就要求 AutoML 具備持續學習或者終生學習的能力。
這一類的典型問題包括客戶關係管理、線上廣告、推薦、情感分析、欺詐檢測、垃圾郵件過濾、運輸監控、計量經濟學、病人監控、氣候監測、製造等。本次 AutoML for Lifelong Machine Learning 競賽將使用從這些真實應用程式中收集的大規模資料集。
相比於與之前的 AutoML 比賽,本次比賽的重點是概念漂移,即不再侷限於簡單的 i.i.d. 假設。要求參與者設計一種能夠自主(無需任何人為干預)開發預測模型的計算機程式,利用有限的資源和時間,在終身機器學習環境下進行模型訓練和評估。
本次比賽分為 Feed-Back 階段及 Blind-Test 階段:
Feedback phase : 反饋階段是程式碼提交的階段,可以在與第二階段的資料集具有相似性質的 5 個資料集上進行訓練和測試。最終程式碼提交將轉發到下一階段進行最終測試。
AutoML phase:該階段不需要提交程式碼。系統自動使用上一階段的最後一次提交的程式碼對 5 個新資料集進行盲測。程式碼將自動進行訓練和預測,無需人工干預。最終得分將通過盲測的結果進行評估。
這次競賽主要有以下難點:
演算法可擴充套件性:比賽提供的資料集比之前組織的競賽大 10 到 100 倍;
不同的特徵型別:包括各種特徵型別(連續,二元,順序,分類,多值分類,時間);
概念漂移:資料分佈隨著時間的推移而緩慢變化;
終身環境:本次比賽中包含的所有資料集按時間順序分為 10 批,這意味著所有資料集中的例項批次按時間順序排序(請注意,一批中的例項不保證按時間順序排列)。參與者的演算法需要基於前面批次的資料進行訓練來預測後一批次的資料,從而測試演算法適應資料分佈變化的能力。測試後,才能把當前的測試集納入訓練資料中。
大賽結果
本次比賽在五個不同任務資料集上以 AUC 作為評分指標,官方排名規則是把 5 個任務的 Rank(在所有隊伍中的排名)值進行平均做為最後的排名依據。DeepBlueAI 團隊在 Feedback phase 的 5 項測試任務中斬獲了 4 項第一、1 項第二的優異成績,其中 4 項任務的 AUC 指標大幅度勝出。團隊的 Rank 平均指標為 1.2,在所有隊伍中具有顯著的領先優勢。
圖 1 Feedback phase 排行榜
對比 Feedback phase 的 Top3 隊伍的 AUC 指標,DeepBlueAI 團隊在 Set1、Set3、Set4、Set5 的 4 個資料集上分別領先各 Set 第二名 0.57%、1.91%、1.22%、4.18%,在 Set2 上也只比最好的差 0.05%。
AUC 指標是一項相對而言很難提升的指標,通常在競賽中 top 隊伍只能在該指標上拉開千分位、萬分位的差距,而 DeepBlueAI 團隊在 Set1,3,4,5 這 4 個不同任務上平均領先第二名 1.97%,具有非常明顯的優勢。
圖 2 Top3 AUC 指標對比
Feedback phase 榜單連結:https://competitions.codalab.org/competitions/20675#results
在 AutoML phase 中, 深蘭科技的 DeepBlueAI 團隊也穩住了 5 項任務總成績排名第一,Top3 排名如下:
AutoML phase Top3
AutoML phase Top3 排名連結:https://www.4paradigm.com/competition/pakdd2019
冠軍團隊解決方案
我們團隊基於所給資料實現了一個 AutoML 框架,包括自動特徵工程、自動特徵選擇、自動模型調參、自動模型融合等步驟,在類別不平衡的處理上我們使用了自適應取樣並在模型訓練上有一定的創新,我們也有針對性的對概念漂移問題進行處理,並且利用了多種策略對執行時間和執行記憶體進行了有效的控制,以確保解決方案能在限制時間和記憶體下完成整個流程。
(1)自動特徵工程
在大部分機器學習工業界應用中,資料和特徵對於模型往往是最為關鍵的,在現有的 AutoML 框架中,大部分特徵的提取是基於已有的數值特徵進行高階組合,它們的模型很難提取出跟時序問題或者概念漂移有關的關鍵特徵,而且忽略了類別特徵的重要性,然而現實中存在大量的時序問題,而且往往帶有概念漂移。
我們構建的自動特徵工程不僅是基於時間特徵、分類特徵、數值特徵、多值分類特徵做特徵間的高階組合,同時我們自動提取跨時間、樣本以及特徵的高階組合。這是我們團隊所做出的不同於以往模型的自動特徵工程方案,同是也是我們在比賽中能取得顯著優勢的重要因素。並且我們實現了一個自動快速特徵選擇方法,進而提取重要特徵進行高階組合,從而避免了指數級的特徵組合,並且能挖掘三階甚至四階不同型別的特徵組合,有效地提升模型效能。
(2)自動快速特徵選擇
高階組合往往容易導致生成大量特徵,一般的特徵選擇方法是進行窮舉搜尋,這在大量特徵的基礎上是不可接受的。我們的自動快速特徵選擇首先過濾掉方差低的特徵,以及通過特徵的相似性計算刪除相似性特徵,並且結合特徵重要性及序列後向選擇演算法,忽略重要性低的特徵,這能過濾掉大量的特徵並且對於模型的精度影響很小,並且極大地加速了後續的模型訓練和預測速度。然後我們進行序列後向選擇演算法,對重要性極高的特徵進行篩選,這能快速地篩選掉過擬合特徵,從而大幅度提高模型效能。
(3)緩解類別不平衡
自適應取樣:能夠自動針對資料情況(資料大小,資料型別不同),以及比賽時間的限制等各種因素的不同,自適應地對資料採取不同的取樣方式和比例。既保證了效率的同時又保證了效果。
資料訓練方式創新:傳統的類別不平衡的資料訓練方式,是通過提前對資料進行取樣,緩解類別不平衡問題,然後將資料加入模型中訓練。但是這樣會損失大量的資料資訊,所以我們在資料取樣的時候,仍然保留大量的高比例樣本,並且將其分批,在加入模型中訓練時,讓模型輪流訓練這些批次,這樣能夠儘可能保留更多的原始資料的資訊,同時緩解了類別不平衡問題。
(4)抗概念漂移處理
自適應資料融合:針對資料大小,資料複雜度,自適應選擇 batch 數目。同時,對於每個 batch,加入了「不同 batch 間取樣率隨時間增加」機制。
抗概念漂移特徵:特徵工程時,加入了大量關於不同 batch 資料之間的資訊,實現了抗概念漂移特徵。
(5)時間空間優化
針對程式碼進行了優化,在實現一些複雜操作時,預先進行評估,通過合理的取樣,以及程式碼實現方式,來減少記憶體的使用以及時間的使用。
(6)模型構建
我們採用了業界常用的 GBDT 模型,其中 GBDT 模型常用的有 LightGBM,XGBoost,CatBoost 等模型,它們基於資訊增益學習特徵間的高階非線性組合。其中 LightGBM 模型的執行速度和效果都表現得不錯,所以我們採用了 LightGBM 模型。
同時我們引入了深度學習模型,對 Category 型別資料提取 Embedding 特徵,將 Embedding 特徵以及其餘特徵進行拼接構建 LightGBM 模型。
(7)自動模型調參
我們通過驗證集採用隨機搜尋自動調整模型學習率、葉子結點、樹的深度、行取樣及列取樣等。
(8)自動模型融合
基於所給時間,我們使用不同的行取樣及列取樣來訓練多個不同的模型,這不僅僅更加充分的利用了樣本,也使得每個模型使用的資料和特徵具有充分的差異性,同時大大減少了過擬合的風險。一般 GBDT 模型和深度學習模型融合的時候,會單獨進行融合,而本次競賽中,這種融合方式效果提升並不明顯,由於時間的限制,深度學習模型在表資料上表現力並不強。
所以我們利用深度學習模型對資料進行 embedding,將 embedding 特徵加入到 GBDT 模型中進行訓練學習,產生兩類不同的模型(使用和不使用 embedding 特徵),再對其進行融合。
總結
機器學習的理論進步為產業發展持續賦能,但在應用中還是存在模型訓練難和效率低的問題。AutoML 意在構建整套從機器學習模型構建到應用的自動化框架,從而降低應用門檻,縮短專案開發週期,促進機器學習的大規模落地。因此,作為系統級的應用,AutoML 的研發更為複雜。
本次 PAKDD 競賽延續了 NeurIPS 2018 AutoML 競賽,並完善了一些競賽規則問題,競賽體驗得到提高。感謝主辦方辛勤的付出,為 AutoML 開發者提供了一次完美的同臺競技分享交流的機會。也感謝所有的參賽隊伍讓我們不斷的優化和完善我們的 AutoML 框架,在角逐中為迸發各自的想法,為 AutoML 框架的各個環節提供了新的思路,取得了效果突破的同時也推進了 AutoML 的發展。
AutoML 領域的研究和產品開發越來越活躍,展現出了強大的發展潛力和空間,也會加速推動 AutoML 在各個垂直領域的應用落地。祝賀所有的 Top 隊伍,願大家在未來都能取得自己滿意的成績!
DeepBlueAI 團隊介紹
團隊主要成員來自深蘭科技,擁有多年的機器學習經驗,專注自然語言處理、計算機視覺、AutoML 方面研究。在 PAKDD2019、KDD cup2018、NeurIPS 2018 AutoML、CIKM Cup 2018 等國際知名比賽中多次取得冠軍的優異成績。