決策樹是一種樹結構,可用於分類和迴歸,屬於有監督無參數學習方法。基於信息學理論中熵的概念,決策樹的經典算法有ID3、C4.5、Cart等算法。這裏只記錄算法原理,其他的不會贅述。
基本公式
名稱 | 公式 |
---|---|
基尼係數 | |
熵 | |
條件熵 | |
信息增益 | |
樣本屬性值的信息量 | |
信息增益率 |
ID3算法
ID3算法的核心是在決策樹各級節點上選擇屬性時,用信息增益衡量不純度,使得在每一個非節點進行測試時能獲得關於被測試記錄最大的類別信息。
ID3原理
ID3特點
優點:ID3算法理論清晰,方法簡單,學習能力強。
不足之處:信息增益計算依賴特徵數目較多的特徵,但屬性取值多的屬性不一定最優;是非遞增算法;是單變量決策樹;抗噪性差。
C4.5算法
C4.5的核心與ID3算法一樣,不同的是衡量不純度的指標採用信息增益率。
C4.5特點
優點:分類規則易於理解,準確率較高。
不足之處:構造樹的過程中,需要對數據集進行多次掃描排序,效率低。
CART算法
CART與前兩個算法不同,它衡量不純度的指標是基尼係數。CART預測變量量 的類型既可以是連續型變量量也可以是分類型變量量數據應以其原始形式處理,不不需要離散化⽤用於數值型預測時,並沒有使用迴歸,而是基於到達葉結點的案例例的平均值做出預測。
二叉遞歸劃分:條件成立向左,反之向右。對於連續變量:條件是屬性⼩於等於最優分裂點;對於分類變量量:條件是屬性屬於若干類。相⽐多路路分裂導致數據碎片化的速度慢,允許在一個屬性上重複分裂,即可以在一個屬性上產生⾜足夠多的的分裂。兩路分裂帶來的樹預測性能提升足以彌補其相應的樹易讀性損失。
CART算法的流程:
CART特點
優點:變量可以是離散也可是數值,效率高,可以迴歸分析也可以分類。
不足之處:對連續性的字段比較難預測;對有時間順序的數據,需要很多預處理的工作;當類別太多時,錯誤可能就會增加的比較快;一般的算法分類的時候,只是根據一個字段來分類。