決策樹的生成與剪枝

2021-10-02 07:47:14 字數 1361 閱讀 8789

樹模型描述:

從根節點開始,使用某種特徵選取準則,如資訊增益,選取剩餘特徵作為節點,樹不一定是二叉樹,每一層的節點個數為父節點特徵的distinct數,每個節點對應的樣本數小於父節點對應的樣本數,當節點特徵對應的資訊增益小於某個值或者沒有剩餘特徵時,選擇該節點對應樣本中最大的類別作為葉節點,停止這個分支的構建。

例題:

參考《統計學習方法》李航 例5.3

損失函式:

一棵構建完成的樹,其損失函式定義為:

t為葉節點,h為對應葉節點上的經驗熵,越小越好,k為該葉節點對應樣本集中的類別數:

所以,這個損失函式c形式上與經典線性回歸的形式一樣,由誤差和複雜度(葉節點數量)組成,使他們兩個都盡可能小,其優化方式不能按傳統線性回歸來優化,這裡介紹剪枝法優化。

剪枝:

考慮一組葉節點回退之前和之後的整體樹的損失值,c(before)和c(after),若剪枝後損失更小,則剪枝,重複這個過程。

回歸樹(二叉切分):

基本思想:

在剩餘的特徵變數中尋找最優的特徵和該特徵下的切分點,對資料集進行空間劃分,最後將輸入空間劃分為m個,每個空間下的最優輸出值y等於該空間樣本輸出的均值(求導可得)。

分類樹(二叉切分):

基本思想:

類似於經典樹模型的生成,區別在於選擇最優特徵時,還要考慮最優切分點(二叉切分資料),結束條件與經典樹模型類似。

分類樹與回歸樹的剪枝:

我們知道,每剪掉乙個分支,複雜度更小,引數a相對更大。對於一顆樹,設根節點為t。

t單節點的損失為:(每個節點對於一批樣本)

t樹的損失為:

a接近0時,c(t)小於c(t)(無複雜度約束),a為無窮大時,c(t)大於c(t)(複雜度降到最低,即單節點),中間必有使得兩者相等的a值,為:

剪枝過程為:

從下而上(層級),依次裁剪a最小的子樹,將剩餘樹依次標記為t0,t1,……,因為整體樹越裁剪複雜度越小,整體樹損失函式的a則越大,最後用交叉驗證從標記序列中選擇最優的樹t。

決策樹剪枝

剪枝是決策樹學習演算法中對付過擬合的主要手段,決策樹剪枝的基本策略有預剪枝和後剪枝 預剪枝 是指在決策樹生成過程中,對每個節點在劃分前先進行估計,若當前的劃分不能帶來泛化效能的提公升,則停止劃分,並將當前節點標記為葉節點 後剪枝 是指先從訓練集生成一顆完整的決策樹,然後自底向上對非葉節點進行考察,若...

決策樹的剪枝操作

決策樹 decision tree 在已知各種情況發生概率的基礎上,通過構成決策樹來求取淨現值的期望值大於等於零的概率,評價專案風險,判斷其可行性的決策分析方法,是直觀運用概率分析的一種 法。由於這種決策分支畫成圖形很像一棵樹的枝幹,故稱決策樹。擬合 所謂擬合是指已知某函式的若干離散函式值,通過調整...

決策樹的剪枝處理

剪枝是決策樹學習演算法解決過擬合的主要手段。在決策樹的學習過程中,為了盡可能地正確分類訓練樣本,節點劃分得不斷重複,有時候會造成決策樹的分支過多,這時候就是演算法在訓練樣本上學得太好,導致把訓練集本身的一些特點作為所有資料所有資料都有的一般性質 實際上新資料中可能沒有這些特點 從而導致過擬合。因此可...