决策树简介与入门
決策樹表示對象屬性(比如貸款用戶的年齡、是否有工作、是否有房產(chǎn)、信用評分等)和對象類別(是否批準其貸款申請)之間的一種映射。使用層層推理來實現(xiàn)最終的分類。
? 根節(jié)點:包含樣本的全集
? 內(nèi)部節(jié)點:對應(yīng)特征屬性測試
? 葉節(jié)點:代表決策的結(jié)果
預(yù)測時,在樹的內(nèi)部節(jié)點處用某一屬性值進行判斷,根據(jù)判斷結(jié)果決定進入哪個分支節(jié)點,直到到達葉節(jié)點處,得到分類結(jié)果。
這是一種基于 if-then-else 規(guī)則的有監(jiān)督學習算法,決策樹的這些規(guī)則通過訓練得到,而不是人工制定的。
決策樹是最簡單的機器學習算法,它易于實現(xiàn),可解釋性強,完全符合人類的直觀思維,有著廣泛的應(yīng)用。
決策樹學習的三個步驟
一、特征選擇
特征選擇決定了使用哪些特征來做判斷。在訓練數(shù)據(jù)集中,每個樣本的屬性可能有很多個,不同屬性的作用有大有小。因而特征選擇的作用就是篩選出跟分類結(jié)果相關(guān)性較高的特征,也就是分類能力較強的特征。
在特征選擇中通常使用的準則是:信息增益
二、決策樹生成
選擇好特征后,就從根節(jié)點出發(fā),對節(jié)點計算所有特征的信息增益,選擇信息增益最大的特征作為節(jié)點特征,根據(jù)該特征的不同取值建立子節(jié)點;對每個子節(jié)點使用相同的方式生成新的子節(jié)點,直到信息增益很小或者沒有特征可以選擇為止。
三、決策樹剪枝
剪枝的主要目的是對抗過擬合(模型的泛化能力差),通過主動去掉部分分支來降低過擬合的風險。
三種典型的決策樹算法:ID3、C4.5、CART
ID3:最早提出的決策樹算法,利用信息增益來選擇特征
C4.5:ID3的改進版,不是直接使用信息增益,而是引入“信息增益比”指標作為特征的選擇依據(jù)
CART:可用于分類,也可用于回歸問題。使用基尼系數(shù)取代了信息熵模型。
關(guān)于信息增益(Information Gain):
信息熵表示的是不確定性。非均勻分布時,不確定性最大,此時熵就最大。當選擇某個特征,對數(shù)據(jù)集進行分類時,分類后的數(shù)據(jù)集的信息熵會比分類之前小,其差值表示為信息增益。信息增益可以衡量某個特征對分類結(jié)果的影響大小。
對于一個數(shù)據(jù)集,特征A作用之前的信息熵計算公式為:
式中,D為訓練數(shù)據(jù)集;c 為類別數(shù)量;P_i 為類別 i 樣本數(shù)量占所有樣本的比例。對應(yīng)數(shù)據(jù)集 D,選擇特征 A 作為決策樹判斷節(jié)點時,在特征 A 作用后的信息熵為 InfoA (D) (特征 A 作用后的信息熵計算公式),計算如下:
式中,k 為樣本 D 被分為 k 個子集。
總結(jié)
- 上一篇: 利用子网掩码划分子网
- 下一篇: MFC多视图与重绘效率