干貨 | 聯通政企數據運營體系建設
我們將從以下幾個方面為大家介紹我們的項目,首先第一部分是需求分析,然后是數據提取及處理,接著樣本定義與分布、特征粗篩與模型選擇、特征精篩與評分卡建模、TOAD評分卡構建及決策建議。
首先是需求分析。聯通在客戶評級場景下有以下痛點。首先,政企客戶的欠費情況比較普遍,他們的逾期客戶占比比較高,并且賬收比高企,并且聯通公司對于逾期客戶缺乏預警,缺乏預期風險、營收規模、客戶自身經營風險等的綜合評估,并且缺乏客戶評級,也因此導致他們在客戶服務力量和資源的分配上沒有辦法按照科學的評級進行調配。此外,聯通內部的數據相對比較混亂,缺乏一個具體的指標,因此就對我們提出了以下幾個具體的需求:首先第一個需求是進行數據清洗,我們對現有的這樣的數據資源來進行整合,重點是去篩選出來我們需要的指標;第二方面是我們需要搭建有效的這樣的一個客戶評級模型,我們借鑒金融風控的C卡模型來構建我們的評分卡體系,原因是我們需要根據已有的逾期的情況去預期他們是否能夠按期還款,接著我們需要提高模型的準確率,因為需要去跟一些具體的企業客戶進行催收的工作,所以需要盡可能減少我們的用戶打擾,所以我們需要同時使用客戶逾期可能性以及客戶的逾期嚴重程度來進行模型搭建;最后,我們需要使用DWF平臺來搭建一個可視化的用戶評級體系來促進業務使用,并且給予業務一些象限分析的商業建議。
首先我們進行的數據提取與整理,我們主要包括兩部分的數據,第一部分是關于我們的工商數據,我們主要是使用一個組件entid來對54張工商信息的表進行有效的整合。其次,我們是對過往的欠費數據進行了寬表整理,其中比較重要的事情是目標變量的選擇,主要包括兩個變量,第一個是預期可能性。我們和業務進行溝通之后,認為單月逾期涉及多方面因素,所以不能輕易的定義為逾期客戶,因此我們將連續兩個月以上逾期的客戶定義為外客戶。第二個指標是逾期嚴重程度。為了規劃企業自身的季節性消費波動,我們計算單月逾期占年逾期的金額比例作為逾期的嚴重程度。也根據以上這兩個跟業務溝通的目標變量的定義,進行了具體的邏輯計算,并且使用SQL進行最后的數據提取。最后,我們將工商數據與過往的欠費數據進行表的組合。
接下里進入到兩個目標變量的解釋。我們這個項目整個大環境是一個決策智能建議,決策智能最重要的其實并不是后面的模型,反而更重要的是前面target定義。就我們在這個決策智能領域,只要把target給定義好了,其實后面的事情跑通很簡單。所以首先第一個是剛才同學講的這些壞的可能性,或者說壞的趨勢,術語叫做M2plus。單看一個月壞,它并不是壞,基于他們領域知識,他們認為連續兩個月壞才有一個壞的趨勢。我們基于這樣的知識去定義一個二分類的樣本定義,在表現期內,如果連續兩個月以上處于逾期是一個正樣本。大部分人還是好的一個樣本,當然這個比金融領域的會稍微正樣本會多一些。考慮到時間關系,導師在系統里面給我們抽樣千分之一左右,這是讓我們在本地可以跑的量級。
然后除了壞的趨勢之外,我們還要看客戶壞的程度。根據剛才講的指標,分母是采用年化出賬金額去把它規劃到季節性的消費波動。所以一個客戶,如果他消費的多,他同時他逾期又多,那才有可能是壞的。但最后產生另一個問題,既然是決策的話,我們可能并不需要一個連續的變量。它本來原始的數據是一個連續值,我們需要去做一個二分類才方便去做決策,但是問題是在于,如果與其比例是一個連續的,究竟選一個什么樣的點是合適的?我們plot出了一個比例和前面M2plus的相關關系。我們用軸步法去大概判斷出一個人的逾期比例、企業的逾期比例大于等于四分之一或者三分之一的這個區間里。以四分之一來判斷,如果一個企業客戶在這一個賬期內,在這一年內,他的預期比例大于或等于25%我們把它判定為正樣本,然后其他的是副樣本,這樣本正副樣本比例大概一比五左右,比剛剛會稍微要高一些。
樣本定義完之后,我們在智能決策領域,我們講究三個重要的指標,一個是模型的準確性或者泛化能力,第二個是講究模型的穩定性,第三個還要講究模型的可解釋性。和剛剛同學用深度學習講的不一樣的地方在于,我們并不是追求它預測準確性,所以您看到我們整個十折交叉驗證的重要指標其實是K值,是能夠在金融領域或者說這種風險決策領域區分出好壞之間的差別的。所以AUC并不是我們判定的唯一指標,我們通過對比就三種模型,就Lr算一個可解釋性很強的線性模型,后面兩個是黑箱模型,我們想要這邊想要做一個事情,就是用線性可解釋的模型是否可以達到和黑箱模型相同的效果,但同時線性模型有更強的解釋力呢?我們通過十折交叉驗證發現在兩個target上面都確實有這樣的一個結論。當然,前提是我們對Lr做了一個變換,沒有做WOE變換的話,其實效果很差的。
選定Lr模型之后,我們又進一步去看不同的特征在不同的模型之間的重要性。黑箱模型其實是適合對特征做一個粗篩,兩個模型如果都認為重要的,我們一定放進后期的評分卡建設中。但如果隨機森林認為不重要,但是Lr認為重要,我們可能會后續斟酌一下,看是否會放進去。
最后我們就進入到后面的評分卡模型建設。在評分卡不變的話,第一步首先是基于變量的信息量對變量的粗篩。去除了一些不會進入最終評分卡模型的變量之后,我們會主要是根據它的iv值,就是它的信息值來對它進行篩選。iv其實是每一個變量里面正負樣本的差值和對數比的相關系數,主要是衡量變量的信息預測能力。而在評分卡的業務上應用的時候,對于iv值大于1的一些變量,一般就會認為它是有信息泄露的可能,一般會把這些變量做額外的規則,或者基于業務的一些調整或者分時之后再考慮添加。然后iv值在0.02以下的話一般是一個對于預測沒有太多價值的變量,所以一般就是在考慮在大于0.02到1的這一部分的變量作為進粗篩的變量。第二步的話是調整變量分箱,因為我們最后的用是評分卡,主要用的是能獨立回歸,所以最后希望實現基于每一個分箱之間的odds值是等級即進和單調變化。最理想的話,右下角這邊是里面的近12個月的逾期欠費次數的理想狀況,它的紅色代表壞賬率,這個線是單調的,而且基于業務解釋的話,也能夠解釋到在12月的觀察期內以及欠費次數越多的話,代表它后面的逾期欠費可能性越高,或者說rate的程度可能會越高的業務解釋是通的,而且這樣的單調和線性的分箱結果在進入到WOE編碼之后,才會有一個更好的結果。而對于像左下角這種分類變量的話,比如說在這里只會有一個負值到正值的一個整數變量的話,一般的話會考慮到左上角的iv值和它的分箱結果,然后去手動嘗試一些調整的分箱。比如,單獨把-1的這部分給提取出來,iv值會增長,而且還是保持一個比較理想的單調變化。所以最后在評分卡模型里面也會保持三個分箱的結果,而以此類推對其他的所有可能的變量作分箱之后,就可以進入到我們后面的第二次的變量篩選,是基于模型算法的一個篩選。
在評論卡里面主要是通過逐步回歸來篩選正向逆向選擇里面的變量子集,然后以AIC和BIC的準則去篩選到最后的一些能夠進入到里面的一些變量,也會考慮采用LASSO或者嶺回歸的選擇。最后目標是能夠保持在8到15個變量在評分卡里面。然后右邊的話就是分別以m2plus和二分后的rate的兩個目標變量做的評分卡的建模的十折交叉驗證,然后在評分卡的模型建構過程中,主要是用的邏輯回歸。十折交叉驗證,對于整體的性能和模型穩定性都有一個比較好的解釋,比如在左邊能看到基本上十折跑出來的結果穩定性還是相對比較高的。右邊的以二分后的逾期欠費占比的評分卡會稍遜于前面的M2plus。整體的話也在變量篩選的過程中參考到隨機森林和Lr聯動的時候的一些重要的特征,最后確定的模型在M2plus的評分卡里面有11個,然后里面有7個是前面的共有的特征,然后rate的評分卡有10個會進入到最后的模型,還有一些像psi這樣的指標是衡量評論卡里面變量的穩定性,通過實際的一些驗證之后,里面的變量基本都是小于0.01的水平是比較理想的。對于最優模型的篩選,主要是用到ks bucket,在壞賬率這一列,如果它是一個組和組之間的區別,相對大而且顯示出嚴格單增,一般就是考慮到這個模型是一個比較理想的,可以作為最優的模型。
最后的話是對評分卡的賦分,一般的話是基于業務的決策層和管理層,他們對于業務理解和解釋的需求,對基礎的比率和評分之后做出了一個人為輸入的主觀的一些部分。最后TOAD這個包會通過人為的部分,然后跑出來每一個變量對每一個分箱指定的分數。正值的話是分數越高,客戶逾期的可能性越低。如果是負值的分箱,代表落到這個分箱里面的客戶,他的逾期可能性會越高。評分卡的特點對于業務人員而言,容易解釋不同客戶的不同得分,容易理解這些得分背后的原因,而且理解他如何提高得分以去判定客戶的逾期可能性。然后下一步一般在實際的業務里面還會耗時間耗資源的是評分卡實施前后的報告,或者說穩定性報告以及以結合業務專家或者結合到長期的實施和實踐里面的評價,對于一些iv值過高的特殊變量,會對它進行單獨的客戶分群處理等等。由于我們這個項目的條件的限制,這部分可能就沒有在我們這個項目里體現。
然后接下來是我們把整體的評分卡設計到DWF平臺上去。我們的初衷,希望能夠通過我們查看客戶的id可以迅速定位到他各個指標的情況,比如說我們可能查詢其他的條件,比如成立時長比較長的公司,包括它注冊資本規模相對來說是什么樣規格的公司,它的情況,以及我們在和黃云老師溝通的過程中,我們說到可能國資背景的企業會多一些,我們也加入了這個行業的搜索等等,這是我們想實現的第一個功能。然后第二個就是我們在查詢到這個公司或者說查詢到幾類公司之后,我們能迅速給出一個評分卡的指標,包括總分以及各個指標上的對應的分數,通過交互的方式來讓客戶知道在各個評分卡的中的情況。
在這個過程中,聯通的這個項目讓我們意識到不僅僅是對于聯通公司而言,只是評估他的客戶逾期的風險怎樣,或者他的收益是怎么樣。更重要的是可能背后我們認為可以去監測中小企業,包括說一些大企業的運行狀況,對于工商的監測來講是一個更好的補充。然后第二個就是說在我們溝通的過程中存在一個技術邏輯和業務邏輯之間的爭論。通過我們平時研究的角度,我們往往會從理論上去建立一些評分卡指標,但是在這個過程中,我的隊友包括現有數據的研究中,可能先有一個理論的框架去搜索數據。我們先從數據出發,然后再去建立評分卡,然后再走向理論和現實意義。
在這個基礎上,我們最后想實現的一個功能是給予聯通公司也給予政府一個能夠決策的建議,分為兩個層面,第一個層面,企業本身有沒有逾期的可能性;第二個是關于逾期的程度,就是說它逾期的金額大概有多少。這是第一個指標。第二個指標,我們想說企業本身的營收能力,給聯通公司帶來的營收能力大概是高還是低。第二個就是結合它的預期風險,建立這樣一個思維的指標,我們了解并不是僅僅去完成一個作業,而是可能在這個項目溝通包括完成任務的過程中,我們要更加細心,更加負責任。
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。