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