1. 程式人生 > >機器學習筆記(四)——決策樹如何長成森林?

機器學習筆記(四)——決策樹如何長成森林?

決策樹是一種基本的分類與迴歸方法,在整合方法中經常作為基礎分類器,比如說隨機森林演算法。決策樹模型具有可讀性和分類速度快兩大特點,但是也容易造成過擬合的問題。一般來說,決策樹演算法通常包括3個步驟: 特徵選擇、決策樹的生成和決策樹的修剪!

一、特徵選擇

當我們使用決策樹演算法對資料進行分類時,我們面臨的第一個問題就是 : 我們在哪個特徵上進行資料分類劃分得到的收益最大? 因此,我們需要工具來定量地評價在不同特徵上進行劃分資料時各自的效益。

1.1 資訊增益

: 在資訊與概率統計中,熵代表隨機變數不確定的度量。
X

X 是一個取有限個值得離散隨機變數,則其概率分佈位: P ( X = x i
) = p i , i = 1 ,
2 , 3..... , n P(X = x_i) = p_i , i = 1,2,3.....,n
則隨機變數 X X 的熵為: H ( X ) = i = 1 n p i l o g p i H(X) = -\sum_{i=1}^{n} p_i log p_i 熵的值越大,隨機變數的不確定性越大。

條件熵 : 隨機變數 X X 在給定的條件下隨機變數 Y Y 的條件熵 H ( Y X ) H(Y|X) ,定義為 X X 在給定條件 Y Y 下的條件概率分佈的熵對 X X 的數學期望: H ( Y X ) = i = 1 n p i H ( Y X = x i ) = i = 1 n P ( X = x i ) H ( Y X = x i ) , i = 1 , 2 , 3.... , n H(Y|X) = \sum_{i=1}^{n}p_iH(Y|X=x_i) = \sum_{i=1}^{n} P(X=x_i)H(Y|X=x_i) , i = 1,2,3....,n

資訊增益: 特徵A對訓練資料集的資訊增益 g ( D , A ) g(D,A) , 定義為資料集D的熵與特徵A給定條件下的條件熵之差,即: g ( D , A ) = H ( D ) H ( D A ) g(D,A) = H(D) - H(D|A) 資訊增益越大的特徵具有更強的分類特徵。

在以資訊增益為劃分資料集的特徵的依據時,存在偏向選擇取值較多的特徵的問題,因此,可以使用資訊增益比對其進行校正。

資訊增益比:特徵A對訓練資料集的資訊增益比 g R ( D , A ) g_R(D,A) 定義為其資訊增益與訓練資料集D關於特徵A的值的熵 H A ( D ) H_A(D) 之比,即: g R ( D , A ) = g ( D , A ) H A ( D ) g_R(D,A) = \frac{g(D,A)}{H_A(D)} 其中 H A ( D ) = i = 1 n D i D l o g 2 D i D H_A(D) = - \sum_{i=1}^{n} \frac{D_i}{ D} log_2 \frac{D_i}{D} , n n 是特徵A的取值個數, D i D_i 是指資料集中 A = A i A = A_i 的資料的個數

1.2 基尼指數

在分類樹中,不僅僅可以通過是使用資訊增益或者資訊增益比來決定資料集中的最優劃分特徵,也可以通過基尼指數來選擇最優特徵。

基尼指數: 分類問題中,假設資料集D中有 K K 個類,樣本點屬於第k個類的概率為 p k p_k ,則該資料集D的基尼指數定義為: G i n i ( p ) = k = 1 K p k ( 1 p k ) = 1 k = 1 K p k 2 Gini(p) = \sum_{k=1}^{K} p_k(1-p_k) = 1 - \sum_{k=1}^{K}p_k^2 即: G i n i ( D ) = 1 k = 1 K ( C k D ) 2 Gini(D) = 1 - \sum_{k=1}^{K}(\frac{C_k}{D})^2 其中, C k C_k 是指資料集D中屬於第k類的樣本子集,K是類的個數。
G i n i ( D ) Gini(D)