精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Adaboost算法總結

lviY_AI_shequ ? 來源:劉林華 ? 作者:電子發(fā)燒友 ? 2018-12-29 16:08 ? 次閱讀

前言

集成學習的Boosting算法串行生成多個弱學習器并按一定的結合策略生成強學習器,AdaBoost算法是Boosting系列算法中的一種,本文詳細總結了AdaBoost算法的相關理論。

目錄

1. Boosting算法基本原理

2. Boosting算法的權重理解

3. AdaBoost的算法流程

4. AdaBoost算法的訓練誤差分析

5. AdaBoost算法的解釋

6. AdaBoost算法的正則化

7. AdaBoost算法的過擬合問題討論

8. 總結

Boosting的算法流程

Boosting算法是一種由原始數據集生成不同弱學習器的迭代算法,然后把這些弱學習器結合起來,根據結合策略生成強學習器。

如上圖,Boosting算法的思路:

(1)樣本權重表示樣本分布,對特定的樣本分布生成一個弱學習器。

(2)根據該弱學習器模型的誤差率e更新學習器權重α。

(3)根據上一輪的學習器權重α來更新下一輪的樣本權重。

(4)重復步驟(1)(2)(3),結合所有弱學習器模型,根據結合策略生成強學習器。

Boosting算法的權重理解

Boosting算法意為可提升算法,可提升方法具體表現在(一)改變訓練數據的概率分布(訓練數據的權值分布),(二)弱分類器權重的生成。理解這兩個原理是理解AdaBoost算法的基礎。

1. 訓練數據的權重理解

我們對癌癥病人和健康人作一個定性的分析,目的是理解Boosingt算法訓練數據權重更新的思想。

如下圖為分類器G(1)的分類情況,假設樣本數據的權重相等。

pIYBAFwnLOWAF_WUAAAVycDjoz0260.png

癌癥誤分類成健康人的結果很可能是喪失生命,因此這種誤分類情況肯定不能出現的,若我們對該誤分類點的權重增加一個極大值,以突出該樣本的重要性,分類結果如下圖:

pIYBAFwnLOWAAg3yAAAMQ6FK3mI723.png

因此,增加誤分類樣本的權重,使分類器往該誤分類樣本的正確決策邊界方向移動,當權重增加到一定值時,誤分類樣本實現了正確分類,因為訓練樣本的權重和是不變的,增加誤分類樣本權重的同時,也降低了正確分類樣本的權重。這是Boosting算法的樣本權重更新思想。

2. 弱學習器的權重理解

Boosting算法通過迭代生成了一系列的學習器,我們給予誤差率低的學習器一個高的權重,給予誤差率高的學習器一個低的權重,結合弱學習器和對應的權重,生成強學習器。弱學習器的權重更新是符合常識的,弱學習器性能越好,我們越重視它,權重表示我們對弱學習器的重視程度,即權重越大,這是Boosting算法弱學習器權重的更新思想。

AdaBoost的算法流程

第一節(jié)描述了Boosting算法的流程,但是沒有給出具體的算法詳細說明:

(1)如何計算弱學習器的學習誤差;

(2)如何得到弱學習器的權重系數α;

(3)如何更新樣本權重D;

(4)使用何種結合策略;

我們從這四種問題的角度去分析AdaBoost的分類算法流程和回歸算法流程。第k輪的弱分類器為pIYBAFwnLOWAM6hGAAAB0pE-h8I829.png

pIYBAFwnLOaAbS-8AAAS9gbjddk471.png

1. AdaBoost的分類算法流程

我們假設是二分類問題,輸出為{-1,1}。第K輪的弱分類器為pIYBAFwnLOaAPl0oAAAB1HaOLLE390.png

1) 計算弱分類器的分類誤差

在訓練集上的加權誤差率為:

pIYBAFwnLOaAaXC4AAAFqFweWkY862.png

pIYBAFwnLOaAFaNMAAAFqE1EjVA155.png

2) 弱學習權重系數α的計算

pIYBAFwnLOaAIWQFAAADHs2iFgM803.png

由上式可知,學習器誤差率越小,則權重系數越大。

3) 下一輪樣本的權重更新

pIYBAFwnLOaAVRPmAAAFZ4g6KBs544.png

其中Zk是規(guī)范化因子,使每輪訓練數據集的樣本權重和等于1。

pIYBAFwnLOeAJU5dAAAFe2OjnC4150.png

當樣本處于誤分類的情況,pIYBAFwnLOeAMrcPAAACuqCpET0176.pngpIYBAFwnLOeAUa6cAAACEij3tM4710.png該誤分類樣本的權重增加;當樣本是處于正確分類的情況,pIYBAFwnLOeAadJ7AAACqSsz3lE511.png,則pIYBAFwnLOeAFTXTAAACELcvEzE585.png,該正確分類樣本的權值減小。

4) 結合策略,構建最終分類器為:

pIYBAFwnLOiAa_ijAAAEtAcpxNw172.png

2. AdaBoost的回歸算法流程

1) 計算弱學習器的回歸誤差率:

a) 計算訓練集上的最大誤差:

pIYBAFwnLOiAIfIYAAAE3hc22gk118.png

b) 計算每個樣本的相對誤差:

如果是線性誤差,則

pIYBAFwnLOiAAuvmAAADruQgYXY330.png

如果是平方誤差,則

pIYBAFwnLOiAIYOtAAAEACKcP7Q415.png

如果是指數誤差,則

pIYBAFwnLOiAft8PAAAE0u8qAck766.png

c) 計算回歸誤差率

pIYBAFwnLOmAECSzAAAC2f99QAQ079.png

(2) 弱學習權重系數α的計算

pIYBAFwnLOmAUA-lAAAB7wJp-Xs401.png

(3)下一輪樣本的權重更新

pIYBAFwnLOmAMK0EAAADXW5QmoY120.png

Zk是規(guī)范化因子,使樣本權重的和為1,

pIYBAFwnLOmAdGFYAAADorV6BbA617.png

(4)結合策略,構建最終學習器為:

pIYBAFwnLOmAZuQfAAALITioM5M054.png

AdaBoost算法的訓練誤差分析

過程就不推倒了,可參考李航《統計學習方法》P142~P143,這里就只給出結論。

AdaBoost的訓練誤差界:

pIYBAFwnLOmAHXvHAAAGaTtOrPk997.png

pIYBAFwnLOqAJ_KyAAAKd7aUtAo887.png

由上式可知,AdaBoost的訓練誤差是以指數速率下降的,即AdaBoost算法隨著迭代次數的增加,訓練誤差不斷減小,即模型偏差顯著降低 。

本文傾向于入門AdaBoost算法,下一篇文章會發(fā)散思維,介紹AdaBoost算法的相關性質,

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 算法
    +關注

    關注

    23

    文章

    4599

    瀏覽量

    92639
  • 數據結構
    +關注

    關注

    3

    文章

    573

    瀏覽量

    40092

原文標題:比較全面的Adaboost算法總結(一)

文章出處:【微信號:AI_shequ,微信公眾號:人工智能愛好者社區(qū)】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Adaboost算法的Haar特征怎么進行并行處理?

    Adaboost 算法是Freund 和Schapire 于1995 年提出的,全稱為Adaptive Boosting。它是 Boosting 算法的改進,意為該算法通過機器訓練與學
    發(fā)表于 08-28 07:05

    實現AdaBoost算法的代碼

    AdaBoost算法實現
    發(fā)表于 11-07 09:19

    一種基于AdaBoost的SVM分類器

    針對AdaBoost的分量分類器的分類精度和差異性互為矛盾、以至于該矛盾的存在降低了AdaBoost算法的分類精度和泛化性的問題,提出了一種變 一AdaB0ostRBFSVM算法,通過
    發(fā)表于 01-08 18:12 ?28次下載

    Adaboost算法的FPGA實現與性能分析

    Adaboost算法采用由弱到強的級聯型分類器用以快速檢測人臉。但在實際應用中計算量巨大。在PC機上用純軟件實現該算法得到的目標檢測速度也難以達到實時。本文論述了一種采用像
    發(fā)表于 07-17 18:11 ?22次下載

    基于Adaboost算法的駕駛員眨眼識別

    基于Adaboost算法的駕駛員眨眼識別 眨眼是一種睜閉眼睛的生理活動,眨眼的速度會受疲勞程度、情感壓力、行為種類、睡覺數量、眼睛受傷程度、疾
    發(fā)表于 11-09 17:17 ?1191次閱讀

    AdaBoost算法流程和證明

    Discete-AdaBoost算法 1、給定訓練集: ,其中 ,表示 的正確的類別標簽, , 表示第i副圖像的第j個特征值 2、訓練集上樣本的初始分布: 3、尋找若分類器 ht( ) (1)對于每個樣本中的第j個特
    發(fā)表于 07-18 10:40 ?0次下載

    基于AdaBoost_Bayes算法的中文文本分類系統

    基于AdaBoost_Bayes算法的中文文本分類系統_徐凱
    發(fā)表于 01-07 18:56 ?2次下載

    基于主動學習不平衡多分類AdaBoost改進算法

    針對不平衡分類中小類樣本識別率低問題,提出一種基于主動學習不平衡多分類AdaBoost改進算法。首先,利用主動學習方法通過多次迭代抽樣,選取少量的、對分類器最有價值的樣本作為訓練集;然后
    發(fā)表于 11-30 17:12 ?3次下載

    一種多分類的AdaBoost算法

    多類指數損失函數逐步添加模型( SAMME)是一種多分類的AdaBoost算法,為進一步提升SAMME算法的性能,針對使用加權概率和偽損失對算法的影響進行研究,在此基礎上提出了一種基于
    發(fā)表于 12-01 16:50 ?1次下載

    非線性AdaBoost算法

    AdaBoost是數據挖掘領域最常見的提升算法之一。對傳統AdaBoost將各個基分類器線性相加所存在的不足進行分析,并針對AdaBoost各個弱分類器的加權方式提出新的改進,將傳統的
    發(fā)表于 01-04 16:58 ?0次下載

    adaboost運行函數的算法怎么來的?基本程序代碼實現詳細

    adaboost運行過程。算法是利用指數函數降低誤差,運行過程通過迭代進行。其中函數的算法怎么來的,你不用知道!當然你也可以嘗試使用其它的函數代替指數函數,看看效果如何。誤差的上界限由Zm約束,然而Zm又是由Gm(xi)約束,所
    的頭像 發(fā)表于 07-21 10:18 ?2445次閱讀

    AdaBoost算法相關理論和算法介紹

    本文詳細總結AdaBoost算法的相關理論,本文詳細推導了AdaBoost算法的參數求解過程以及討論了模型的過擬合問題。
    的頭像 發(fā)表于 01-07 18:26 ?4132次閱讀
    <b class='flag-5'>AdaBoost</b><b class='flag-5'>算法</b>相關理論和<b class='flag-5'>算法</b>介紹

    基于AdaBoost算法的復雜網絡鏈路預測

    鏈路預測是復雜網絡的重要研究方向,當前的鏈路預測算法因可利用的網絡信息有限,導致預測算法的精確度受限為了提高預測算法的性能,采用改進的 Adaboost
    發(fā)表于 04-08 11:21 ?15次下載
    基于<b class='flag-5'>AdaBoost</b><b class='flag-5'>算法</b>的復雜網絡鏈路預測

    基于SVM與Adaboost算法的入侵檢測系統

    入侵檢測系統在大數據量的情況下誤報率高、泛化能力弱,且單一機器學習算法不能較好地應對多種攻擊類型。為此,設計一個基于支持向量機(SM)與 Adaboost算法的入侵檢測系統。依托 Snort系統
    發(fā)表于 05-25 16:35 ?6次下載

    基于AdaBoost算法的回放語音檢測方法

    針對語音判別系統中單個分類器分類能力有限的問題,提出一種基于 Adaboost算法的回放語音檢測方法。以常量Q倒譜系數和均值超矢量分別作為特征參數和 Adaboost算法的輸人,將多個
    發(fā)表于 06-03 11:34 ?10次下載