決策樹J48算法


1、J48原理

  基於從上到下的策略,遞歸的分治策略,選擇某個屬性放置在根節點,為每個可能的屬性值產生一個分支,將實例分成多個子集,每個子集對應一個根節點的分支,然后在每個分支上遞歸地重復這個過程。當所有實例有相同的分類時,停止。

  問題:如何選擇根節點屬性,建立分支呢?

  例如:weather.arff

  我們希望得到的是純分裂,即分裂為純節點,希望找到一個屬性,它的一個節點全是yes,一個節點全是no,或許第三個節點又全是yes,這是最好的情況,因為如果是混合節點則需要再次分裂。

  通過量化來確定能產生最純子節點的屬性---計算純度(目標是得到最小的決策樹)。而自上而下的樹歸納法用到了一些啟發式方法---產生純節點的啟發法是以信息論為基礎的,即信息熵,以bits測量信息

  信息增益=分裂前分布的信息熵-分裂后分布的信息熵,選擇信息增益最大的屬性

  (分裂前分部信息熵)

  (分布后分布信息熵)

  (屬性A的信息增益)

  計算這四個屬性的信息增益,如下圖:

  

  經過計算得到outlook、windy、humidity、temperature的信息增益分別為0.247bits、0.048bits、0.152bits、0.029bits,所以選擇outlook為根節點。

  

  ........

2、舉例

 

  (1)所給數據如下圖  

       

(2)選擇根節點

  先求age的信息增益

  

  分裂前分布的信息熵:

  分裂后分布的信息熵:

              

  信息增益:

              

  類似地:

            

  比較得到選擇age為根節點,然后得到決策樹的第一層,如下圖:

  

  然后在每個分支上遞歸地重復這個過程,直到所有實例有相同的分類。

3、總結

  J48分類算法可信度高,建立的決策樹簡單易懂,並且結果非常容易理解。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM