機器學習西瓜書(周志華)第八章 集成學習

1. 集成學習的概念

       集成學習(ensemble learning)通過構建並結合多個學習器來完成學習任務。多分類器系統,基於委員會的學習。

      如何產生“好而不同”的個體學習器,是集成學習研究的核心。
       “好”——個體學習器要有一定的準確率。
       “不同”——學習器之間存在差異,即對同一數據有不同預測結果。

P(H(x)f(x))=k=0T/2(Tk)(1ϵ)kϵTkexp(12T(12ϵ)2) \begin{aligned} P(H(\boldsymbol{x}) \neq f(\boldsymbol{x})) &=\sum_{k=0}^{\lfloor T / 2\rfloor}\left(\begin{array}{l}{T} \\ {k}\end{array}\right)(1-\epsilon)^{k} \epsilon^{T-k} \\ & \leqslant \exp \left(-\frac{1}{2} T(1-2 \epsilon)^{2}\right) \end{aligned}
       隨着集成中個體分類器T的增加,集成的錯誤率呈指數級下降,最終趨於零。

      上述的關鍵假設:基學習器的誤差是相互獨立的。但是在現實任務中,個體學習器是通過解決同一個問題訓練出來的,顯然不相互獨立。
      個體分類器的準確性和多樣性是相互衝突的,當增加多樣性會提高準確性,但當多樣性增加到一定程度時,準確性會下降。

2. 集成學習的分類

       集成學習的思路是通過合併多個模型來提升機器學習性能,這種方法相較於單個模型通常能夠獲得更好的預測結果。

      一般來說集成學習可以分爲三大類:

  • 用於減少方差的bagging:個體分類器不存在強依賴關係、可同時生成的並行化方法。
  • 用於減少偏差的boosting:個體分類器存在強依賴關係、可同時生成的序列化方法。
  • 用於提升預測結果的stacking

      集成學習方法也可以歸爲如下兩大類:

      串行集成方法,這種方法串行地生成基礎模型(如AdaBoost)。串行集成的基本動機是利用基礎模型之間的依賴。通過給錯分樣本一個較大的權重來提升性能。
      並行集成方法,這種方法並行地生成基礎模型(如Random Forest)。並行集成的基本動機是利用基礎模型的獨立性,因爲通過平均能夠較大地降低誤差。
      大部分集成模型都通過一個基礎學習算法來生成一個同質的基礎學習器,即同類型的學習器,也叫同質集成。

      有同質集成就有異質集成,爲了集成後的結果表現最好,異質基礎學習器需要儘可能準確並且差異性夠大。

3. Bagging

       Bagging是引導聚合的意思。減少一個估計方差的一種方式就是對多個估計進行平均。例如,我們可以用訓練集的不同子集(隨機選擇並替代訓練集)訓練M個不同的樹然後計算最後的結果:

       Bagging使用裝袋採樣來獲取數據子集訓練基礎學習器。通常分類任務使用投票的方式集成,而回歸任務通過平均的方式集成。
1)從原始樣本集中抽取訓練集。每輪從原始樣本集中使用Bootstraping(有放回)的方法抽取n個訓練樣本(在訓練集中,有些樣本可能被多次抽取到,而有些樣本可能一次都沒有被抽中)。共進行k輪抽取,得到k個訓練集。(我們這裏假設k個訓練集之間是相互獨立的,事實上不是完全獨立)

2)每次使用一個訓練集得到一個模型,k個訓練集共得到k個模型。但是是同種模型。(注:,k個訓練集雖然有重合不完全獨立,訓練出來的模型因爲是同種模型也是不完全獨立。這裏並沒有具體的分類算法或迴歸方法,我們可以根據具體問題採用不同的分類或迴歸方法,如決策樹、感知器等)

3)對分類問題:將上步得到的k個模型採用投票的方式得到分類結果;對迴歸問題,計算上述模型的均值作爲最後的結果。(所有模型的重要性相同)

對於Bagging需要注意的是,每次訓練集可以取全部的特徵進行訓練,也可以隨機選取部分特徵訓練,例如隨機森林就是每次隨機選取部分特徵

公式參考: [https://blog.csdn.net/weixin_41725746/article/details/90483885#3_457]

7. 課後練習參考答案

[https://blog.csdn.net/icefire_tyh/article/details/52065224]

參考文獻:
[1] [統計學習-李航]
[2] [機器學習西瓜書-周志華]
[3] [https://blog.csdn.net/bitcarmanlee/article/details/78819025]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章