日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【机器学习】 树的剪枝策略

發布時間:2023/12/20 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【机器学习】 树的剪枝策略 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

剪枝

決策樹剪枝分前剪枝(預剪枝)和后剪枝兩種形式.

決策樹為什么(WHY)要剪枝?原因是避免決策樹過擬合(Overfitting)樣本。前面的算法生成的決策樹非常詳細并且龐大,每個屬性都被詳細地加以考慮,決策樹的樹葉節點所覆蓋的訓練樣本都是“純”的。因此用這個決策樹來對訓練樣本進行分類的話,你會發現對于訓練樣本而言,這個樹表現完好,誤差率極低且能夠正確得對訓練樣本集中的樣本進行分類。訓練樣本中的錯誤數據也會被決策樹學習,成為決策樹的部分,但是對于測試數據的表現就沒有想象的那么好,或者極差,這就是所謂的過擬合(Overfitting)問題。Quinlan教授試驗,在數據集中,過擬合的決策樹的錯誤率比經過簡化的決策樹的錯誤率要高。

預剪枝

PrePrune:預剪枝,及早的停止樹增長。

通過提前停止樹的構造進行剪枝.

  • 樹到達一定高度
  • 節點下包含的樣本點小于一定數目
  • 信息增益小于一定的閾值等等
  • 節點下所有樣本都屬于同一個類別

后剪枝

后剪枝的剪枝過程是刪除一些子樹,然后用其葉子節點代替,這個葉子節點所標識的類別通過大多數原則(majority class criterion)確定。所謂大多數原則,是指剪枝過程中, 將一些子樹刪除而用葉節點代替,這個葉節點所標識的類別用這棵子樹中大多數訓練樣本所屬的類別來標識,所標識的類 稱為majority class ,(majority class 在很多英文文獻中也多次出現)。

后剪枝首先通過完全分裂構造完整的決策樹,允許過擬合,然后采取一定的策略來進行剪枝,常用的后剪枝策略包括:

  • 降低錯誤剪枝 REP(Reduced Error Pruning)
  • 悲觀錯誤剪枝 PEP(Pessimistic Error Pruning)
  • 基于錯誤剪枝 EBP(Error Based Pruning)
  • 代價-復雜度剪枝 CCP(Cost Complexity Pruning)
  • 最小錯誤剪枝 MEP(Minimum Error Pruning)
  • 等等

其實剪枝的準則是如何確定決策樹的規模,可以參考的剪枝思路有以下幾個:

  • 使用訓練集合(Training Set)和驗證集合(Validation Set),來評估剪枝方法在修剪結點上的效用
  • 使用所有的訓練集合進行訓練,但是用統計測試來估計修剪特定結點是否會改善訓練集合外的數據的評估性能,如使用Chi-Square(Quinlan,1986)測試來進一步擴展結點是否能改善整個分類數據的性能,還是僅僅改善了當前訓練集合數據上的性能。
  • 使用明確的標準來衡量訓練樣例和決策樹的復雜度,當編碼長度最小時,停止樹增長,如MDL(Minimum Description?Length)準則。
  • 我們先看下使用思路一來解決問題的集中后剪枝方法:

    Reduced-Error Pruning(REP,錯誤率降低剪枝)

    自底向頂剪枝

    該剪枝方法考慮將書上的每個節點作為修剪的候選對象,決定是否修剪這個結點有如下步驟組成:

    1:刪除以此結點為根的子樹

    2:使其成為葉子結點

    3:賦予該結點關聯的訓練數據的最常見分類

    4:當修剪后的樹對于驗證集合的性能不會比原來的樹差時,才真正刪除該結點

    因為訓練集合的過擬合,使得驗證集合數據能夠對其進行修正,反復進行上面的操作,從底向上的處理結點,刪除那些能夠最大限度的提高驗證集合的精度的結點,直到進一步修剪有害為止(有害是指修剪會減低驗證集合的精度)

    REP是最簡單的后剪枝方法之一,不過在數據量比較少的情況下,REP方法趨于過擬合而較少使用。這是因為訓練數據集合中的特性在剪枝過程中被忽略,所以在驗證數據集合比訓練數據集合小的多時,要注意這個問題。

    盡管REP有這個缺點,不過REP仍然作為一種基準來評價其它剪枝算法的性能。它對于兩階段決策樹學習方法的優點和缺點提供了了一個很好的學習思路。由于驗證集合沒有參與決策樹的創建,所以用REP剪枝后的決策樹對于測試樣例的偏差要好很多,能夠解決一定程度的過擬合問題。

    Pessimistic Error Pruning (PEP,悲觀剪枝)

    具體看https://www.jianshu.com/p/794d08199e5e

    出現標準差,是因為我們的子樹的錯誤個數是一個隨機變量,經過驗證可以近似看成是二項分布,就可以根據二項分布的標準差公式算出標準差,就可以確定是否應該剪掉這個樹枝了。子樹中有N的實例,就是進行N次試驗,每次實驗的錯誤的概率為e,符合B(N,e)的二項分布,根據公式,均值為Ne,方差為Ne(1-e),標準差為方差開平方。

    ?

    在上面這個例子中

    剪枝前:Error=(7+3*0.5)/16

    mean = N*e = 8.5

    std = sqrt(error*(1-error)*N) =?=2

    剪枝后:將T4的所有子樹剪掉之后,根據大多數原則重新計算錯分率,假設仍有7個樣本誤分。

    Error_mean?= (7+0.5)=7.5

    判斷:

    7.5 > 8.5-2

    所以不剪枝

    PEP優缺點

    該算法被認為是當前決策樹后剪枝算法中經度比較高的算法之一,但是仍存在有缺陷。首先,PEP算法是唯一使用Top-Down剪枝策略,這種策略會導致與預剪枝出現同樣的問題,將該結點的某子節點不需要被剪枝時被剪掉;另外PEP方法會有剪枝失敗的情況出現。

    雖然PEP方法存在一些局限性,但是在實際應用中表現出了較高的精度,。兩外PEP方法不需要分離訓練集合和驗證機和,對于數據量比較少的情況比較有利。再者其剪枝策略比其它方法相比效率更高,速度更快。因為在剪枝過程中,樹中的每顆子樹最多需要訪問一次,在最壞的情況下,它的計算時間復雜度也只和非剪枝樹的非葉子節點數目成線性關系。

    Cost-Complexity Pruning(CCP、代價復雜度)

    CART用的就是CCP剪枝。

    最后一句話感覺是ccp的重點,得到的最優決策樹可能并不是原決策樹的所有可能子樹,有可能出現新的決策樹。

    比較

    參考文章:

    http://blog.sina.com.cn/s/blog_4e4dec6c0101fdz6.html

    http://leijun00.github.io/2014/10/decision-tree-2/

    https://www.jianshu.com/p/794d08199e5e

    總結

    以上是生活随笔為你收集整理的【机器学习】 树的剪枝策略的全部內容,希望文章能夠幫你解決所遇到的問題。

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