互聯網公司每天都面臨著處理大規模機器學習應用程序的問題,因此我們需要一個可以處理這種超大規模的日常任務的分布式系統。最近,以集成樹為構建模塊的深度森林(Deep Forest)算法被提出,并在各個領域取得了極具競爭力的效果。然而,這種算法的性能還未在超大規模的任務中得到測試。近日,基于螞蟻金服的參數服務器系統“鯤鵬”及其人工智能平臺“PAI”,螞蟻金服和南京大學周志華教授的研究團隊合作開發了一種分布式的深度森林算法,同時提供了一個易于使用的圖形用戶界面(GUI)。
為了滿足現實世界的任務需求,周志華團隊等對原始的深度森林模型進行了諸多改進。針對超大規模的任務,如套現欺詐(cash-out fraud)行為的自動檢測 (擁有超過1億的訓練樣本),研究人員測試了深度森林模型的性能。實驗結果表明,在不同的評估標準下,只需微調模型的參數,深度森林模型便能在大規模任務處理上取得當前最佳的性能,從而有效地阻止大量套現欺詐行為的發生。即使和目前已經部署的其他最佳模型相比,深度森林模型依然能夠顯著減少經濟損失。
▌簡介
對于螞蟻金融這樣的金融公司,套現欺詐行為是常見危害之一。買家通過螞蟻金融發行的螞蟻信用服務與賣家進行交易支付,并從賣家處獲得現金。如果沒有合適的欺詐檢測手段,那么每天詐騙者就能夠從套現欺詐中獲取的大量現金,這對網絡信用構成了一個嚴重的威脅。目前,基于機器學習的檢測方法,如邏輯回歸 (LR) 和多元加性回歸樹 (MART),能夠在一定程度上預防這種欺詐行為,但是我們需要更有效的方法,因為任何微小的改進都將顯著地降低經濟損失。另一方面,隨著數據驅動的機器學習模型有效性的日益提高,數據科學家經常與產品部門密切合作,為這些任務設計并部署有效的統計模型。對數據科學家和機器學習工程師來說,希望通過一個理想的高性能平臺來處理大規模的學習任務 (經常有數百萬或數十億的訓練樣本)。此外,這個平臺的搭建過程要簡單,并能運行不同的任務以提高生產力。
基于樹結構的模型,如隨機森林和多重加權回歸樹模型,仍然是各種任務的主要方法之一。由于這種模型的優越性能,在 Kaggle 比賽或數據科學項目中大部分的獲勝者也都使用集成的多元加性回歸樹模型 (ensemble MART) 或其變體結構。由于金融數據的稀疏性和高維性,我們需要將其視為離散建?;蚧旌辖栴},因此,諸如深度神經網絡結構的模型并不適用于螞蟻金融這種公司的日常工作。
最近,周志華研究團隊提出了一種深度森林算法,這是一種新的深層結構,無需進行微分求解,特別適合樹結構。相比于其他非深度神經網絡模型,深度森林算法能夠實現最佳性能;而相較于當前最佳的深度神經網絡模型,它能實現極具競爭力的結果。此外,深度森林模型的層數及其模型復雜性能夠自適應于具體的數據,其超參數的數量還比深度神經網絡模型要少得多,可視為是一些現成分類器的優秀替代品。
在現實世界中,許多任務都包含離散特征,當使用深度神經網絡進行建模時,處理這些離散特征將會變得一個棘手的問題,因為我們需要將離散信息進行顯式或隱式地連續轉換,但這樣的轉換過程通常會導致額外的偏差或信息的丟失。而基于樹結構的深度森林模型能夠很好地處理這種數據類型問題。這項工作中,我們在分布式學習系統“鯤鵬”上實施并部署了深度森林模型,這是分布式深度森林模型在參數服務器上的第一個工業實踐,能夠處理數百萬的高維數據。
此外,在螞蟻金服的人工智能平臺上,我們還設計了一個基于 Web 的圖形用戶界面,允許數據科學家通過簡單地拖動和點擊就能自如地使用深度森林模型,而無需任何的編碼過程。這將方便數據科學家的工作,使得構建和評估模型的過程變得非常有效且方便。
我們在這項工作中的主要貢獻可以總結如下:
基于現有的分布式系統“鯤鵬”,我們實現并部署了第一個分布式深度森林模型,并在我們的人工智能平臺 PAI 上為其搭建了一個易于使用的圖形界面。
我們對原始的深度森林模型進行了許多改進,包括 MART 作為基礎學習者的效率和有效性,諸如基于成本的類別不平衡數據的處理方法,基于 MART 的高維數據特征選擇和不同級聯水平的評估指標的自動確定等任務。
我們在套現欺詐行為的自動檢測任務上驗證了深度森林模型的性能。結果表明,在不同的評估指標下,深度森林模型的性能都明顯優于現有的所有方法。更重要的是,深度森林模型強大的魯棒性也在實驗中得到了驗證。
▌系統介紹
鯤鵬系統
鯤鵬是一款基于參數服務器的分布式學習系統,該系統主要用于處理工業界出現的大規模任務。作為生產級別的分布式參數服務器,Kunpeng 系統具有如下幾大優點:(1) 強大的故障轉移機制,保證大規模工作的高成功率; (2) 適用于稀疏數據和通用通信的高效接口; (3) 用戶友好型的 C ++ 和 Python 系統開發工具(SDKs)。其結構簡圖如下圖1所示:
圖1:鯤鵬結構簡圖,包括 ML-Bridge,PS-Core 部分。用戶可以在 ML-Bridge 上自如地操作。
分布式 MART
多元加權回歸樹模型 (MART),也稱為梯度提升決策樹模型 (GBDT) 或梯度增強機模型 (GBM),是一種在學術和工業領域廣泛使用的機器學習算法。得益于其高效而優秀的模型可解釋性,在這項工作中我們在分布式系統中部署 MART,并將其作為分布式深度森林模型的基本組成部分。此外,我們還結合了其他的樹結構模型進一步開發深度森林模型的分布式版本。
深度森林模型結構
深度森林模型是最近提出的一種以集成樹為構建模塊的深度學習框架。 其原始版本由 ne-grained 模塊和級聯模塊 (cascading module) 構成。在這項工作中,我們棄用了 ne-grained 模塊,并建立了多層的級聯模塊,每層由幾個基礎的隨機森林或完全隨機森林模塊構成,其結構如下圖2所示。 對于每個基礎模塊而言,輸入是由前一層產生的類向量和原始的輸入數據組合而成的,然后再將每個基礎模塊的輸出組合得到最終的輸出。此外,對每一層進行 K 倍驗證,當驗證集的準確率不在提高時,級聯過程也隨之自動終止。
圖2:深度森林模型結構
對于一般的工作部署策略,模型訓練模塊需要在所有數據準備工作完成后才能開始工作,而模型測試模塊也必須在所有模型都訓練成功后才能開始預測,這樣顯著地降低了系統的工作效率。因此,在分布式系統上,我們采用有向無環圖 (DAG) 來提高系統工作的效率。有向無環圖,顧名思義就是一個沒有定向循環的有向圖,其結構如下圖3所示。
圖3:有向無環圖的工作調度,每個長方形代表一個進程,只有彼此相關的進程才能互相連接。
我們將圖中的一個節點視為一個進程,并且只連接彼此相關的進程。兩個相關節點的先決條件是一個節點的輸出作為另一節點的輸入。只有當一個節點的所有先決條件都滿足時,另一節點才會被執行。每個節點都是分開執行的,這意味著一個節點發生故障時并不會影響隨后的其他節點。如此,系統的等待時間將顯著地、縮短,因為每個節點只需要等待相應節點的執行完畢。更重要的是,這樣的系統設計為故障轉移提供了更好的解決方案。例如,當一個節點因為某些原因導致崩潰,那么只要因為它的前提條件滿足了,我們就可以從這個節點開始重新運行,而不需要從頭開始運行整個算法。
圖形用戶界面(GUI)
如何有效地構建并評估模型性能,對于生產力的提高是至關重要的。為了解決這個問題,我們在螞蟻金服的人工智能平臺 PAI 上開發了一個圖形用戶接口 (GUI)。
下圖4展示了深度森林模型的 GUI 界面,其中箭頭表示數據流之間的序列相關性,圖中每個節點代表一個操作,包括加載數據,構建模型,模型預測等。例如,一個深度森林模型的所有細節都被封裝成一個單一節點,我們只需要指定使用哪個基礎模塊,模塊中每層的數量及其他一些基礎配置。這里默認的基礎模塊是前面提到的 MART。 因此,用戶只需要點擊幾下鼠標就能在幾分鐘內快速創建深度森林模型,并在模型訓練結束后得到評估結果。
圖4:PAI 平臺上深度森林模型的 GUI 界面,每個節點代表一個操作。
▌實驗應用
數據準備
我們在現金支付欺詐的自動檢測任務上驗證深度森林模型的性能。對于這個檢測任務,我們需要做的事檢測出欺詐行為的潛在風險,以避免不必要的經濟損失。我們將這個任務視為二元分類問題,并收集四個方面的原始信息,包括描述身份信息的賣家特征和買家特征,描述交易信息的交易特征和歷史交易特征。如此,每當一次交易發生時,我們就能收集到超過 5000 維的數據特征,其中包含了數值和分類特征。
為了構建模型的訓練和測試數據集,我們對連續幾個月在 O2O 交易中使用螞蟻信用支付的用戶數據進行采樣來得到訓練數據,并將往后幾個月中相同場景下的數據作為測試數據。
數據集的詳細信息如下表1所示,這是一個大規模的且類別不均衡任務。正如我們前面提到的,收集到的原始數據維度高達 5000 維,這其中可能包含一些不相關的特征屬性,如果直接使用的話,整個訓練過程將非常耗時,同時也將降低模型部署的效率。因此,我們使用 MART 模型來計算并選擇我們所需的特征。
具體來說,首先我們用所有維度的特征來訓練 MART 模型,然后計算出特征的重要性分數,以此選擇相對重要的特征。實驗結果表明,使用前 300 個特征重要性分數較高的特征,我們的模型能夠達到相當有競爭力的性能,且在驗證過程中進一步證明了特征的冗余性。因此,我們以特征重要性分數來過濾原始特征,并保留前300個特征作為我們模型訓練所需。
表1:訓練集和測試集的數據樣本量
▌實驗結果分析
我們在不同的評估標準下測試分布式深度森林模型的性能,并討論具體的分析結果。
通用評估標準
在通用的評估標準下,包括 AUC 分數,F1 分數和 KS 分數,我們對比評估了 Logistic 回歸模型 ( LR),深度神經網絡 (DNN),多元加權回歸樹模型 (MART) 及我們的深度森林模型 (gcForest) 的性能,結果如下表2所示:
表2:通用評估標準下的實驗對比結果
特定評估標準 (Recall)
對于正樣本的回召率 ,我們對比評估了四種方法的性能,其結果如表3所示:
表3:特定評估標準下的實驗對比結果。
PR 曲線
為了更直觀地對比四種方法的檢測性能,我們繪制了 PR (Precision-Recall) 曲線,如圖5所示。我們能夠清楚地看到,深度森林模型的 PR 曲線包含了其他所有方法,這意味著深度森林模型的檢測性能要比其他方法的性能好得多,這進一步驗證了深林模型的有效性。
圖5:LR, DNN, MART 和 gcForest 模型的 PR 曲線
經濟效益
在不同的評估標準下,我們已經逐一分析了實驗結果并驗證了深度森林模型用于處理大規模任務的有效性。在套現欺詐行為的檢測任務上,與之前最好的 MART 模型相比 (由 600 個樹結構構成的 MART 模型),深度森林模型 (以 MART 模型為基礎模塊,每個 MART 模塊只需 200 個樹結構) 能夠以更簡單的結構帶來更顯著的經濟效益,大大降低了經濟損失。
模型魯棒性分析
針對上述的評估標準,我們對不同的方法分別進行了魯棒性分析,其結果如表4,表5 及圖6所示,分別對應通用評價標準,特定評價標準 (Recall) 及 PR 曲線的魯棒性分析結果。其中 gcForest-d 代表默認設置下的深度森林模型,而 gcForest-t 代表微調后的深度森林模型。
表4:通用標準下的實驗對比結果 (魯棒性分析)
表5:特定標準下的實驗對比結果 (魯棒性分析)
圖6:默認設置下的 gcForest-d,微調后的 gcForest-t 及 MART 模型的 PR 曲線
我們可以看到,默認設置下的 gcForest-d 模型的性能已經遠遠優于精調后的 MART 模型,而微調后的 gcForest-t 模型則能夠取得更好的性能。
-
神經網絡
+關注
關注
42文章
4762瀏覽量
100540 -
人工智能
+關注
關注
1791文章
46859瀏覽量
237579 -
螞蟻金服
+關注
關注
0文章
44瀏覽量
7406
發布評論請先 登錄
相關推薦
評論