chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

XGBoost原理概述 XGBoost和GBDT的區(qū)別

WpOh_rgznai100 ? 來源:網(wǎng)絡(luò)整理 ? 2019-07-16 18:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者 |梁云1991

一、XGBoost和GBDT

xgboost是一種集成學(xué)習(xí)算法,屬于3類常用的集成方法(bagging,boosting,stacking)中的boosting算法類別。它是一個加法模型,基模型一般選擇樹模型,但也可以選擇其它類型的模型如邏輯回歸等。

xgboost屬于梯度提升樹(GBDT)模型這個范疇,GBDT的基本想法是讓新的基模型(GBDT以CART分類回歸樹為基模型)去擬合前面模型的偏差,從而不斷將加法模型的偏差降低。相比于經(jīng)典的GBDT,xgboost做了一些改進(jìn),從而在效果和性能上有明顯的提升(劃重點面試???/strong>)。第一,GBDT將目標(biāo)函數(shù)泰勒展開到一階,而xgboost將目標(biāo)函數(shù)泰勒展開到了二階。保留了更多有關(guān)目標(biāo)函數(shù)的信息,對提升效果有幫助。第二,GBDT是給新的基模型尋找新的擬合標(biāo)簽(前面加法模型的負(fù)梯度),而xgboost是給新的基模型尋找新的目標(biāo)函數(shù)(目標(biāo)函數(shù)關(guān)于新的基模型的二階泰勒展開)。第三,xgboost加入了和葉子權(quán)重的L2正則化項,因而有利于模型獲得更低的方差。第四,xgboost增加了自動處理缺失值特征的策略。通過把帶缺失值樣本分別劃分到左子樹或者右子樹,比較兩種方案下目標(biāo)函數(shù)的優(yōu)劣,從而自動對有缺失值的樣本進(jìn)行劃分,無需對缺失特征進(jìn)行填充預(yù)處理。

此外,xgboost還支持候選分位點切割,特征并行等,可以提升性能。

二、XGBoost原理概述

下面從假設(shè)空間,目標(biāo)函數(shù),優(yōu)化算法3個角度對xgboost的原理進(jìn)行概括性的介紹。

1,假設(shè)空間

2,目標(biāo)函數(shù)

3,優(yōu)化算法

基本思想:貪心法,逐棵樹進(jìn)行學(xué)習(xí),每棵樹擬合之前模型的偏差。

三、第t棵樹學(xué)什么?

要完成構(gòu)建xgboost模型,我們需要確定以下一些事情。

1,如何boost? 如果已經(jīng)得到了前面t-1棵樹構(gòu)成的加法模型,如何確定第t棵樹的學(xué)習(xí)目標(biāo)?

2,如何生成樹?已知第t棵樹的學(xué)習(xí)目標(biāo)的前提下,如何學(xué)習(xí)這棵樹?具體又包括是否進(jìn)行分裂?選擇哪個特征進(jìn)行分裂?選擇什么分裂點位?分裂的葉子節(jié)點如何取值?

我們首先考慮如何boost的問題,順便解決分裂的葉子節(jié)點如何取值的問題。

四、如何生成第t棵樹?

xgboost采用二叉樹,開始的時候,全部樣本都在一個葉子節(jié)點上。然后葉子節(jié)點不斷通過二分裂,逐漸生成一棵樹。

xgboost使用levelwise的生成策略,即每次對同一層級的全部葉子節(jié)點嘗試進(jìn)行分裂。對葉子節(jié)點分裂生成樹的過程有幾個基本的問題:是否要進(jìn)行分裂?選擇哪個特征進(jìn)行分裂?在特征的什么點位進(jìn)行分裂?以及分裂后新的葉子上取什么值?葉子節(jié)點的取值問題前面已經(jīng)解決了。我們重點討論幾個剩下的問題。

1,是否要進(jìn)行分裂?

根據(jù)樹的剪枝策略的不同,這個問題有兩種不同的處理。如果是預(yù)剪枝策略,那么只有當(dāng)存在某種分裂方式使得分裂后目標(biāo)函數(shù)發(fā)生下降,才會進(jìn)行分裂。但如果是后剪枝策略,則會無條件進(jìn)行分裂,等樹生成完成后,再從上而下檢查樹的各個分枝是否對目標(biāo)函數(shù)下降產(chǎn)生正向貢獻(xiàn)從而進(jìn)行剪枝。xgboost采用預(yù)剪枝策略,只有分裂后的增益大于0才會進(jìn)行分裂。

2,選擇什么特征進(jìn)行分裂?

xgboost采用特征并行的方法進(jìn)行計算選擇要分裂的特征,即用多個線程,嘗試把各個特征都作為分裂的特征,找到各個特征的最優(yōu)分割點,計算根據(jù)它們分裂后產(chǎn)生的增益,選擇增益最大的那個特征作為分裂的特征。

3,選擇什么分裂點位?

xgboost選擇某個特征的分裂點位的方法有兩種,一種是全局掃描法,另一種是候選分位點法。

全局掃描法將所有樣本該特征的取值按從小到大排列,將所有可能的分裂位置都試一遍,找到其中增益最大的那個分裂點,其計算復(fù)雜度和葉子節(jié)點上的樣本特征不同的取值個數(shù)成正比。

而候選分位點法是一種近似算法,僅選擇常數(shù)個(如256個)候選分裂位置,然后從候選分裂位置中找出最優(yōu)的那個。

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

    關(guān)注

    0

    文章

    13

    瀏覽量

    4062
  • XGBoost
    +關(guān)注

    關(guān)注

    0

    文章

    16

    瀏覽量

    2388

原文標(biāo)題:30分鐘看懂XGBoost的基本原理

文章出處:【微信號:rgznai100,微信公眾號:rgznai100】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    PyInstaller打包xgboost算法包等可能出現(xiàn)問題是什么

    PyInstaller 打包 xgboost算法包等可能出現(xiàn)問題
    發(fā)表于 07-16 14:35

    基于xgboost的風(fēng)力發(fā)電機(jī)葉片結(jié)冰分類預(yù)測 精選資料分享

    xgboost中文叫做極致梯度提升模型,官方文檔鏈接:https://xgboost.readthedocs.io/en/latest/tutorials/model.html2018年9月6日筆記
    發(fā)表于 07-12 06:58

    基于xgboost的風(fēng)力發(fā)電機(jī)葉片結(jié)冰分類預(yù)測 精選資料下載

    xgboost中文叫做極致梯度提升模型,官方文檔鏈接:https://xgboost.readthedocs.io/en/latest/tutorials/model.html2018年9月6日筆記
    發(fā)表于 07-12 06:44

    通過學(xué)習(xí)PPT地址和xgboost導(dǎo)讀和實戰(zhàn)地址來對xgboost原理和應(yīng)用分析

    關(guān)于xgboost的原理網(wǎng)絡(luò)上的資源很少,大多數(shù)還停留在應(yīng)用層面,本文通過學(xué)習(xí)陳天奇博士的PPT和xgboost導(dǎo)讀和實戰(zhàn)地址,希望對xgboost原理進(jìn)行深入理解。
    的頭像 發(fā)表于 01-02 10:18 ?6817次閱讀
    通過學(xué)習(xí)PPT地址和<b class='flag-5'>xgboost</b>導(dǎo)讀和實戰(zhàn)地址來對<b class='flag-5'>xgboost</b>原理和應(yīng)用分析

    面試中出現(xiàn)有關(guān)Xgboost總結(jié)

    介紹 Xgboost是GB算法的高效實現(xiàn),xgboost中的基學(xué)習(xí)器除了可以是CART(gbtree)也可以是線性分類器(gblinear)
    發(fā)表于 03-20 16:48 ?4598次閱讀

    基于Xgboost算法的高錳鋼表面粗糙度預(yù)測

    基于Xgboost算法的高錳鋼表面粗糙度預(yù)測
    發(fā)表于 06-19 15:09 ?14次下載

    在幾個AWS實例上運行的XGBoost和LightGBM的性能比較

    XGBoost(eXtreme Gradient Boosting)是一個在Gradient Boosting Decision Tree(GBDT)框架下的開源機(jī)器學(xué)習(xí)庫(https://github.com/dmlc/xgboost
    的頭像 發(fā)表于 10-24 10:24 ?1861次閱讀

    XGBoost超參數(shù)調(diào)優(yōu)指南

    對于XGBoost來說,默認(rèn)的超參數(shù)是可以正常運行的,但是如果你想獲得最佳的效果,那么就需要自行調(diào)整一些超參數(shù)來匹配你的數(shù)據(jù),以下參數(shù)對于XGBoost非常重要
    的頭像 發(fā)表于 06-15 18:15 ?1075次閱讀
    <b class='flag-5'>XGBoost</b>超參數(shù)調(diào)優(yōu)指南

    XGBoost中無需手動編碼的分類特征

    XGBoost 中無需手動編碼的分類特征
    的頭像 發(fā)表于 07-05 16:30 ?983次閱讀

    XGBoost 2.0介紹

    XGBoost是處理不同類型表格數(shù)據(jù)的最著名的算法,LightGBM 和Catboost也是為了修改他的缺陷而發(fā)布的。近日XGBoost發(fā)布了新的2.0版,本文除了介紹讓XGBoost的完整歷史以外
    的頭像 發(fā)表于 11-03 10:12 ?770次閱讀
    <b class='flag-5'>XGBoost</b> 2.0介紹

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

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

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

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

    xgboost的并行計算原理

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

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

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

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

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