劉陽陽
摘要:本文利用C5.0決策樹算法建立高風險貸款識別模型,并且利用自適用增強算法(adaptive boosting)和代價矩陣算法對該模型進行了優化,根據已有貸款者的履約情況,構建了潛在違約客戶的識別模型。研究發現,貸款期限短、儲蓄賬戶余額小,信用記錄差和貸款金額高的客戶可能是潛在的違約者。
關鍵詞:數據挖掘;C5.0決策樹;代價矩陣算法
一、引言
對貸款進行風險分類是商業銀行信貸管理中的重要環節,其目的是對客戶信貸風險狀態具有一定了解。目前,實施風險分類法的主要障礙在于借款人的資料不健全,企業的信息披露不規范,各商業銀行現有借款人的信息不全面且存在完整性問題,這些情況將直接影響歷史數據的利用效率。此外,和信貸分類相關的指標一般淹沒于企業的定性和定量數據指標中,因而加大了分類工作時的不確定性和難度。而鑒于一般統計方法的缺點,比如容錯性較差和參數方法的局限性等。
本文引入數據挖掘技術,利用決策樹C5.0算法,對高風險的銀行信貸進行識別。
二、實證分析
(一)數據準備
本文利用德國人信貸的數據集,通過對高風險的銀行信貸進行識別,為銀行的信貸服務提供決策支持。數據中包含1000個過去申請者的、有17個變量的信用記錄,每個申請者被分為“信用好”(700個例子)和“信用差”(300個例子)。建模的目的是希望得出一套信用評分規則,基于一個或多個預測變量的值,能確定一個新的申請者的信用好或差的風險。數據來源:芝加哥大學爾灣分校知識發現數據檔案庫UCI Knowledge Discovery inDatabases Archive。
(二)變量選取
本文利用17個預測變量評估新的信貸申請者,數據中的變量分別為:支票賬戶余額,貸款期限,信用記錄,貸款用途,貸款金額,儲蓄≠≠賬戶余額,工作年限,貸款/收入比,居住年限,年齡,其他信用記錄,房產,現有貸款賬戶,工作類型,受撫養人,電話,違約情況。
(三)決策樹C5.0模型建立
基于C5.0決策樹算法,首先,模型的輸入變量為checking balance、monthsloanduration、credithistory…default,該屬性集合輸入模型的數據集包括一個目標屬性,該屬性將記錄分為兩類:無違約和違約。其次,采用隨機方法選取數據創建訓練集和測試集,將數據集中90%的數據作為訓練集,用來構造模型,確定模型參數權重值,其余數據集10%的數據作為測試集,對模型的預測能力進行檢驗。
在建立模型前首先查看目標屬性變量分布是否均勻,否則需要進行再平衡,本文數據中無違約與違約的比為7:3,因此不需要再平衡。并且隨機選擇數據后的訓練集和測試集中的無違約與違約的比接近7:3,即表明數據被平均分割了。
建立訓練集模型,得到訓練結果,且由結果可知,模型錯誤率13.9%,其中102人實際違約,但預測沒有違約,23人實際沒有違約但預測違約。該模型看似不錯,預測準確率86.1%,但是仔細觀察會發現,實際102+166=268人違約,但模型只識別出了166人,還有102人近38%的人預測錯誤。對于銀行來說,給一個不合格的客戶貸款比不給一個合格的客戶貸款風險要大的多,所以該模型的不足顯而易見,將這個模型應用到測試數據檢驗模型的效果。
由測試集的結果可看出,該模型正確率73%,只識別了實際違約貸款32人中的50%顯然不夠理想。使用自適用增強算法(adaptive boosting)對模型進行優化,可以看出,模型正確率77%,但仍只識別了32個實際違約中的17個,仍不能達到要求。所以采用代價矩陣法,避免更嚴重的錯誤發生,行代表預測值,列代表實際值。行名和列名1代表no,2代表yes。由結果可知,雖然模型正確率只有66%,相比前兩個顯著降低。但是,該模型識別處理實際違約32人中的26人,識別率到81%。在這個過程中,雖然犧牲了模型的整體預測正確率,但是提高了對違約貸款者的識別精度,對于銀行來說,給一個不合格的客戶發放貸款比不給一個合恪客戶貸款損失要大的多。
畫出決策樹圖,如下:
結論:通過以上研究發現,貸款期限短、儲蓄賬戶余額小,信用記錄差和貸款金額高的客戶可能是潛在的違約者,并且比較以上算法發現,代價矩陣法在對高風險的銀行信貸進行識別時,對違約貸款者的識別精度更高。