一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

你知道XGBoost背后的數(shù)學(xué)原理是什么嗎?

zhKF_jqr_AI ? 來(lái)源:未知 ? 作者:李倩 ? 2018-08-22 08:59 ? 次閱讀

編者按:說(shuō)到Kaggle神器,不少人會(huì)想到XGBoost。一周前,我們?cè)凇皬腒aggle歷史數(shù)據(jù)看機(jī)器學(xué)習(xí)競(jìng)賽趨勢(shì)”介紹過(guò)它的“霸主地位”:自提出后,這種算法在機(jī)器學(xué)習(xí)競(jìng)賽中被迅速普及,并被多數(shù)奪冠模型視為訓(xùn)練速度、最終性能提升的利器。那么,你知道XGBoost背后的數(shù)學(xué)原理是什么嗎?

好奇的李雷和韓梅梅

李雷和韓梅梅是形影不離的好朋友,一天,他們一起去山里摘蘋(píng)果。按照計(jì)劃,他們打算去摘山谷底部的那棵大蘋(píng)果樹(shù)。雖然韓梅梅聰明而富有冒險(xiǎn)精神,而李雷有些謹(jǐn)慎和遲鈍,但他們中會(huì)爬樹(shù)的只有李雷。那么他們的路徑是什么呢?

如上圖所示,李雷和韓梅梅所在的位置是a點(diǎn),他們的目標(biāo)蘋(píng)果樹(shù)位于g點(diǎn)。山里環(huán)境復(fù)雜,要怎么做才能確定自己到了山谷底部呢?他們有兩種方法。

1.由韓梅梅計(jì)算“a”點(diǎn)的斜率,如果斜率為正,則繼續(xù)朝這個(gè)方向前進(jìn);如果為負(fù),朝反方向前進(jìn)。

斜率給出了前進(jìn)的方向,但沒(méi)有說(shuō)明他們需要朝這個(gè)方向移動(dòng)多少。為此,韓梅梅決定走幾步臺(tái)階,算一下斜率,確保自己不會(huì)到達(dá)錯(cuò)誤位置,最終錯(cuò)過(guò)大蘋(píng)果樹(shù)。但是這種方法有風(fēng)險(xiǎn),控制臺(tái)階多少的是學(xué)習(xí)率,這是個(gè)需要人為把控的值:如果學(xué)習(xí)率過(guò)大,李雷和韓梅梅很可能會(huì)在g點(diǎn)兩側(cè)來(lái)回奔走;如果學(xué)習(xí)率過(guò)小,可能天黑了他們都未必摘得到蘋(píng)果。

聽(tīng)到可能會(huì)走錯(cuò)路,李雷不樂(lè)意了,他不想繞遠(yuǎn)路,也不愿意錯(cuò)過(guò)回家吃飯的時(shí)間??吹胶糜堰@么為難,韓梅梅提出了第二種方法。

2.在第一種方法的基礎(chǔ)上,每走過(guò)特定數(shù)量的臺(tái)階,都由韓梅梅去計(jì)算每一個(gè)臺(tái)階的損失函數(shù)值,并從中找出局部最小值,以免錯(cuò)過(guò)全局最小值。每次韓梅梅找到局部最小值,她就發(fā)個(gè)信號(hào),這樣李雷就永遠(yuǎn)不會(huì)走錯(cuò)路了。但這種方法對(duì)女孩子不公平,可憐的韓梅梅需要探索她附近的所有點(diǎn)并計(jì)算所有這些點(diǎn)的函數(shù)值。

XGBoost的優(yōu)點(diǎn)在于它能同時(shí)解決以上兩種方案的缺陷。

梯度提升(Gradient Boosting)

很多梯度提升實(shí)現(xiàn)都會(huì)采用方法1來(lái)計(jì)算目標(biāo)函數(shù)的最小值。在每次迭代中,我們利用損失函數(shù)的梯度訓(xùn)練基學(xué)習(xí)器,然后用預(yù)測(cè)結(jié)果乘上一個(gè)常數(shù),將其與前一次迭代的值相加,更新模型。

它背后的思路就是在損失函數(shù)上執(zhí)行梯度下降,然后用基學(xué)習(xí)器對(duì)其進(jìn)行擬合。當(dāng)梯度為負(fù)時(shí),我們稱它為偽殘差,因?yàn)樗鼈円廊荒荛g接幫助我們最小化目標(biāo)函數(shù)。

XGBoost

XGBoost是陳天奇在華盛頓大學(xué)求學(xué)期間提出的成果。它是一個(gè)整體加法模型,由幾個(gè)基學(xué)習(xí)器共同構(gòu)成。

那么,我們?cè)撊绾卧诿看蔚羞x擇一個(gè)函數(shù)?這里可以用一種最小化整體損失的方法。

在上述梯度提升算法中,我們通過(guò)將基學(xué)習(xí)器擬合到相對(duì)于先前迭代值的損失函數(shù)的負(fù)梯度,在每次迭代時(shí)獲得ft(xi)。而在XGBoost中,我們只探索幾個(gè)基學(xué)習(xí)器或函數(shù),選擇其中一個(gè)計(jì)算最小值,也就是韓梅梅的方法2。

如前所述,這種方法有兩個(gè)問(wèn)題:

探索不同的基學(xué)習(xí)器;

計(jì)算所有基學(xué)習(xí)器的損失函數(shù)值。

XGBoost在計(jì)算基學(xué)習(xí)器ft(xi)最小值的,使用的方法是泰勒級(jí)數(shù)逼近。比起計(jì)算精確值,計(jì)算近似值可以大大減輕韓梅梅的工作量。

雖然上面只展開(kāi)到二階導(dǎo)數(shù),但這種近似程度就足夠了。對(duì)于任意ft(xi),第一項(xiàng)C都是常數(shù)。gi是前一次迭代中損失的一階導(dǎo)數(shù),hi是其二階導(dǎo)數(shù)。韓梅梅可以在探索其他基學(xué)習(xí)器前直接計(jì)算gi和hi,這就成了一個(gè)簡(jiǎn)單的乘法問(wèn)題,計(jì)算負(fù)擔(dān)大大減輕了,不是嗎?

解決了損失函數(shù)值的問(wèn)題,我們還要探索不同的基學(xué)習(xí)器。

假設(shè)韓梅梅更新了一個(gè)具有K個(gè)葉子節(jié)點(diǎn)的基學(xué)習(xí)器ft。設(shè)Ij是屬于節(jié)點(diǎn)j的實(shí)例集合,wj是該節(jié)點(diǎn)的預(yù)測(cè)。因此,對(duì)于Ij中的實(shí)例i,我們有ft(xi)=wj。所以我們?cè)谏鲜街杏么敕ǜ铝薒(t)的表達(dá)式。更新后,我們就能針對(duì)每個(gè)葉子節(jié)點(diǎn)的權(quán)重采用損失函數(shù)的導(dǎo)數(shù),以獲得最優(yōu)權(quán)重。

以上就是對(duì)于具有K個(gè)葉子節(jié)點(diǎn)的基學(xué)習(xí)器的最佳損失??紤]到這樣的節(jié)點(diǎn)會(huì)有上百個(gè),一個(gè)個(gè)探索它們是不現(xiàn)實(shí)的。

所以讓我們來(lái)看韓梅梅的情況。她現(xiàn)在已經(jīng)知道如何使用泰勒展開(kāi)來(lái)降低損失計(jì)算量,也知道了什么是葉子節(jié)點(diǎn)中的最佳權(quán)重。唯一值得關(guān)注的是如何探索所有不同的樹(shù)結(jié)構(gòu)。

XGBoost不會(huì)探索所有可能的樹(shù)結(jié)構(gòu),它只是貪婪地構(gòu)建一棵樹(shù),選擇導(dǎo)致最大損失的方法,減少分叉。在上圖中,樹(shù)從節(jié)點(diǎn)I開(kāi)始,根據(jù)標(biāo)準(zhǔn),節(jié)點(diǎn)分為左右分叉。所以我們的實(shí)例一部分被放進(jìn)了左側(cè)的葉子節(jié)點(diǎn),剩下的則去了右側(cè)的葉子節(jié)點(diǎn)?,F(xiàn)在,我們就可以計(jì)算損失值并選擇導(dǎo)致?lián)p失減少最大的分叉。

解決了上述問(wèn)題后,現(xiàn)在韓梅梅就只剩下一個(gè)問(wèn)題:如何選擇分叉標(biāo)準(zhǔn)?XGBoost使用不同的技巧來(lái)提出不同的分割點(diǎn),比如直方圖。對(duì)于這部分,建議去看論文,本文不再作解釋。

XGBoost要點(diǎn)

雖然梯度提升遵循負(fù)梯度來(lái)優(yōu)化損失函數(shù),但XGBoost計(jì)算每個(gè)基學(xué)習(xí)器損失函數(shù)值用的是泰勒展開(kāi)。

XGBoost不會(huì)探索所有可能的樹(shù)結(jié)構(gòu),而是貪婪地構(gòu)建一棵樹(shù)。

XGBoost的正則項(xiàng)會(huì)懲罰具有多個(gè)葉子節(jié)點(diǎn)的樹(shù)結(jié)構(gòu)。

關(guān)于選擇分叉標(biāo)準(zhǔn),強(qiáng)烈建議閱讀論文:arxiv.org/pdf/1603.02754.pdf

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 梯度
    +關(guān)注

    關(guān)注

    0

    文章

    30

    瀏覽量

    10440
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8481

    瀏覽量

    133866

原文標(biāo)題:計(jì)算:XGBoost背后的數(shù)學(xué)之美

文章出處:【微信號(hào):jqr_AI,微信公眾號(hào):論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    串口服務(wù)器品牌排名背后,隱藏著的行業(yè)潛規(guī)則知道嗎?

    在科技飛速發(fā)展的當(dāng)下,串口服務(wù)器作為連接串口設(shè)備與網(wǎng)絡(luò)的重要橋梁,在工業(yè)、金融、交通等眾多領(lǐng)域都有著廣泛應(yīng)用。市場(chǎng)上的串口服務(wù)器品牌繁多,各種品牌排名也讓人眼花繚亂。但是否想過(guò),這些排名背后可能
    的頭像 發(fā)表于 03-27 13:09 ?154次閱讀

    xgboost超參數(shù)調(diào)優(yōu)技巧 xgboost在圖像分類中的應(yīng)用

    一、XGBoost超參數(shù)調(diào)優(yōu)技巧 XGBoost(eXtreme Gradient Boosting)是一種基于梯度提升決策樹(shù)(GBDT)的高效梯度提升框架,在機(jī)器學(xué)習(xí)競(jìng)賽和實(shí)際業(yè)務(wù)應(yīng)用中取得了卓越
    的頭像 發(fā)表于 01-31 15:16 ?730次閱讀

    常見(jiàn)xgboost錯(cuò)誤及解決方案

    XGBoost(eXtreme Gradient Boosting)是一種流行的機(jī)器學(xué)習(xí)算法,用于解決分類和回歸問(wèn)題。盡管它非常強(qiáng)大和靈活,但在使用過(guò)程中可能會(huì)遇到一些常見(jiàn)的錯(cuò)誤。以下是一些常見(jiàn)
    的頭像 發(fā)表于 01-19 11:22 ?1908次閱讀

    使用Python實(shí)現(xiàn)xgboost教程

    使用Python實(shí)現(xiàn)XGBoost模型通常涉及以下幾個(gè)步驟:數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練、模型評(píng)估和模型預(yù)測(cè)。以下是一個(gè)詳細(xì)的教程,指導(dǎo)如何在Python中使用XGBoost。 1. 安裝XGBoos
    的頭像 發(fā)表于 01-19 11:21 ?988次閱讀

    xgboost與LightGBM的優(yōu)勢(shì)對(duì)比

    在機(jī)器學(xué)習(xí)領(lǐng)域,集成學(xué)習(xí)算法因其出色的性能和泛化能力而受到廣泛關(guān)注。其中,XGBoost和LightGBM是兩種非常流行的梯度提升框架。 1. 算法基礎(chǔ) XGBoost(eXtreme
    的頭像 發(fā)表于 01-19 11:18 ?782次閱讀

    xgboost的并行計(jì)算原理

    在大數(shù)據(jù)時(shí)代,機(jī)器學(xué)習(xí)算法需要處理的數(shù)據(jù)量日益增長(zhǎng)。為了提高數(shù)據(jù)處理的效率,許多算法都開(kāi)始支持并行計(jì)算。XGBoost作為一種高效的梯度提升樹(shù)算法,其并行計(jì)算能力是其受歡迎的原因
    的頭像 發(fā)表于 01-19 11:17 ?754次閱讀

    xgboost在圖像分類中的應(yīng)用

    XGBoost(eXtreme Gradient Boosting)是一種高效的機(jī)器學(xué)習(xí)算法,它基于梯度提升框架,通過(guò)構(gòu)建多個(gè)弱學(xué)習(xí)器(通常是決策樹(shù))來(lái)提高模型的性能。XGBoost因其出色的性能
    的頭像 發(fā)表于 01-19 11:16 ?708次閱讀

    傅里葉變換的數(shù)學(xué)原理

    傅里葉變換的數(shù)學(xué)原理主要基于一種將函數(shù)分解為正弦和余弦函數(shù)(或復(fù)指數(shù)函數(shù))的線性組合的思想。以下是對(duì)傅里葉變換數(shù)學(xué)原理的介紹: 一、基本原理 傅里葉級(jí)數(shù) :對(duì)于周期性連續(xù)信號(hào),可以將其表示為傅里葉
    的頭像 發(fā)表于 11-14 09:27 ?1393次閱讀

    知道影響貼片電感發(fā)熱的因素有哪些嗎?

    知道影響貼片電感發(fā)熱的因素有哪些嗎?
    的頭像 發(fā)表于 08-17 14:24 ?713次閱讀
    <b class='flag-5'>你</b><b class='flag-5'>知道</b>影響貼片電感發(fā)熱的因素有哪些嗎?

    知道貼片電感故障時(shí)可能出現(xiàn)的癥狀嗎?

    知道貼片電感故障時(shí)可能出現(xiàn)的癥狀嗎?
    的頭像 發(fā)表于 08-17 14:20 ?637次閱讀
    <b class='flag-5'>你</b><b class='flag-5'>知道</b>貼片電感故障時(shí)可能出現(xiàn)的癥狀嗎?

    知道共模電感用錯(cuò)了會(huì)有什么影響嗎

    電子發(fā)燒友網(wǎng)站提供《知道共模電感用錯(cuò)了會(huì)有什么影響嗎.docx》資料免費(fèi)下載
    發(fā)表于 07-30 10:42 ?0次下載

    關(guān)于定位系統(tǒng)技術(shù)知道多少?

    定位系統(tǒng)在如今這個(gè)沒(méi)有隱私的社會(huì),已不是稀奇的技術(shù)。 不管是在大街上走還是在商場(chǎng)里逛, 只要想知道的行蹤就被定位系統(tǒng)鎖定了。就像我們看的西部大片,罪犯在這邊打電話,F(xiàn)BI在那邊定位,唧唧幾聲
    的頭像 發(fā)表于 07-12 11:16 ?584次閱讀
    關(guān)于定位系統(tǒng)技術(shù)<b class='flag-5'>你</b><b class='flag-5'>知道</b>多少?

    神經(jīng)網(wǎng)絡(luò)在數(shù)學(xué)建模中的應(yīng)用

    數(shù)學(xué)建模是一種利用數(shù)學(xué)方法和工具來(lái)描述和分析現(xiàn)實(shí)世界問(wèn)題的過(guò)程。神經(jīng)網(wǎng)絡(luò)是一種模擬人腦神經(jīng)元結(jié)構(gòu)和功能的計(jì)算模型,可以用于解決各種復(fù)雜問(wèn)題。在數(shù)學(xué)建模中,神經(jīng)網(wǎng)絡(luò)可以作為一種有效的工具,幫助我們更好
    的頭像 發(fā)表于 07-02 11:29 ?1416次閱讀

    工業(yè)控制器的制作與數(shù)學(xué)的關(guān)系

    數(shù)學(xué)在工業(yè)控制器設(shè)計(jì)中的應(yīng)用 工業(yè)控制器的設(shè)計(jì)涉及到多個(gè)方面,包括硬件設(shè)計(jì)、軟件設(shè)計(jì)、系統(tǒng)架構(gòu)設(shè)計(jì)等。在這些設(shè)計(jì)過(guò)程中,數(shù)學(xué)發(fā)揮著關(guān)鍵作用。 1.1 硬件設(shè)計(jì)中的數(shù)學(xué)應(yīng)用 工業(yè)控制器的硬件設(shè)計(jì)主要
    的頭像 發(fā)表于 06-16 14:34 ?699次閱讀

    知道貼片電感上面的數(shù)字代表什么嗎

    貼片電感大家都比較熟悉,我們知道貼片電感的表面通常會(huì)標(biāo)有一串?dāng)?shù)字,那么,知道這上面的數(shù)字代表什么意思嗎?本篇我們就來(lái)給大家簡(jiǎn)單科普一下。 1、標(biāo)稱值:貼片電感上的數(shù)字通常是其標(biāo)稱電感值。這個(gè)值
    的頭像 發(fā)表于 05-10 11:10 ?1034次閱讀