<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

周志華團隊和螞蟻金服合作:開發了一種分布式的深度森林算法

電子工程師 ? 來源:未知 ? 作者:李倩 ? 2018-05-28 08:56 ? 次閱讀

互聯網公司每天都面臨著處理大規模機器學習應用程序的問題,因此我們需要一個可以處理這種超大規模的日常任務的分布式系統。最近,以集成樹為構建模塊的深度森林(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

    文章

    4590

    瀏覽量

    99202
  • 人工智能
    +關注

    關注

    1780

    文章

    44560

    瀏覽量

    231301
  • 螞蟻金服
    +關注

    關注

    0

    文章

    44

    瀏覽量

    7390
收藏 人收藏

    評論

    相關推薦

    分布式軟件系統

    取得比傳統儀器或PLC方式下更為靈活的解決方案。 -------------------- 在分布式計算機操作系統支持下,互連的計算機可以互相協調工作,共同完成項任務。 也可以這么解釋: 一種
    發表于 07-22 14:53

    螞蟻全球化戰略再下城 與泰國支付企業Ascend Money簽訂戰略合作協議

    `  2016年11月1日,來自多家科技媒體的消息,螞蟻的全球化再下城。具體來說,螞蟻
    發表于 11-01 18:22

    如何設計分布式干擾系統?

    什么是分布式干擾系統?分布式干擾系統是一種綜合化、體化、小型化、網絡化和智能化系統,是將眾多體積小,重量輕,廉價的小功率偵察干擾機裝置在易于投放的小型平臺上,撒布在接近***擾目標空
    發表于 08-08 06:57

    HarmonyOS應用開發-分布式任務調度

    1. 介紹本篇CodeLab將實現的內容HarmonyOS是面向全場景多終端的分布式操作系統,使得應用程序的開發打破了智能終端互通的性能和數據壁壘,業務邏輯原子化開發,適配多端。通過
    發表于 09-18 09:21

    HarmonyOS應用開發-分布式設計

    不同終端設備之間的極速連接、硬件協同、資源共享,為用戶提供最佳的場景體驗。分布式設計指南可以幫助應用開發者了解如何充分發揮“One Super Device”的能力,提供獨特的跨設備交互體驗。說明:本設計指南后續舉例中將包括手機、智慧屏、手表等多種設備,其中手機均指 EM
    發表于 09-22 17:11

    請問怎么設計一種分布式無線測控系統?

    怎么設計一種分布式無線測控系統?無線測控網絡系統具有哪些優點及應用?
    發表于 04-13 06:29

    一種獨特的DCS分布式系統的測試方案

    本文介紹一種獨特的DCS分布式系統的測試方案,對分布個網絡中多臺電腦上的各個系統模塊(每臺電腦運行多個系統模塊)同時測試,監視其覆蓋率、 內存泄漏、運行性能等重要測試指標。測試工具
    發表于 04-26 06:57

    一種基于FPGA分布式算法的濾波器設計的實現方案

    分布式的濾波器算法是什么?一種基于FPGA分布式算法的濾波器設計實現
    發表于 04-29 07:13

    怎么實現分布式測試系統的一種網絡通信設計

    怎么實現分布式測試系統的一種網絡通信設計?
    發表于 05-08 09:48

    請問怎樣去設計一種車門分布式控制系統?

    一種介紹基于CAN/LIN總線的車門分布式控制系統設計
    發表于 05-14 06:44

    如何去設計一種分布式數據采集與控制系統?

    如何去設計一種分布式數據采集與控制系統?
    發表于 05-28 07:18

    怎么實現一種分布式視頻服務器的設計?

    本文討論了一種分布式視頻服務器的設計與實現。
    發表于 06-08 06:55

    如何去實現一種分布式計算技術

    分布式計算技術是什么?如何去實現一種分布式計算技術?
    發表于 09-24 07:52

    怎樣去設計一種小容量分布式光伏電站信息采集系統

    小容量分布式光伏電站信息采集系統是由哪些部分組成的?怎樣去設計一種小容量分布式光伏電站信息采集系統?
    發表于 10-22 06:22

    HarmonyOS應用開發-分布式語音攝像頭體驗

    、組件說明使用HarmonyOS分布式文件系統和AI語音識別功能開發了分布式語音攝像頭。使用此相機應用程序,同
    發表于 08-24 15:06
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>