李召蝶 董如哲



摘 要:隨著國民經濟的快速增加以及人們金融觀念的轉變,我國個人貸款需求呈現穩健上升的態勢。如何從海量客戶中精準識別目標客戶,如何通過合適的途徑將營銷信息推送至客戶,已經日益成為商業銀行面臨的重要問題之一。本文通過對某銀行某次12萬客戶的營銷活動數據分析,利用GBDT(梯度下降)+LR(邏輯回歸)方法,根據營銷渠道將數據分層訓練,進行客戶精準營銷響應預測,大幅提高了營銷效率。同時在固定成本約束下,實現營銷效果最佳的資源配置最優解。
關鍵詞:精準營銷;GBDT+LR;最優化;營銷策略
1.背景及意義
傳統商業銀行如何在信息時代通過精準營銷,準確定位客戶,提高產品覆蓋度?依托大數據分析,可推動商業銀行精準營銷基礎上的“客群化”經營,匹配客戶特征直達C端,實現存量客戶挖掘、睡眠客戶喚醒、潛力客戶提升轉化,構建獲客活客輕入口,提高營銷效率,助力全量客戶維護與拓展,增強個人業務可持續發展能力和市場競爭力。
本文依托某銀行在2018年某月開展的個人貸款營銷活動數據進行分析構建。通過機器學習建模過程,大幅提高了傳統營銷的效率,具有一定的現實意義。
營銷活動數據基于電話、短信和郵件三種渠道(成本不同),對客戶推送營銷信息。
不同渠道營銷效果,在response進行貸款的響應客戶中,Phone Call(電話)渠道相比SMS(短信)和Email(郵件)效果最為明顯,此渠道成功客戶數占全部成功客戶數的59%,其次為SMS和Email。
未接觸客戶 接觸客戶
2.分析流程圖
Setp1:將數據集規約形成兩個樣本,訓練數據集樣本和測試數據集樣本。
Setp2:對Step1形成的訓練數據集預處理和特征工程、特征選擇過程。具體包括缺失值處理、重復值處理、生成衍生特征、獨熱編碼等。
Step3:利用Step2形成的已完成數據預處理的訓練樣本,使用GBDT+LR方法根據不同渠道分別建立客戶響應模型,對建立好的模型進行解釋與評價,利用測試訓練集對模型進行診斷。
Step4:利用另一個目標變量是否觸達客戶建立GBDT預測模型,作為全量客戶全渠道預測的數據基礎。
Step5:根據Step4所形成的數據進行分析,依據不同標準對建立營銷方案,并針對反饋效果監測、調整模型。
3.數據準備與預處理
3.1.數據清理
在數據建模過程中,數據的準備和預處理往往占據著最為重要的地位,同時也會消耗最大量的時間。在此,我們主要通過將少值域數據有序離散化、利用決策樹算法進行數據分箱、利用業務知識將變量分組,結合分組情況對數據進行相關性檢驗與過抽樣等創新性方法對數據進行了前期處理工作。
3.1.1.數據變換
首先將數據按照4:1的比例分成訓練集與測試集,以下數據變換完全是基于訓練集的。
(1)確定是否存在重復值
數據清理包括重復值的刪除與缺失值的處理等工作。首先,觀察數據中是否存在重復值,經過分析,數據中不存在完全重復的觀測。
(2)數據重編碼
對于數據中的字符型變量重編碼,將所有的Y值替換為1,N值替換為0。此外對于營銷渠道、性別、教育水平、工作類型,依次編碼為1、2、3、4等。
(3)缺失值處理
隨后,查看變量中的缺失值個數,決定如何對待缺失數據。統計發現,大部分變量缺失值在10%以下,但也有幾個變量缺失值超過了70%。
首先,根據業務特征推測數據缺失原因,進而確定處理規則。經過篩選,大部分存在缺失值的變量不包含0值,如total_investment_bal (當前持有理財產品數額)等,可以推斷這部分缺失值是由于客戶無相關交易內容所致,故此部分缺失值可用0值填充。
此外,僅變量 “信用卡當前還款期內賬單額”同時存在空值與0值。經觀察發現,此變量取空值時,對應變量“當前信用卡額度”也為空值,故這部分空值是為無信用卡導致的無交易額。因此,可創造一個衍生變量“是否持有信用卡”來標識這部分空值。自此,缺失值處理完成。
3.2.變量篩選與屬性構造
通過對客戶前六個月歷史數據進行分析,發現很多數據具有較強相關性(相關系數超過了0.8),不能夠直接進入模型,需要對數據進行變量篩選?;驹瓌t為:6月份的數據全部進入模型,同時基于1-6月的數據,構造近三個月/六個月數據指標,代替1-5月的數據進入模型,以降低變量中的自相關性。具體方法如下:
(1)開戶時間、受教育水平、性別、工作類別等四項變量
選擇6月的數據進入模型,其他月份的數據刪除。
(2)當前是否持有房貸,是否持有保險產品等兩項變量
選擇6月數據,此外構造新變量:房貸(保險)持有類型,分為:
(3)9個數值型流量數據變量
當前存款數量、持有理財產品數額、信用卡當前還款期內賬單額、當前信用卡額度、信用卡上一個還款期賬單額、賬戶本月取款或者轉出數值、通過ATM取款或者轉出數額、本月取款或者轉出次數、本月賬戶存款或者轉入次數等9個數值型流量數據,構造近三個月、六個月均值指標和偏離度指標。其中,三個月存款余額偏離度=6月存款/(4、5、6三個月存款均值)。偏離度指標用來衡量該變量的變化趨勢。公式如下:
(4)信用卡額度使用率和ATM渠道偏好等兩個經驗指標
根據業務經驗,信用卡額度使用率是一個衡量貸款意愿和提款金額的重要指標,定義為:額度使用率= 信用卡當前還款期內賬單額/當前信用卡額度,并構造三個月、六個月額度使用偏離度指標。同時,設置ATM渠道偏好指標,定義為:六個月通過ATM取款或者轉出數額總數/六個月賬戶取款或者轉出數值總數。
3.3.數據變換
3.3.1.CART決策樹分箱
在對變量進行了篩選和重新構造后,我們對連續變量進行了基于決策樹的變量分箱處理。CART是二叉樹分類算法,每次僅進行二元分類。對于連續性變量,方法是:依次計算相鄰兩元素值的中位數,將數據集一分為二,計算該點作為切割點時,分割前后,基尼值的下降程度。每次切分時,選擇基尼值下降程度最大的點為最優切分點,再將切分后的數據集按同樣原則切分,直至終止條件。
其中,我們將最大分級限定為12級,同時,一個葉節點所需的最小樣本數定為5%,防止在分箱階段出現過擬合。
3.4.變量選擇
3.4.1.依據相關系數粗篩變量
我們依據變量與分析目標的相關性,對變量進行進一步的篩選。其中,除了本身包含字符型數據的分類變量外,我們將值域小于等于20的變量全部視為離散型變量,其他則視為連續變量。對于連續變量,使用方差分析(ANOVA)篩選出顯著變量,其中顯著性水平設為5%。對于離散變量,使用列聯分析方法,同樣以顯著性水平5%為標準。最終,共篩選出50條連續變量與 13條離散變量。
3.4.2.IV值篩選
IV定義:IV值(Information Value),即信息價值指標,衡量了某個特征對目標的影響程度,其基本思想是根據該特征所命中黑白樣本的比率與總黑白樣本的比率,來對比和計算其關聯程度,計算公式如下:
通過計算我們篩選出IV值大于0.02的變量進入模型,生成的部分IV值如下表所示。
3.4.3.變量聚類
從全部的相關系數矩陣中可以看出,目前變量之間依然存在較強相關性,可能導致模型出現多重共線性問題。因此,通過變量聚類算法,篩選最終進入模型的變量特征,篩選原則為:
4.個人貸款營銷響應預測模型
4.1.GBDT+LR模型的設計與訓練
4.1.1.模型設計思路
根據業務經驗分析:
首先,客戶是否貸款與客戶是否具有資金需求有著直接的關系,所以針對響應客戶(response = 1),對其相關信息建模可以得到客戶的貸款傾向概率;
其次,建模的目的是為了最大化響應客戶人數或者金額。對樣本數據的響應客戶進行分析,我們發現,采取不同的營銷渠道,客戶的貸款金額沒有顯著差別。業務上來講,客戶的貸款金額應該與客戶本身的資金需求量有關,而與客戶獲取貸款信息的渠道無顯著相關性。因此貸款金額最大化問題的求解可等效轉化為貸款人數最大化問題的求解,即響應客戶數量的最大化。
營銷渠道的選擇決定了貸款信息能否發送至客戶,而營銷數據能否觸達客戶對于營銷成功率有著顯著影響。但是,之前的營銷活動是隨機選擇營銷渠道,沒有考慮到不同客戶的渠道偏好。例如,對于一些客戶,電話營銷往往會被當作電信詐騙直接掛掉,于是耗費了大量成本但是沒有產生收益;而對于一些老年客戶,郵件發送往往根本無法觸及,諸如此類。通過不同營銷渠道向客戶傳遞貸款信息,客戶的選擇可能截然不同,因此確定合適的營銷渠道也是至關重要的。但是,目前的數據中,單個客戶僅有一種營銷渠道,若該渠道無法觸及客戶,我們無從確定更換另兩種營銷渠道,客戶的響應情況是否有所變化。
于是,我們的模型將分為兩大部分來進行:首先根據原始數據的營銷渠道(電話、短信、email)將數據分成三個部分,在第一層模型,根據是否觸達(contact_ind)變量對三組數據分別訓練,形成三個不同渠道下的客戶觸達模型;隨后,在第二層模型通過對客戶響應情況(response)與相關信息建模分析,得到三組客戶相應模型;最后,對全量客戶數據分別使用這三個模型,以確定客戶的最大響應概率。
于是,我們得到了三組模型,每一組模型即為客戶在該營銷渠道的響應概率。隨后,我們將全部數據分別帶入這三組模型,最終可以得到全部客戶在所有渠道的響應概率。客戶的最高響應概率所對應的模型即為應采用的營銷渠道,最終達到全局最優解。
因此,此模型結構的實質其實是三個以一個GBDT模型作為某重要變量數據生成器的GBDT+LR雙層結構模型。同時,該模型會根據營銷渠道的不同進行三類并行計算,以輸出概率最大的模型作為渠道選擇的依據。具體模型結構如下圖所示:
4.1.2.關于GBDT+LR
本質上GBDT+LR是一種具有stacking思想的二分類器模型,因此可以用來解決二分類問題。這個方法出自于Facebook 2014年的論文 Practical Lessons from Predicting Clicks on Ads at Facebook。綜合使用GBDT與Logist模型,既提高了模型的精準度,又兼顧了模型的解釋性,Logist模型也可以控制GBDT的過擬合傾向。具體結構見圖:
在本文的模型設計中,一共三組33個變量作為第一層模型的輸入,通過sklearn.preprocessing模塊的OneHotEncoder進行定性特征值數量為50的轉化后,可將特征進一步提升到1600維用于分類。
4.1.3.模型效果
模型訓練結果的驗證是基于占全部數據20%的測試數據集進行的。效果評判標準包括ROC曲線、AUC(ROC曲線下方面積)以及正類F1得分。
(1)模型參數調優
為進一步挖掘模型的潛力,本文使用GridSearchCV,根據貪婪算法,進行具備最優化調優。通過參數配置分別對GBDT模型、LR模型、雙層混合模型進行了性能調優,。
在GBDT樹模型算法中,影響模型性能較大的參數主要有MAX_DEPTH、N_ESTIMATORS、max_features等。其中max_depth是指每棵的最大深度,n_estimators是指在GBDT中創建決策樹的個數,learn_rate指每次學習的步長,通常與n_estimators共同調整,max_features是指每棵樹所能使用特征的最大個數。因此,模型在以下參數范圍內進行參數搜索,以找到使模型在訓練集上表現最優的參數組合。
在邏輯回歸模型的調優過程中,我們允許模型的class_weight參數在None默認值與balanced之間進行調整,允許模型在是否調整分類權重間進行選擇,用以降低樣本失衡的影響;允許模型通過solver參數選擇包括'newton-cg','lbfgs','sag','liblinear'在內的更多優化算法進行擬合。
4.1.4.模型穩定性和模型選擇
經過參數調優之后,我們將模型分別應用到驗證數據集上用以最終確定流失預警模型的選擇。在驗證集中,AUC與訓練集相差不到0.01,模型表現出了極大的穩定性。
通過比較各模型在ROC曲線,AUC指標和正類F1分值的表現,我們發現雙層混合模型在各項指標中都居于首位。不僅如此,通過分析正類識別精準度和召回率,我們不難發現GBDT模型在歷次測試中表現出較好的正類識別精準度,但是在正類召回率上表現上相對保守。與GBDT相比,LR模型在正類召回率方面的表現更好。經驗證,雙層混合模型較好地結合了邏輯回歸與決策樹模型的優點,表現出較好的識別效果和穩定的性能,因此最終被確定為客戶響應預測模型。
4.2.新營銷活動設計與評估
通過模型輸出的輸出結果:客戶編號,三個渠道的響應概率P1P2P3,可以確定多個不同的最優化目標:第一種,最大化客戶響應概率,使得響應客戶的期望最大;第二種,在每個客戶只能選擇一種營銷渠道的情況下,選擇每個客戶的最大概率,覆蓋最多的客戶。以下分別討論這兩種營銷策略:
4.2.1.客戶響應期望最大化
在這種情況下,允許使用多種渠道覆蓋同一個用戶,力求達到客戶的響應概率的最大化。約束條件如下圖所示:
在具體的營銷執行的步驟中,可以對三種渠道按照E-MAIL、短信、電話的順序分別部署,即先部署EMAIL渠道,若客戶響應,且客戶同時存在于后續的營銷渠道名單中,則將客戶剔除。一方面可以節約營銷成本,同時避免對客戶的過度打擾。
4.2.2.客戶最大概率渠道選擇
在這種情況下,同一個用戶只使用一種營銷渠道,因此,對客戶在全部三種營銷渠道的響應概率排序,選擇其中最大的作為此客戶的營銷渠道。同時,約束條件如下圖所示:
5.結束語
與原始營銷活動相比,原始活動共消耗營銷費用3.39萬元,成功營銷客戶4306人,成功客戶單客成本7.9元。根據模型預測,使用新的營銷策略,第一方案客戶響應期望6071人,覆蓋客戶20870人,派發信息37872人次,單客獲客成本1.6元。與原始方案相比,新的營銷活動的獲客成本預計將降至原來的1/5左右,活動效率大大提升。
參考文獻:
[1]李墦.銀行數據挖掘的運用及效用研究[D]武漢大學,2012
[2]柳楊亮.基于客戶交易行為的事件式精準營銷在交通銀行零售板塊中的應用研究[D]華東理工大學,2013
[3]王文賢,金陽,陳道斌.基于RFM模型的個人客戶忠誠度研究[J]金融論壇,2012
[4]蔚趙春,凌鴻.商業銀行大數據應用的理論、實踐與影響[J]上海金融,2013
[5]劉濤.建設銀行棗莊分行精準營銷系統設計與優化[D]天津大學,2012
[6]陳春安.零售大數據在商業銀行的應用分析[D].西南財經大學,2016