整合學習的決策樹的演算法

2021-09-29 18:26:18 字數 2353 閱讀 2270

常見的整合學習框架有三種:bagging、boosting 和 stacking。三種整合學習框架在基學習器的產生和綜合結果的方式上會有些區別,我們先做些簡單的介紹。

1.1 bagging

bagging 全稱叫 bootstrap aggregating,看到 bootstrap 我們立刻想到著名的開源前端框架(抖個機靈,是 bootstrap 抽樣方法) ,每個基學習器都會對訓練集進行有放回抽樣得到子訓練集,比較著名的取樣法為 0.632 自助法。每個基學習器基於不同子訓練集進行訓練,並綜合所有基學習器的**值得到最終的**結果。bagging 常用的綜合方法是投票法,票數最多的類別為**類別。

boosting 訓練過程為階梯狀,基模型的訓練是有順序的,每個基模型都會在前乙個基模型學習的基礎上進行學習,最終綜合所有基模型的**值產生最終的**結果,用的比較多的綜合方式為加權法。

stacking 是先用全部資料訓練好基模型,然後每個基模型都對每個訓練樣本進行的**,其**值將作為訓練樣本的特徵值,最終會得到新的訓練樣本,然後基於新的訓練樣本進行訓練得到模型,然後得到最終**結果。

那麼,為什麼整合學習會好於單個學習器呢?原因可能有三:

訓練樣本可能無法選擇出最好的單個學習器,由於沒法選擇出最好的學習器,所以乾脆結合起來一起用;

假設能找到最好的學習器,但由於演算法運算的限制無法找到最優解,只能找到次優解,採用整合學習可以彌補演算法的不足;

可能演算法無法得到最優解,而整合學習能夠得到近似解。比如說最優解是一條對角線,而單個決策樹得到的結果只能是平行於座標軸的,但是整合學習可以去擬合這條對角線。

random forest(隨機森林),用隨機的方式建立乙個森林。rf 演算法由很多決策樹組成,每一棵決策樹之間沒有關聯。建立完森林後,當有新樣本進入時,每棵決策樹都會分別進行判斷,然後基於投票法給出分類結果。

3.1 思想

random forest(隨機森林)是 bagging 的擴充套件變體,它在以決策樹為基學習器構建 bagging 整合的基礎上,進一步在決策樹的訓練過程中引入了隨機特徵選擇,因此可以概括 rf 包括四個部分:

隨機選擇樣本(放回抽樣);

隨機選擇特徵;

構建決策樹;

隨機森林投票(平均)。

隨機選擇樣本和 bagging 相同,採用的是 bootstrap 自助取樣法;隨機選擇特徵是指在每個節點在**過程中都是隨機選擇特徵的(區別與每棵樹隨機選擇一批特徵)。

這種隨機性導致隨機森林的偏差會有稍微的增加(相比於單棵不隨機樹),但是由於隨機森林的「平均」特性,會使得它的方差減小,而且方差的減小補償了偏差的增大,因此總體而言是更好的模型。

隨機取樣由於引入了兩種取樣方法保證了隨機性,所以每棵樹都是最大可能的進行生長就算不剪枝也不會出現過擬合。

3.2 優缺點

優點:在資料集上表現良好,相對於其他演算法有較大的優勢;

易於並行化,在大資料集上有很大的優勢;

能夠處理高維度資料,不用做特徵選擇

adaboost(adaptive boosting,自適應增強),其自適應在於:前乙個基本分類器分錯的樣本會得到加強,加權後的全體樣本再次被用來訓練下乙個基本分類器。同時,在每一輪中加入乙個新的弱分類器,直到達到某個預定的足夠小的錯誤率或達到預先指定的最大迭代次數。

4.1 思想

adaboost 迭代演算法有三步:

初始化訓練樣本的權值分布,每個樣本具有相同權重;

訓練弱分類器,如果樣本分類正確,則在構造下乙個訓練集中,它的權值就會被降低;反之提高。用更新過的樣本集去訓練下乙個分類器;

將所有弱分類組合成強分類器,各個弱分類器的訓練過程結束後,加大分類誤差率小的弱分類器的權重,降低分類誤差率大的弱分類器的權重。

gbdt(gradient boosting decision tree)是一種迭代的決策樹演算法,該演算法由多棵決策樹組成,從名字中我們可以看出來它是屬於 boosting 策略。gbdt 是被公認的泛化能力較強的演算法。

gbdt 由三個概念組成:regression decision tree(即 dt)、gradient boosting(即 gb)和shringkage(乙個重要演變)。

決策樹演算法改進 整合學習

使用多種弱學習方法 即id3演算法,c4.5演算法,cart演算法 的組合,做多個分類模型,即多棵決策樹 模擬多專家投票 來獲取比原方法更優的分類結果。sklearn庫實現袋裝法改進分類結果,並做袋裝法和決策樹演算法效果對比 載入庫函式 import sklearn.datasets as data...

決策樹與整合學習

由於機器學習涉及的方法很廣,對機器學習有了乙個橫向巨集觀的把握之後,需要縱向對某一類方法進行深入的學習。因為要研究的課題內容是有監督學習,因此選擇一類有監督的學習方法進行深入的研究 整合學習綜述 2016年10月 目前來說機器學習的研究主要分為四個大方向 a 通過整合學習方法提高學習精度 b 擴大學...

機器學習 決策樹與整合演算法

樹模型 決策樹 從根節點開始一步步走到葉子節點 決策 決策樹所有的資料最終都會落到葉子節點,既可以做分類也可以做回歸 樹的組成 根節點 第乙個選擇點 決策樹非葉子節點與分支 中間過程 葉子節點 最終的決策結果 決策樹的訓練與測試 訓練階段 從給定的訓練集構造出來一棵樹 從跟節點開始選擇特徵,如何進行...