互聯網金融時代下機器學習與大數據風控系統

互聯網金融時代下機器學習與大數據風控系統

隨着互聯網的發展,互聯網金融已成爲當前最熱門的話題,包括支付、理財、衆籌、消費等功能在內的各類互聯網金融產品和平臺如雨後春筍般涌現。互聯網金融是傳統金融行業與互聯網精神相結合的新興領域,是對傳統金融行業的有效補充,因此互聯網金融的健康發展應遵循金融業的基本規律和內在要求,核心仍是風險控制。

  傳統金融的風險控制,主要是基於央行的徵信數據及銀行體系內的生態數據依靠人工審覈完成。在國內的徵信服務遠遠不夠完善的情況下,互聯網金額風險控制的真正核心在於可以依靠互聯網獲取的大數據,如BAT等公司擁有大量的用戶信息,這些數據可以用來更加全面的預測小額貸款的風險。而機器學習將是大數據時代互聯網金融企業構建自動化風控系統的利器。

  1. 什麼是機器學習?

  機器學習這個詞相信大家都是耳熟能詳,尤其是近幾年機器學習界的執牛耳者與互聯網界的大鱷的聯姻(見圖1),更加推動了大衆對機器學習的追求熱情和在互聯網行業中應用的探索熱情。

  那麼,什麼是機器學習呢?機器學習這個詞是英文名稱Machine Learning的直譯,從字面意義不難知道,這門技術是讓計算機具有 “自主學習” 的能力,因此她是人工智能的一個分支。我個人還是比較喜歡Tom Mitchell 在《Machine Learning》一書中對其的定義:

  "A computer program is said to learnfrom experience E with respect to some task T and some performance measure P,if its performance on T, as measured by P, improves with experience E."

  關於機器學習的具體概念及介紹,有很多這方面的資料,有興趣的話大家可以去查看,在這裏我就不贅述。簡而言之,機器學習方法就是計算機利用已有的數據(經驗),得出某種模型,並利用模型來預測未來的一種方法,這種方法很類似於人類的思考方式(見圖2)。也就是說,機器學習的一個主要目的就是把人類思考歸納經驗的過程轉化爲計算機對數據的處理計算得出模型的過程。

  

機器學習與人類思考的對比

  2. 機器學習算法的類型

  一般來說,機器學習算法可以分爲監督學習,無監督學習,半監督學習,強化學習(Reinforcementlearning)以及推薦這幾大類。各部分常見應用場景和算法詳見圖3。

  

  圖3:機器學習算法分類

  3. 機器學習在互聯網金融行業中的應用

  在企業數據的應用的場景下,人們最常用的主要是監督學習和無監督學習的模型,在金融行業中一個天然而又典型的應用就是風險控制中對借款人進行信用評估。因此互聯網金融企業依託互聯網獲取用戶的網上消費行爲數據、通訊數據、信用卡數據、第三方徵信數據等豐富而全面的數據,可以藉助機器學習的手段搭建互聯網金融企業的大數據風控系統。

  除了在放貸前的信用審覈外,互聯網金融企業還可以藉助機器學習完成傳統金融企業無法做到的放貸過程中對借款人還貸能力進行實時監控,以及實時對後續可能無法還貸的人進行事前的干預,從而減少因壞賬而帶來的損失。以點融網爲例,經過這兩年的發展,我們積累了很多用戶的借款還款信息,這爲我們提供了高質量的模型訓練樣本,也爲我們搭建點融的大數據自動化審批系統奠定了堅實的基礎。除了自動化審批系統外,後續我們將在用戶還款能力實時監控,標的的有效組合,資產的合理配置等方面進行發力。

  目前互聯網金融企業以及第三方徵信公司在信用評估這方面比較常用的架構是規則引擎加信用評分卡。說到信用評分卡,最常用的算法就是Logistic Regression,這也是被銀行信用卡中心或金融工程方面奉爲法寶的算法。的確,Logistic Regression因其簡單、易於解釋、開發及運維成本較低而受到追捧。然而互聯網中獲取的用戶的數據維度較多,以離散或分類屬性變量居多,且缺失數據較多,在這種情況下,Logistic Regression的適應性會較差。而且規則引擎和信用評分卡模型分開的模式,有時會因爲規則引擎裏面某些規則過強而拒絕掉很多優質客戶。比如,某人因學生時代的助學貸款在剛畢業時未能及時償還而發生過逾期,按現有銀行審批規則是無論現在怎樣,申請信用卡時一律拒絕。因此比較好的改進方法是,將規則引擎作爲一系列弱的分類器,與信用卡評分分類器一塊構成強的分類器模型。在這方面,GBDT將是一個不錯選擇。

  GBDT(Gradient Boosting Decision Tree)又叫MART(Multiple Additive Regression Tree),該模型不像決策樹模型那樣僅由一棵決策樹構成,而是由多棵決策樹構成,通常都是上百棵樹,而且每棵樹規模都較小(即樹的深度會比較淺)。模型預測的時候,對於輸入的一個樣本實例,首先會賦予一個初值,然後會遍歷每一棵決策樹,每棵樹都會對預測值進行調整修正,最後得到預測的結果。

  F (x)+β_1 T_1 (x)+β_2 T_2 (x)+?+β_mT_m (x)

  其中,F_0 爲設置的初值,T_i是一棵棵的決策樹(弱的分類器)。

  GBDT在被提出之初就和SVM一起被認爲是泛化能力(generalization)較強的算法。近些年更因被廣泛應用於搜索排序以及推薦中而引起大家的關注,如Yahoo, Ebay等大型互聯網公司就採用過GBDT進行搜索排序。在國內,我在攜程工作時就曾應用GBDT算法對客人進行酒店noshow和延住的預測,爲公司每年帶來千萬的收入,該項目是攜程技術驅動業務發展的典型代表。

  GBDT作爲一種boosting算法,自然包含了boosting的思想,即將一系列弱分類器組合起來構成一個強分類器。它不要求每個分類器都學到太多的東西,只要求每個分類器都學一點點知識,然後將這些

  學到的知識累加起來構成一個強大的模型。

  4. 分類模型的性能評估

  分類模型應用較多的除上面講的Logistic Regression和GBDT,還有Decision Tree、SVM、Random forest等。實際應用中不僅要知道會選用這些模型,更重要的是要懂得對所選用的模型的性能做評估與監控。

  涉及到評估分類模型的性能指標有很多,常見的有Confusion Matrix(混淆矩陣),ROC,AUC,Recall,Performance,lift,Gini ,K-S之類。其實這些指標之間是相關與互通的,實際應用時只需選擇其中幾個或者是你認爲是重要的幾個即可,無須全部都關注。下面就以Logistic Regression爲例對這些常見的指標做些簡單的說明,以方便大家理解與應用。

  注: 以下所有說明均以信用評分中的好壞用戶爲例,壞客戶(壞人)標識爲1(也稱正例),好客戶(好人)標識爲 0(也稱負例)。

  1)ConfusionMatrix

  一個完美的分類模型就是,一個客戶實際上屬於壞的類別,模型也將其預測爲壞人,實際上是好人時也預測爲好人。而實際情況是模型不可能做到這一點,即常說的模型會存在誤判,因此我們必須知道模型預測對的有多少,預測錯的部分又佔了多少,混淆矩陣就是囊括了這些所有信息。

  

  注:

  a是正確預測到的負例的數量,TrueNegative(TN)

  b是把負例預測成正例的數量,FalsePositive(FP)

  c是把正例預測成負例的數量,FalseNegative(FN)

  d是正確預測到的正例的數量,TruePositive(TP)

  a+b是實際上爲負例的數量,ActualNegative

  c+d是實價上爲正例的數量,ActualPositive

  a+c是預測成負例的數量,PredictedNegative

  b+d是預測成正例的數量,PredictedPositive

  2)Accuracy(準確分類率)

  Accuracy=(true positive and truenegative)/total=(a+d)/(a+b+c+d)

  3)Error Rate(誤分類率)

  Error Rate=(false positive and falsenegative)/total=(c+b)/(a+b+c+d)

  4)Recall(正例覆蓋率)

  recall也稱爲sensitivity,在機器學習中稱recall 較多,而 sensitivity是生物統計中的常用叫法

  Recall=(true positive )/(actualpositive)/(c+d)

  5)Performance也稱爲 Precision(正例的命中率簡稱命中率)

  Performance=(true positive)/(predictedpositive)/(b+d)

  6)Specificity(負例覆蓋率)

  Specificity=(true negative )/(actualnegative)/(a+b)

  7)Negativepredicted value (負例命中率)

  Negative predicted value=(true negative)/(predicted negative)/(a+c)

  一般在工業化應用中看重的是recall和performance,以信用審批爲例,我們更關注的是在一定審批通過率的情況下,儘量降低壞賬率。

  8)ROC

  ROC 曲線就是不同的閾值下,Sensitivity和1-Specificity 的組合,ROC曲線是根據與45度線的偏離來判斷模型好壞。

  

  圖4:ROC曲線圖

  9)AUC與GINI

  曲線下的面積

  GINI=2AUC-1

  10)K-S

  用於衡量好壞兩個羣體分佈之間的最大差異,(Sensitivity-Specificity),KS取值處即爲統計意義上的最佳cutoff切點

  

  圖5:KS關係圖

  5. 結語

  本文簡單介紹了下什麼是機器學習,機器學習的常用算法,點融網應用機器學習搭建大數據風控系統的探索以及分類模型的性能評估指標。機器學習聽起來很高大上,在實際工作中也經常會遇到一味炒作概念的人,過分誇大機器學習所能起到的作用,或者盲目的追求高深複雜的算法。我個人的觀點還是一方面現階段機器學習是可以幫我們提高工作效率的科學方法,另外一個方面就是能用簡單方法解決問題絕不爲了高大上而去選擇複雜的方法,畢竟算法是沒有三六九等之分。最後,希望有更多的同學加入到統計與機器學習的研究中來。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章