使用MLlib、MLflow和Jupyter從scikit-learn中移動一個打擊欺詐的隨機森林

下載幻燈片

本次演講描述了將一個大型隨機森林分類器從scikit-learn遷移到Spark的MLlib。我們將訓練時間從2天縮短到2小時,減少了失敗的運行,並使用MLflow更好地跟蹤實驗。Kount為在線信用卡交易等數字交互提供了確定性。我們的評分之一使用隨機森林分類器,每棵樹有250棵樹和100,000個節點。我們使用scikit-learn使用6000萬個樣本進行訓練,每個樣本包含超過150個特征。內存需求超過750 GB,耗時2天,並且對數據庫中斷或訓練執行不太可靠。為了將工作流遷移到Spark,我們使用HDFS構建了一個6節點集群。這提供了1.35 TB的RAM和484內核。使用MLlib和並行化,我們的隨機森林的訓練時間現在不到2小時。培訓數據保存在我們的生產環境中,這需要一個部署周期來將本地開發的代碼移動到我們的培訓服務器上。

新的實現使用Jupyter筆記本進行遠程開發和服務器端執行。MLflow跟蹤所有輸入參數、代碼和git修訂號,而性能和模型本身作為實驗工件保留。新的工作流對服務中斷具有魯棒性。我們的培訓管道從Vertica數據庫開始。最初,這個連接需要8個小時才能完成,任何問題都會導致重新啟動。使用sqoop和多個連接,我們在45分鍾內提取數據。舊的技術使用易失性存儲,每次實驗都需要數據。現在,我們一次從Vertica提取數據,然後更快地從HDFS重新加載數據。雖然這是一項重大的任務,但轉移到Spark生態係統將臨時和實際操作的培訓過程轉換為完全可重複的管道,以滿足可追溯性和速度的監管和業務目標。

試著磚
請參閱2019年舊金山Spark + AI峰會視頻


«回來
關於Josh Johnston

喬希·約翰斯頓(Josh Johnston)領導Kount的人工智能科學團隊打擊數字欺詐。他的算法在不到250毫秒的時間內運行,每天保護數億美元的支付交易。此前,他為DARPA大挑戰建造了自動駕駛汽車,爆炸物處理機器人的自治,以及VR和AR的科學可視化。他擁有卡內基梅隆大學機器人碩士學位和杜克大學電氣和機械工程學士學位。

Baidu
map