決策樹算法簡單總結


·來自:https://mp.weixin.qq.com/s/tevVm0jlS6vZ3LCnczWD0w

前言

李航老師《統計學習方法》詳細的描述了決策樹的生成和剪枝。根據書的內容,做總結如下。

 

目錄

  1. 決策樹不確定性的度量方法
  2. 決策樹的特征篩選准則
  3. 決策函數的損失函數評估
  4. 決策樹最優模型的構建步驟
  5. 決策樹的優缺點分析

 

a. 決策樹不確定性的度量方法

 

1. 不確定性理解

下圖為事件A是否發生的概率分布,事件發生記為1,討論事件A的不確定性。

 

(1)一種極端情況,若p=1或p=0,表示為事件A必定發生或事件A不可能發生。

(2)若p>1/2,即事件A發生的概率大於事件A不發生的概率,我們傾向於預測事件A是發生的;若 p<1/2,即事件A不發生的概率小於事件A發生的概率,我們傾向於預測事件A是不發生的;若 p=1/2,即事件A發生的概率等於事件A不發生的概率,我們無法作出預測。

 

2. 決策樹不確定性的度量方法

這里用熵和基尼指數去衡量數據集的不確定性,假設數據集包含K類,每個類的大小和比例分別為Di和pi,i = 1,2,...,k。

(1)熵的不確定性度量方法

信息論和概率統計中,熵是表示隨機變量不確定性的度量,令熵為H(p),則:

熵越大,數據集的不確定性就越大。

(2)基尼指數的不確定度量方法

數據集的基尼指數定義為:

基尼指數越大,數據集不確定性越大。

 

b. 決策樹特征篩選准則

 

假設數據集A共有K個特征,記為xi,i = 1,2,...,K。數據集A的不確定性越大,則數據集A包含的信息越多。假設數據集A的信息為H(A),經過特征xi篩選后的信息為H(A|xi),定義信息增益g(A, xi)為兩者的差值,即:

g(A, xi) = H(A) - H(A|xi)

選擇使數據集A信息增益最大的特征作為決策樹當前節點,數學表示為:

x = max( g(A,xi) ) = max( H(A) - H(A|xi) )

 

C. 決策樹的損失函數評估

 

令決策樹的葉節點數為T,損失函數為:

其中C(T)為決策樹的訓練誤差,決策樹模型用不確定性表示,不確定性越大,則訓練誤差亦越大。T表示決策樹的復雜度懲罰α參數權衡訓練數據的訓練誤差與模型復雜度的關系,意義相當於正則化參數。

考慮極端情況:當α趨於0的時候,最優決策樹模型的訓練誤差接近 0,模型處於過擬合;當α趨於無窮大的時候,最優決策樹模型是由根節點組成的單節點樹。

 

d. 決策樹最優模型的構建步驟

 

將數據集A通過一定的比例划分為訓練集和測試集。

決策樹的損失函數:

決策樹最優模型的構建步驟包括訓練階段和測試階段:

訓練階段:

(1)最小化決策樹的不確定性值得到的生成模型,即決策樹生成

(2)通過決策樹剪枝,得到不同的正則化參數α下的最優決策樹模型,即決策樹剪枝

 下面重點討論訓練階段的決策樹生成步驟和決策樹剪枝步驟。

決策樹生成步驟:

(1) 根據決策樹的特征篩選准則,選擇數據集信息增益最大的特征;

(2) 重復第一個步驟,直到所有葉節點的不確定性為0 。

決策樹剪枝步驟:

(1)將正則化參數α從小到大分成不同的區間

 

 

e. 決策樹優缺點

優點:模型很強的解釋性

缺點:容易過擬合。即訓練誤差很小,測試誤差很大。為避免過擬合,使用時結合集成算法。如:bagging算法、boosting算法。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM