決策樹知識總結


決策樹筆記整理

 

算法原理

決策樹是一種簡單但是被廣泛使用的分類器。通過訓練數據構建決策樹,可以高效的對未知的數據進行分類。它有兩個有點:(1)決策樹模型可讀性好,具有描述性,有助於人工分析;(2)效率高,決策樹只需要一次構建,反復使用,每一次預測的最大計算次數不超過決策樹的深度。

構建決策樹的基本步驟

1.開始,將所有記錄堪稱一個節點 2.遍歷記錄的每種分割方式,找到最好的分割點 3.分割成兩個節點N1和N2 4.對N1和N2繼續執行2-3步,直到每個節點夠純

分割點的判斷標准

如果一個分割點可以將當前所有的酒分為兩類,使得每一類都很純,即同一類的記錄較多就是一個好的分割點。一般找分割后純度增益最大分割點。

量化純度

以上講到,決策樹的分支是根據純度大小來構建的,下面介紹三中純度的計算方法。如果一個問題的總記錄被分為n類,第i類所占總數比例大小為:P(i) = 第i類記錄數目/總記錄數。

Gini不純度

熵 

錯誤率

停止條件

決策樹構建過程是一個遞歸過程,比較常見的停止條件是每個節點只有一種類型記錄,但往往會導致節點過多,導致過擬合問題。比較好的方法是節點中的記錄數低於某個閾值就停止分割,將該節點下最多類型的記錄當做當前節點的分類。

 

過擬合問題

采用上面算法生成的決策樹在事件中往往會導致過濾擬合。也就是該決策樹對訓練數據可以得到很低的錯誤率,但是運用到測試數據上卻得到非常高的錯誤率。過渡擬合的原因有以下幾點:

(1)噪音數據:訓練數據中存在噪音數據,決策樹的某些節點有噪音數據作為分割標准,導致決策樹無法代表真實數據。

(2)缺少代表性數據:訓練數據沒有包含所有具有代表性的數據,導致某一類數據無法很好的匹配,這一點可以通過觀察混淆矩陣(Confusion Matrix)分析得出。

(3)多重比較(Mulitple Comparition):舉個列子,股票分析師預測股票漲或跌。假設分析師都是靠隨機猜測,也就是他們正確的概率是0.5。每一個人預測10次,那么預測正確的次數在8次或8次以上的概率為 image,只有5%左右,比較低。但是如果50個分析師,每個人預測10次,選擇至少一個人得到8次或以上的人作為代表,那么概率為 image,概率十分大,隨着分析師人數的增加,概率無限接近1。但是,選出來的分析師其實是打醬油的,他對未來的預測不能做任何保證。上面這個例子就是多重比較。這一情況和決策樹選取分割點類似,需要在每個變量的每一個值中選取一個作為分割的代表,所以選出一個噪音分割標准的概率是很大的。

 

優化方法

剪枝

決策樹過渡擬合往往是因為太過“茂盛”,也就是節點過多,所以需要裁剪(Prune Tree)枝葉。裁剪枝葉的策略對決策樹正確率的影響很大。主要有兩種裁剪策略。

預剪枝

在構建決策樹的過程時,提前停止。那么,會將切分節點的條件設置的很苛刻,導致決策樹很短小。結果就是決策樹無法達到最優。實踐證明這中策略無法得到較好的結果。

后剪枝

決策樹構建好后,然后才開始裁剪。采用兩種方法:1)用單一葉節點代替整個子樹,葉節點的分類采用子樹中最主要的分類;2)將一個字數完全替代另外一顆子樹。后置裁剪有個問題就是計算效率,有些節點計算后就被裁剪了,導致有點浪費。

隨機森林

是用訓練數據隨機的計算出許多決策樹,形成了一個森林。然后用這個森林對未知數據進行預測,選取投票最多的分類。實踐證明,此算法的錯誤率得到了經一步的降低。這種方法背后的原理可以用“三個臭皮匠定一個諸葛亮”這句諺語來概括。一顆樹預測正確的概率可能不高,但是集體預測正確的概率卻很高。


免責聲明!

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



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