決策樹(Decision Tree)在機器學習中也是比較常見的一種算法,最早的決策樹算法是ID3,改善后得到了C4.5算法,進一步改進后形成了我們現(xiàn)在使用的C5.0算法,綜合性能大幅提高。
算法核心:為每一次分裂確定一個分裂屬性。ID3采用的是“信息增益”為度量來選擇分裂屬性的。
本文在Excel中建模進行決策樹分析,屬于基礎的決策樹學習,有興趣的可以在SPSS Modeler和Python中進行操作。
樹模型(又稱決策樹或者樹結(jié)構(gòu)模型):基本思想和方差分析中的變異分解極為相似。
目的(基本原則):將總研究樣本通過某些牲(自變量取值)分成數(shù)個相對同質(zhì)的子樣本。每一子樣本因變量的取值高度一致,相應的變異/雜質(zhì)盡量落在不同子樣本間。所有樹模型的算法都遵循這一基本原則。
不同樹模型差異:差異在于對變異/雜質(zhì)的定義不同。比如P值、方差、熵、Gini指數(shù)(基尼指數(shù))、Deviance等作為測量指標。
決策樹圖例
現(xiàn)在我們來分析天氣、溫度、濕度、風這些屬性對打球的影響
首先確定樣本集信息熵,然后計算各個屬性的信息增益進行對比分析。
熵:數(shù)據(jù)集中的不確定性、突發(fā)性或隨機性的程度的度量。當一個數(shù)據(jù)集中的記錄全部都屬于同一類的時候,則沒有不確定性,此時熵為0。
信息增益:按照某個屬性A把數(shù)據(jù)集S分裂,所得到的信息增益等于數(shù)據(jù)集S的熵減去各個子集的熵的加權(quán)和。
計算是否打球的概率:
計算天氣對打球的影響:
I(晴天)=-0.25*log(0.25,2)-0.75*log(0.75,2)=0.811278
E(天氣)=0.285714*0.811278+0.357143*0+0.357143*0.70951=0.578562
Gain(天氣)=E(all)-E(天氣)=0.940286-0.578562=0.361724
經(jīng)計算得出天氣的信息增益為0.361724,溫度、濕度和風計算步驟類似
對各屬性的信息增益進行降序排序,選擇最大的作為分裂屬性
聯(lián)系客服