評分卡建模的特徵工程
前言
在評分卡建模的過程中,最重要的是樣本和特徵,最耗時間的也是樣本抽取以及特徵工程。特別是在小公司,從資料抽取、到資料清洗、再到變數衍生基本都是一個人來完成。當然小公司的維度少,相對應的變數也少。但是,隨著業務的發展以及外部環境的變化,一直維持著之前的業務分析維度是很難跟上其他公司的腳步的。拓展維度最好的方法就是衍生變數,這也不僅僅對建模有幫助,對風險規則的制定也有益。
變數衍生也是基於已經有的資料進行挖掘,一般風控手上都會有申請表資料,徵信資料、流水資料、運營商資料等等。
接下來講講自己工作上用到的一些衍生方法
1. 申請表變數交叉
主要用在申請表變數上,比如:年齡和收入進行交叉;或者婚姻與性別,收入與房產等等。這部分交叉資料也比較多,但更需要追求在業務上的解釋。
2. 缺失值處理
如果有缺失值超過30%的變數,那缺失值處理就是最簡單的衍生變數方法。缺失值處理也有很多種的方法,如:連續值:使用均值,中值,0來替換;類別型:使用最多的類、單獨為一類來替換。每一種處理方式都能得出新一列變數。但是,在處理的時候,需要先去了解缺失值出現的原因。比如,申請表上工作年限欄位出現空缺。可能是客戶未填,那樣是可以做處理的。也可能是申請表上已經取消了工作年限,那就沒有必要做處理了,因為這個欄位已經無法獲取,可以剔除了。
3. 外部資料
一般在對這些資料進行衍生時,首先需要去熟悉原始資料,將原始資料中能進行分類的點和衍生維度記下來,最後加上統計方法。是先將想到的衍生點記下來,然後一個一個去列舉衍生,再做交叉衍生。
以運營商資料為例,
分類點: 通話時長,通話次數,主叫次數,聯絡人個數,話費等等。
衍生維度:近1月,近3月,白天,工作日等等。
統計方法:總和,最大值,平均值等等。
可以衍生出變數:近1月通話總時長,近一月平均每日通話時長,近1月工作日通話總時長。
交叉衍生:近1月工作日通話總時長佔所有通話時長比例。
除了上述,還有一些其他的角度也可以豐富特徵:
如:
近期性:最近一次貸款距今時長。
嚴重性:信用卡逾期次數,流水超月收入次數。
4.使用模型衍生,對變數進行轉換。
如使用gbdt衍生變數,或者對變數做轉換,如:log,平方等等。這裡有些問題就是變數在業務上不好解釋(如果是用在行為評分就無所謂了)和後期不好調整。
結束語
變數衍生的方法有很多種,這裡也只是寫一些常用的,如果有不足或問題,歡迎指出。最近在研究自動特徵工程的一個python包,後面有空也更新一下。