天天看點

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

這一節開始建立模型,在模組化之前,我們先梳理一下思路:

思路:

1、首先選出隻帶标簽的資料(有風險和無風險的),進行分析,建立一個 recall rate 風險交易召回率較高的二分類模型。

2、接着在無标簽的資料上應用此模型,打上标簽,并與之前有标簽的資料進行合并,形成最終完整訓練樣本。

3、将新的訓練樣本送入模型,得到最終模型。

4、應用測試資料,得到結果。

模型建立流程:

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

        因為id無重複,說明id可能是交易id,而不是賬戶id,可以不送入模型訓練;同時交易時間也可以不送入訓練,故利用選擇屬性算子将其兩者過濾。之後将label列的角色設定為标簽label,即告訴模型是否有風險的列為你要關心的結果。接着因為随機森林要求輸入模型的資料是非空數值類型,故在之前的資料類型轉換基礎上還要做替換缺失值操作。

        在僅利用有标簽資料進行預測,随機森林參數maxCategories=50,treeMaxDepth=7,treeNum=30時,結果如下,可以看到效果不逑行。

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

        可見當随機森林中樹的深度比較小時,效果很差,原因主要是資料中特征太多(接近300個),決策樹太淺會導緻決策政策過于粗糙,故我們需要提高每顆決策樹的深度。

maxCategories=35,treeMaxDepth=6,treeNum=20:

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

maxCategories=35,treeMaxDepth=14,treeNum=23

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

maxCategories=35,treeMaxDepth=30,treeNum=23:

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

        可見單個決策樹越深,效果越好,為了保證訓練的速度,現在保持樹深為15,增大随機森林中樹的個數,發現效果也有變好。

maxCategories=32,treeMaxDepth=15,seed=7,treeNum=45:

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

maxCategories=32,treeMaxDepth=30,seed=7,treeNum=100:

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

    但樹的個樹一旦超過100,再增加樹的個數模型效果改善就不大了:

故最終參數調整如下:

maxCategories=32,treeMaxDepth=15,seed=7,treeNum=150:

風險大腦-支付風險識别天池大賽(三)快速建立模型(含調參思路)

        可見,隻用帶标簽的資料,利用随機森林訓練出的模型風險資料召回率并不是很高(接近0.5),因為有些無标簽資料中也包含黑樣本特征的重要資訊。

        故接下來用以上訓練出的模型對無樣本資料打标簽。由于篇幅原因,在下一篇部落格中介紹。

繼續閱讀