決策樹算法之C5.0


C5.0是對ID3算法的改進。

 1.引入了分支度Information Value的概念。

  

 

     C5.0是用哪個信息增益率作為判斷優先划分屬性的。

    信息增益率其實就是在信息增益   除了 分支度。分支度的計算公式如上,就是指,若某划分屬性S將樣本T划分成n個子集T1,T2,...Tn,則此屬性S的分支度就等於:每個分支子集Ti的個數ci, 出於樣本總個數t,然后再乘以log2ci/t,然后再把各個分支的計算值加起來。

     

 

 2. C5.0和C4.5可以處理數值型數據,處理方式如下圖:

  

 

 

  核心思想:將數值從小到大排序,對每兩個數值間進行試探切割,算出Gain Ratio,找到最大的那個切割Gain Ratio,進行切割離散化。

 

 

3.剪枝

  C4.5和C5,要對決策樹進行剪枝,剪枝的目的是為了避免過擬合問題。

  這兩種算法的剪枝方法是Bottom-Up從下往上剪枝,也就是說,先利用訓練集把決策樹建好。然后從下往上砍樹。

  剪枝方法:

    對於每一個分支b1,b2,b3等,根據b1里面的數據數量S(b1),以及里面的Y的數量6,和N數量0,利用一個很復雜的統計學公式可以計算出該節點的“預期錯誤率U25%(6,0)”

    每個分支的預期錯誤值Ei = 分支里面的總個數S(bi)*U25%,最后將所有的分支b1,b2,b3...的錯誤值加起來,就得到錯誤值之和Eb。

    

    再然后,假如,b1,b2,b3三個分支的總的Y的數量假如為15Y,總的N的數量為1N。如果將B子樹砍掉,則在a1分支之后就有 15Y,1N,同樣可以計算此a1節點,不做往下分支的錯誤值為:Ea1 = 16*U25%

    剪枝的判斷依據:如果Ea1>Eb,不剪枝;如果Ea1<Eb,剪枝。

 

         (圖片來自:經管之家CDA)

 


免責聲明!

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



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