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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

集成学习(西瓜书学习)

發布時間:2024/7/5 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 集成学习(西瓜书学习) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

集成學習

    • 概述
    • 一、Boosting
      • 1、Boosting
      • 2、GBDT (Gradient Boosting Decision Tree)
      • 3、XGBoost(Extreme Gradient Boosting)
    • 二、Bagging 與 Random Forest
      • 1、Bagging
      • 2、RF(Random Forest)

概述

集成學習(ensemble learning)通過構建并結合多個學習器來完成學習任務。

要獲得好的集成,個體學習器應該“好而不同”

集成學習分類:
個體學習器間存在強依賴關系,必須串行生成的序列化方法:Boosting
個體學習器間不存在強依賴關系,可以同時生成的并行化方法:Bagging、隨機森林(Random Forest)

一、Boosting

1、Boosting

工作機制:先從初始訓練集訓練出一個基學習器,然后根據基學習器的表現對訓練樣本分布進行調整,使得先前基學習器做錯的訓練樣本再后續會受到更多關注,然后基于調整后的訓練樣本分布來訓練下一個基學習器;如此重復進行,直至基學習器數量達到事先指定的值T,最終結果是將這T個基學習器進行加權結合。
從偏差-方差的角度看,Boosting 主要關注降低偏差。
【Boosting 族算法最著名的代表是 AdaBoost,即基學習器的線性組合】

2、GBDT (Gradient Boosting Decision Tree)

GBDT(梯度提升決策樹)與傳統的Boosting區別較大,它的每一次計算都是為了減少上一次的殘差,而為了消除殘差,我們可以在殘差減小的梯度方向上建立模型。所以說,在GradientBoost中,每個新的模型的建立是為了使得之前的模型的殘差往梯度下降的方向,與傳統的Boosting中關注正確錯誤的樣本加權有著很大的區別。

在GradientBoosting算法中,關鍵就是利用損失函數的負梯度方向在當前模型的值作為殘差的近似值,進而擬合一棵CART回歸樹。

GBDT的會累加所有樹的結果,而這種累加是無法通過分類完成的,因此GBDT的樹都是CART回歸樹,而不是分類樹(盡管GBDT調整后也可以用于分類但不代表GBDT的樹為分類樹)。

優點:

  • 它能靈活的處理各種類型的數據;
  • 在相對較少的調參時間下,預測的準確度較高。
  • 預測階段的計算速度快,樹與樹之間可并行化計算。
  • 在分布稠密的數據集上,泛化能力和表達能力都很好。
  • 采用決策樹作為弱分類器使得GBDT模型具有較好的解釋性和魯棒性,能夠自動發現特征間的高階關系。
  • 缺點:

  • 由于它是Boosting,因此基學習器之前存在串行關系,難以并行訓練數據
  • GBDT在高維稀疏的數據集上,表現不如支持向量機或者神經網絡。
  • GBDT在處理文本分類特征問題上,相對其他模型的優勢不如它在處理數值特征時明顯。
  • 訓練過程需要串行訓練,只能在決策樹內部采用一些局部并行的手段提高訓練速度。
  • 3、XGBoost(Extreme Gradient Boosting)

    XGBoost的性能在GBDT上又有一步提升,能夠自動地運用CPU的多線程進行并行計算,同時在算法精度上也進行了精度的提高。

    由于GBDT在合理的參數設置下,往往要生成一定數量的樹才能達到令人滿意的準確率,在數據集較復雜時,模型可能需要幾千次迭代運算。但是XGBoost利用并行的CPU更好的解決了這個問題。

    其實XGBoost和GBDT的差別也較大,這一點也同樣體現在其性能表現上,詳見XGBoost與GBDT的區別。

    二、Bagging 與 Random Forest

    為了獲得“好而不同”的基學習器,可以考慮使用相互有交疊的采樣子集
    自助采樣法(bootstrap sampling):m 個樣本數據集進行有放回的 m 次抽樣得到一個采樣集(初始訓練集中約有63.2%的樣本出現在采樣集中)

    1、Bagging

    Bagging 直接基于自助采樣法,采樣出 T 個含有 m 個訓練樣本的采樣集,然后基于每個采樣集訓練出一個基學習器,再將這些學習器進行結合。在對預測輸出進行結合時,通常對分類任務使用簡單投票法,對回歸任務使用簡單平均法。

    優點:

  • 與標準AdaBoost只適用于二分類任務不同,Bagging能不經修改地用于多分類、回歸。
  • 自助采樣中剩余的約36.8%的樣本有很多別的用處,如:用作驗證集進行“包外估計”,決策樹的輔助剪枝,估計決策樹各結點的后驗概率輔助對零訓練樣本結點的處理。神經網絡的輔助及早停止以減小過擬合。
  • 2、RF(Random Forest)

    Random Forest 是Bagging的擴展變體,它在以決策樹 為基學習器構建Bagging集成的基礎上,進一步在決策樹的訓練過程中引入了隨機特征選擇,因此可以概括RF包括四個部分:

  • 隨機選擇樣本(放回抽樣);
  • 隨機選擇特征;
  • 構建決策樹;
  • 隨機森林投票(平均)。
  • 隨機選擇樣本和Bagging相同,隨機選擇特征是指在樹的構建中,會從樣本集的特征集合中隨機選擇部分特征,然后再從這個子集中選擇最優的屬 性用于劃分,這種隨機性導致隨機森林的偏差會有稍微的增加(相比于單棵不隨機樹),但是由于隨機森林的‘平均’特性,會使得它的方差減小,而且方差的減小補償了偏差的增大,因此總體而言是更好的模型。

    優點:

  • 在數據集上表現良好,相對于其他算法有較大的優勢(訓練速度、預測準確度)
  • 能夠處理很高維的數據,并且不用特征選擇,而且在訓練完后,給出特征的重要性
  • 容易做成并行化方法。
  • 缺點:在噪聲較大的分類或者回歸問題上會過擬合。


    RF和Bagging對比

    RF的起始性能較差,特別當只有一個基學習器時,隨著學習器數目增多,隨機森林通常會收斂到更低的泛化誤差。隨機森林的訓練效率也會高于Bagging,因為在單個決策樹的構建中,Bagging使用的是‘確定性’決策樹,在選擇特征劃分結點時,要對所有的特征進行考慮,而隨機森林使用的是‘隨機性’特征數,只需考慮特征的子集。

    RF(隨機森林)與GBDT對比:

    相同點:

  • 都是由多棵樹組成,最終的結果都是由多棵樹一起決定。
  • RF和GBDT在使用CART樹時,可以是分類樹或者回歸樹。
  • 不同點:

  • 組成隨機森林的樹可以并行生成,而GBDT是串行生成
  • 隨機森林的結果是多數表決表決的,而GBDT則是多棵樹累加之和
  • 隨機森林對異常值不敏感,而GBDT對異常值比較敏感
  • 隨機森林是減少模型的方差,而GBDT是減少模型的偏差
  • 隨機森林不需要進行特征歸一化。而GBDT則需要進行特征歸一化(因為GBDT的樹是在上一顆樹的基礎上通過梯度下降求解最優解,歸一化能收斂的更快,而隨機森林本來就是通過減少方差提高性能的,樹之間建立關系是獨立的,不需要歸一化)
  • 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

    總結

    以上是生活随笔為你收集整理的集成学习(西瓜书学习)的全部內容,希望文章能夠幫你解決所遇到的問題。

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