《統計學習方法》 讀書筆記 第五章
第五章 決策樹
概述
1.可以認為是if-then的集合,也可以認為是定義在特徵空間與類空間上的條件概率分佈。
2.主要優點是模型具有可讀性,分類速度快。
3.包括三個步驟:特徵選擇、決策樹的生成和決策樹的修剪。
5.1 決策樹模型與學習
決策樹的損失函式通常是正則化的極大似然函式。
現實中決策樹演算法通常採用啟發式方法,近似求解這一最優化問題,這樣得到的決策樹是次最優的
決策時常用的演算法有ID3、C4.5與CART。
5.2 特徵選擇
特徵選擇在於選取對訓練資料具有分類能力的特徵,可以提高決策樹學習的效率。
通常特徵選擇的準則是資訊增益或資訊增益比。
資訊增益
熵表示隨機變數不確定性的度量。隨機變數X熵的定義為
若p=0,則定義0log0 = 0。當式中的對數以2為底或以e為底,這時熵的單位分別稱為位元或者納特。
當隨機變數只取兩個值,例如1或0,即X的分佈為:
熵為:
當p=0或p=1時H(p)=0,隨機變數完全沒有不確定性,當p=0.5時,H(p)=1,熵取值最大,隨機變數不確定性最大。
條件熵H(Y|X)表示在X條件下Y的不確定性:
當熵和條件熵中的概率由資料估計(特別是極大似然估計)得到時,所對應的熵與條件概率分別稱為經驗熵和經驗條件熵。
資訊增益表示得知特徵X的資訊而使類Y的資訊的不確定性減少的程度
定義5.2 (資訊增益) 特徵A對訓練集D的資訊增益g(D,A),定義為集合D的經驗熵H(D),與特徵A給定條件下D的經驗條件熵H(D|A)之差,即
一般的,熵H(Y)與條件熵的差稱為互資訊。資訊增益等價於互資訊。
根據資訊增益準則的特徵選擇方法是,對訓練資料集D,計算其每個特徵的資訊增益,並比較它們的大小,選擇資訊增益最大的特徵。
資訊增益比
特徵A對訓練資料集D的資訊增益比定義為其資訊增益g(D,A)與訓練資料集D關於特徵A的值的熵
之比,即
5.3 決策樹的生成
ID3演算法
ID3演算法的核心是在決策樹的各個結點用資訊增益準則選擇特徵,遞迴的構建決策樹。具體方法是:從根節點開始,對結點計算所有可能特徵的資訊增益,選取資訊增益最大的特徵作為結點的特徵,由該特徵的不同取值建立子結點;再對子結點遞迴的呼叫以上方法,構建決策樹。直到所有的特徵的資訊增益均很小或沒有特徵可以選擇為止。
ID3演算法主要用來處理離散性問題,不適合用於處理連續性問題。
演算法 (ID3 演算法)
輸入:訓練資料集D,特徵集A,閾值;
輸出:決策樹T
(1)若D中所有例項屬於同一類C,則T為單結點樹,並將C作為該結點的類標記,返回T;
(2)若A是空集,則T為單結點樹,並將D中例項數最大的類C作為該結點的類標記,返回T;
(3)否則,計算A中各特徵對D的資訊增益,選擇資訊增益最大的特徵。
(4)如果所選擇的特徵的資訊增益小於閾值,則T為單結點樹,並將D中例項數最大的類作為該結點的類標記,返回T;
(5)否則,對所選特徵的每一個可能值a,依據A=a將D分割為若干非空子集,將中例項數最大的類作為標記,構建子結點,由結點及其子結點構成樹T,返回T;
(6)對第i個子結點,以為訓練集,以除去已用特徵外的其他特徵作為特徵集,遞迴的呼叫(1)~(5)的過程,得到子樹並返回。
C4.5的生成演算法
C4.5演算法與ID3演算法相似,只不過用資訊增益比代替資訊增益來選擇特徵。
5.4 決策樹的剪枝
如果不進行樹的剪枝操作,決策樹可能過於複雜,泛化能力差,即出現過擬合。具體的,剪枝過程是從已生成的樹上裁掉一些子樹或者葉結點,並將其根結點或父結點作為新的葉結點。
決策樹的剪枝往往通過最小化決策樹整體的損失函式值來進行的。假設有T個結點,t是樹T的葉結點,葉結點上有個樣本點,其中k類的樣本點有個,k=1,2,3,…,K,決策樹學習的損失函式可以定義為:
其中經驗熵為: