銀行客戶流失預警(三) GBDT的應用

2021-10-08 13:54:21 字數 3373 閱讀 4874

要介紹gbdt之前,先介紹乙個基礎成員,決策樹。

決策樹是最簡單的機器學習演算法,它易於實現,可解釋性強,完全符合人類的直觀思維,有著廣泛的應用。其可作為分類演算法,也可用於回歸模型。

從名字可知,這是一棵樹,它是基於特徵構建一顆層層推理的樹,主要由根節點,內部結構和葉子節點組成。

 根節點:包含樣本的全集

 內部節點點:對應特徵屬性測試

 葉節點:代表決策的結果

實際**時,在內部節點使用某一屬性值判斷,根據判斷結果決定進入哪乙個分支,直到達到葉子節點,得到分類結果。

1. 特徵選擇

特徵選擇決定了首先使用哪些特徵做判斷,整個決策過程使用哪些特徵做判斷。

在訓練資料集中,每個樣本的屬性可能有很多個,不同屬性的作用有大有小。因而特徵選擇的作用就是篩選出跟分類結果相關性較高的特徵,也就是分類能力較強的特徵。

特徵選擇常用的基準是:資訊增益

2. 決策樹生成

選擇好特徵後,就從根節點出發,對節點計算所有特徵的資訊增益,選擇資訊增益最大的特徵作為節點特徵,根據該特徵的不同取值建立子節點;對每個子節點使用相同的方式生成新的子節點,直到資訊增益很小或者沒有特徵可以選擇為止。

3. 決策樹減枝

防止決策樹過擬合,主動剪掉一些枝葉降低過擬合風險

最早提出的演算法,利用資訊增益確定特徵選擇

2. c4.5

由於id3演算法的結果對可取值數目較多的特徵有所偏好,類似「編號」的特徵其資訊增益接近於 1,因此在此基礎上進行改進,不直接使用資訊增益,使用「資訊增益比」來確定特徵選擇,就是c4.5

3. cart

這種演算法即可以用於分類,也可以用於回歸問題。cart 演算法使用了基尼係數取代了資訊熵模型。

 決策樹易於理解和解釋,可以視覺化分析,容易提取出規則;

 可以同時處理標稱型和數值型資料;

 比較適合處理有缺失屬性的樣本;

 能夠處理不相關的特徵;

 測試資料集時,執行速度比較快;

 在相對短的時間內能夠對大型資料來源做出可行且效果良好的結果。

 容易發生過擬合(隨機森林可以很大程度上減少過擬合);

 容易忽略資料集中屬性的相互關聯;

 對於那些各類別樣本數量不一致的資料,在決策樹中,進行屬性劃分時,不同的判定準則會帶來不同的屬性選擇傾向;資訊增益準則對可取數目較多的屬性有所偏好(典型代表id3演算法),而增益率準則(cart)則對可取數目較少的屬性有所偏好,但cart進行屬性劃分時候不再簡單地直接利用增益率盡心劃分,而是採用一種啟發式規則)(只要是使用了資訊增益,都有這個缺點,如rf)。

 id3演算法計算資訊增益時結果偏向數值比較多的特徵。

決策樹只是一棵樹,一棵樹的決策結果總是容易產生偏差,於是在這個基礎上衍生出將多棵樹組合在一起的演算法,根據組合方式的不同,分為三種整合演算法:通過自助取樣的方法生成眾多並行的分類器,通過『少數服從多數『的原則確定最終結果

從同一樣本、同一指標集裡抽樣,每次抽樣都生成一棵簡單樹,可以並行建立,典型演算法:隨機森林:

隨機森林基於bagging思想,解決決策樹泛化的問題,決策樹是一棵樹,只有乙個 決策權,隨機森林是多棵樹,每棵樹都有乙個決策權,這樣把所有樹的結果綜合起來,這樣的分類能力,自然比單棵樹的結果好。所以隨機森林是基於這樣的思想去分類的。隨機森林的隨機主要體現在兩個方面,乙個是隨機選取樣本,乙個是隨機選取特徵。隨機森林是根據特徵構造多棵決策樹,那每棵樹是怎麼構造的呢?它從訓練樣本中隨機選取固定數量的樣本集,然後隨機選取固定數量的特徵,來構造決策樹,相當於樣本集和特徵集都是總樣本和總特徵中的子集。而且這個隨機選取是有放回地抽取過程。這樣每個決策樹都有乙個分類結果,根據少數服從多數的原則,得到最後的結果。這就是隨機森林演算法的核心內容。

將弱學習器提公升為強學習器的整合方法來提高**精度。模型建立有先後順序,後乙個模型是改進對前乙個模型分類錯誤的結果賦予更大的權重,典型演算法:gbdt,adaboos,xgboost。

舉乙個非常簡單的例子,比如我今年30歲了,但計算機或者模型提公升樹並不知道我今年多少歲,那提公升樹咋辦呢?

• 它會在第乙個弱分類器(或第一棵樹中)隨便用乙個年齡比如20歲來擬合,然後發現誤差有10歲(30-20=10歲);

• 接下來在第二棵樹中,用6歲去擬合剩下的損失,發現差距還有4歲(30-20-6=4歲);

• 接著在第三棵樹中用3歲擬合剩下的差距,發現差距只有1歲了(30-20-6-3=1歲);

• 最後在第四課樹中用1歲擬合剩下的殘差,完美(30-20-6-3-1=0歲)。

• 最終,將每次擬合的歲數加起來便是模型輸出的結果,也就是四棵樹的結論加起來的結果(20+6+3+1=30歲),就是真實年齡30歲

這就是提公升樹演算法過程,每一棵樹都去擬合前n棵樹綜合結果和真實值之間的誤差(即殘差),gbdt也是基於這樣乙個迭代的思想,但是gbdt演算法是提公升樹的一種改進演算法,每棵樹擬合的是前一棵樹的損失函式的負梯度(用負梯度去近似殘差),這也就要求每棵樹的損失函式,只要一階可導就行。

gbdt模型引數

1.gbdt框架的引數

2.弱分類樹的引數

分類器效能介紹:

分類器給出針對每個例項為正類的概率,比如設定乙個閾值如0.6,概率大於等於0.6,的為正類,小於0.6的為負類。對應的就可以算出一組(fpr,tpr)。每調整乙個閾值,都能得到一組(fpr,tpr)。

當閾值逐漸減小時,越來越多的樣本被分為正樣本,真陽率trp增加,但同時也會有很多負樣本被**錯誤為正樣本,所以偽陽率也會增加。因此閾值最小是,對應座標(1,1),閾值最大時,對應座標為(0,0)。

將所有的(tpr,fpr)在座標軸上的點連成線即可得到roc曲線,曲線和橫座標圍成的面積稱之為auc面積(area under curve)。曲線下的面積越大,分類效果越好。

銀行客戶經理系統

2 系統功能特點 1 客戶主體模型的建立與資訊積累 2 高效的客戶經理平台,一目了然的客戶經理操作檯面,直接提供客戶經理各種待辦工作和工作環境,可以按照優先順序設定 3 客戶價值評估與客戶綜合分類,建立利潤貢獻模型,客戶事件的各種成本與費用分攤模型實現賬戶級的價值度計算,通過可設定的指標體系,實現客...

聚類分析(銀行客戶畫像)

cda 11 聚類分析 客戶畫像 匯入資料 customer names customer customer1 names customer1 11.2 銀行客戶 k均值 層次聚類 names customer1 找到聚類數 pam演算法 pamkmd pamkmd nc layout matrix...

資料探勘的目的是什麼?看這個銀行客戶流失案例就知道

很多人估計還不清楚資料探勘的目的是什麼,其實資料探勘的兩大目的就是是 和描述資料,其中前者的計算機建模及實現過程通常被稱為監督學習 supervised learning 後者的則通常被稱為無監督學習 supervised learning 往更細分,資料探勘的目標可以劃分為以下這些 資料 性挖掘任...