日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

决策树准确率低原因_机器学习决策树算法--剪枝算法

發布時間:2025/3/20 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 决策树准确率低原因_机器学习决策树算法--剪枝算法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、剪枝算法決策樹生成算法遞歸地產生決策樹,直到不能繼續下去為止。這樣產生的樹往往對訓練數據的分類很準確,但對未知的測試數據的分類卻沒有那么準確,即出現過擬合現象。過擬合的原因在于學習時過多地考慮如何提高對訓練數據的正確分類,從而構建出過于復雜的決策樹。解決這個問題的辦法是考慮決策樹的復雜度,對已生成的決策樹進行簡化。

在決策樹學習中將已生成的樹進行簡化的過程稱為剪枝(Pruning)。具體地,剪枝從已生成的樹上裁掉一些子樹或葉結點,并將其根結點或父結點作為新的葉結點,從而簡化分類樹模型。

決策樹的剪枝往往通過極小化決策樹整體的損失函數(Loss Function)或代價函數(Cost Function)來實現。設樹的葉結點個數為||,t是樹的葉結點,該葉結點有個樣本點,其中k類的樣本點有個,=1,2,?,,()為葉結t點上的經驗熵,≥0為參數,則決策樹學習的損失函數可以定義為:

()=∑=1||()+||其中經驗熵為:

()=?∑log在損失函數中,記:

()=∑=1||()=?∑=1||∑=1log這時有:

()=()+||上式中,()表示模型對訓練數據的預測誤差,即模型與訓練數據的擬合程度,||表示模型復雜度,也稱正則項,參數>0控制兩者之間的影響。較大的促使選擇較簡單的模型(樹),較小的促使選擇較復雜的模型(樹)。=0意味著只考慮模型與訓練數據的擬合程度,不考慮模型的復雜度。

剪枝,就是當確定時,選擇損失函數最小的模型,即損失函數最小的子樹。當值確定時,子樹越大,往往與訓練數據的擬合越好,但是模型的復雜度就越髙;相反,子樹越小,模型的復雜度就越低,但是往往與訓練數據的擬合不好。損失函數正好表示了對兩者的平衡.

可以看出,決策樹生成只考慮了通過提高信息增益(或信息增益比)對訓練數據進行更好的擬合。而決策樹剪枝通過優化損失函數還考慮了減小模型復雜度。決策樹生成學習局部的模型,而決策樹剪枝學習整體的模型。

二、決策樹剪枝過程

樹的剪枝算法

? 輸入:生成算法產生的整個樹,參數:

? 輸出:修剪后的子樹。

? (1) 計算每個結點的經驗熵;

? (2) 遞歸地從樹的葉結點向上回縮。設一組葉結點回縮到其父結點之前與之后的整體樹分別為和,其對應的損失函數值分別是()與(),如果()?(),則進行剪枝,即將父結點變為新的葉結點。

? (3) 返回(2),直至不能繼續為止,得到損失函數最小的子樹。

三、CART 樹分類與回歸樹(Classification And Regression Tree, CART)模型由Breiman等人在1984年提出,是應用廣泛的決策樹學習方法。CART同樣由特征選擇、樹的生成及剪枝組成,既可以用于分類也可以用于回歸。以下將用于分類與回歸的樹統稱為決策樹。

CART是在給定輸入隨機變量X條件下輸出隨機變量Y的條件概率分布的學習方法。CART假設決策樹是二叉樹,內部結點特征的取值為“是”和“否”,左分支是取值為“是”的分支,右分支是取值為“否”的分支。這樣的決策樹等價于遞歸地二分每個特征,將輸入空間即特征空間劃分為有限個單元,并在這些單元上確定預測的概率分布,也就是在輸入給定的條件下輸出的條件概率分布。

CART算法由以下兩步組成:

? (1) 決策樹生成:基于訓練數據集生成決策樹,生成的決策樹要盡量大;

? (2) 決策樹剪枝:用驗證數據集對己生成的樹進行剪枝并選擇最優子樹,這時用損失函數最小作為剪枝的標準。

CART 生成決策樹的生成就是遞歸地構建二叉決策樹的過程。對回歸樹用平方誤差最小化準則,對分類樹用基尼指數(Gini Index)最小化準則,進行特征選擇,生成二叉樹。

回歸樹的生成假設X與Y分別為輸入和輸出變量,并且Y是連續變量,給定訓練數據集

={(1,1),(2,2),?,(,)}一個回歸樹對應著輸入空間(即特征空間)的一個劃分以及在劃分的單元上的輸出值。假設已將輸入空間劃分為M個單元,1,2,?,,并且在每個單元上有一個固定的輸出值,于是回歸樹模型可表示為:

()=∑=1(∈)當輸入空間的劃分確定時,可以用平方誤差∑∈(?())2來表示回歸樹對于訓練數據的預測誤差,用平方誤差最小的準求解每個單元上的最優輸出值。易知,單元上的的最優值? 是的所有輸入實例對應的輸出的均值,即:

? =(∣∈)采用啟發式的方法對輸入空間進行劃分,選擇第j個變量()和它取的值s,作為切分變量(Splitting Variable)和切分點(Splitting Point), 并定義兩個區域:

1(,)={∣()≤}和2(,)={∣()>}然后尋找最優切分變量j和最優切分點s,具體地,求解

,[1∑∈1(,)(?1)2+2∑∈2(,)(?2)2]對固定輸入變量j可以找到最優切分點s。

? 1=(∣∈1(,))和? 2=(∣∈2(,))遍歷所有輸入變量,找到最優的切分變量j,構成一個對(,)。依此將輸入空間劃分為兩個區域。接著,對每個區域重復上述劃分過程,直到滿足停止條件為止。這樣就生成一棵回歸樹。這樣的回歸樹通常稱為最小二乘回歸樹(Least Squares Regression Tree)。

分類樹的生成分類樹用基尼指數選擇最優特征,同時決定該特征的最有二值分割點。

在分類問題中,假設有K個類,樣本點屬于第k類的概率為,則概率分布的基尼指數定義為:

()=∑=1(1?)=1?∑=12對于二分類問題,若樣本點屬于第一個類的概率是p,則概率分部的基尼指數為:

()=2(1?)對于給定的樣本集合,其基尼指數為:

()=1?∑=1(||||)2這里,是中屬于第k類的樣本子集,K是類的個數。

如果樣本集合根據特征是否取某一可能值被分割成1和2兩部分,即:

1={(,)∈∣()=},2=?1則在特征的條件下,集合的基尼指數定義為:

(,)=|1|||(1)+|2|||(2)基尼指數()表示集合的不確定性,基尼指數(,)表示經?=?分割后集合的不確定性。基尼指數值越大,樣本集合的不確定性也就越大,這一點與熵相似。

CART生成算法

? 輸入:訓練數據集,停止計算的條件;

? 輸出:CART決策樹。

? 根據訓練數據集,從根結點開始,遞歸地對每個結點進行以下操作,構建二叉決策樹:

? (1) 設結點的訓練數據集為,計算現有特征對該數據集的基尼指數。此時,對每一個特征對其可能取的每個值,根據樣本點對=的測試為“是”或 “否”將分割成1和2兩部分,計算=時的基尼指數。

? (2) 在所有可能的特征以及它們所有可能的切分點中,選擇基尼指數最小的特征及其對應的切分點作為最優特征與最優切分點。依據最優特征與最優切分點,從現結點生成兩個子結點,將訓練數據集依特征分配到兩個子結點中去。

? (3) 對兩個子結點遞歸地調用上述操作,直至滿足停止條件為止。

? (4) 生成CART決策樹。

算法停止計算的條件是結點中的樣本個數小于預定閾值,或樣本集的基尼指數小于預定閾值(樣本基本屬于同一類),或者沒有更多特征。

CART 剪枝CART剪枝算法從“完全生長”的決策樹的底端剪去一些子樹,使決策樹變小(模型變簡單),從而能夠對未知數據有更準確的預測,提高模型泛化能力。CART剪枝算法由兩步組成:首先從生成算法產生的決策樹0底端開始不斷剪枝,直到0的根結點,形成一個子樹序列{0,1,?,};然后通過交叉驗證法在獨立的驗證數據集上對子樹序列進行測試,從中選擇最優子樹。

在剪枝過程中,計算子樹的損失函數:

()=()+||其中,為任意子樹,()為對訓練數據的預測誤差(如基尼指數),||為子樹的葉結點個數,為參數,()為參數是時的子樹的整體損失。參數權衡訓練數據的擬合程度與模型的復雜度。

對固定的,—定存在使損失函數最()小的子樹,將其表示為;在損失函數()最小的意義下是最優的。容易驗證這樣的最優子樹是唯一的。當大的時候,最優子樹偏小;當小的時候,最優子樹偏大。極端情況,當=0時,整體樹是最優的。當→∞時,根結點組成的單結點樹是最優的。

可以用遞歸的方法對樹進行剪枝。將從小增大,$0=a_{0}

具體地,從整體樹0開始剪枝,對0的任意內部結點t,以t為單結點樹的損失函數是:

()=()+以t為根結點的子樹的損失函數是:

()=()+||當=0及充分小時,有不等式:

()

()=()當再增大時,()>(),只要=()?()||?1,與t有相同的損失函數值,而t的結點少,因此t比更可取,對進行剪枝。

為此,對0中每一內部節點t,計算:

()=()?()||?1它表示剪枝后整體損失函數減少的程度。在0中減去()最小的,將得到的子樹作為1,同時將減小的()設置為1。1為區間[1,2)的最優子樹。

如此剪枝下去,直到得到根節點。在這一過程中,不斷地增加的值,產生新的區間。

在剪枝得到的子樹序列{0,1,?,}中果果交叉驗證選取最優子樹。

具體地,利用獨立的驗證數據集,測試子樹序列{0,1,?,}中各棵子樹的平方誤差或基尼指數。平方誤差或基尼指數最小的決策樹被認為是最優的決策樹。在子樹序列中,每棵子樹{0,1,?,}都對應一個參數{0,1,?,}。所以,當最優子樹選定時,對應的也就確定了,即得到了最優決策樹。

總結

以上是生活随笔為你收集整理的决策树准确率低原因_机器学习决策树算法--剪枝算法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。