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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【机器学习】xgboost系列丨xgboost原理及公式推导

發布時間:2025/3/12 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【机器学习】xgboost系列丨xgboost原理及公式推导 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  • 建樹過程中如何選擇使用哪個特征哪個值來進行分裂?

  • 什么時候停止分裂?

  • 如何計算葉節點的權值?

  • 建完了第一棵樹之后如何建第二棵樹?

  • 為防止過擬合,XGB做了哪些改進


樹的集成

本文主要針對xgboost的論文原文中的公式細節做了詳細的推導,對建樹過程進行詳細分析。

對于樣本個數為n特征個數為m的數據集 ,其中。

樹的集成學習方法使用K個增量函數來預測輸出:

為子模型的預測函數,每個即是一棵樹。

函數空間即樹的搜索空間。其中q為每棵樹的結構,q將域中每個樣本對應到唯一的葉節點上,最終產生T個葉節點,則是該葉節點對應的權重,w即從節點到權重的映射(權重即葉節點的值)。每個對應一個獨立的樹結構q和該樹每個葉節點的權重w。(這里樹結構是指每個分裂點和對應的分裂值)。可以看做一個分段函數,q對應的不同的分段,w對應的為該分段的值,即分段到值的映射。

對我們的預測函數,目標函數為:

從公式1中可以看出,對于最終的預測函數,其參數為一個個的函數,因為參數為函數,所以無法使用傳統的優化方法在歐氏空間中進行優化,而是采用了加法模型來進行訓練。

boost的思想是將一系列弱分類器串行的組合起來,在前面的分類器的基礎上迭代的優化新的分類器。

首先我們對所有的數據默認預測一個固定值(對應xgboost中參數base_score,注意并不等于base_score,而是經過Sigmoid函數映射后的值),在此基礎上根據該預測值與真實y值的損失 ,建立第一棵樹,之后每次迭代時都是根據其之前所有樹做出的預測之和與真實y值的損失來建立新樹。也就是每次迭代建樹時用新樹來優化前一個樹的損失 。

為第t棵樹對第i個樣本做出的預測。我們每次添加新樹的時候,要優化的目標函數為上一個樹產生的損失。

因此我們建立第t棵樹時有損失函數:

為新建的這棵樹做出的預測,為之前所有的樹預測值之和,即是新建了當前這棵樹后模型做出的預測值,求其與真實值之間的損失(注意這里是損失不是殘差,這里的可以是log_loss, mse等)。

泰勒展開

gbdt的目標函數與xgboost區別就是帶不帶正則項,也就是上面式子中的。gbdt對損失函數的優化是直接使用了損失函數的負梯度,沿著梯度下降的方向來減小損失,其是也就是一階泰勒展開。而xgboost在這里使用了二階泰勒展開,因為包含了損失函數的二階信息,其優化的速度大大加快。

下面來看一下泰勒展開的推導。首先我們來復習一下泰勒定理:

設n是一個正整數。如果定義在一個包含a的區間上的函數f在a點處n+1次可導,那么對于這個區間上的任意x,則有:其中的多項式稱為函數在a處的泰勒展開式,剩余的是泰勒公式的余項,是的高階無窮小。?

該公式經過變換可以得到二階展開式:

對于式子:

可以這樣分析,為預測值和真實值之間的損失,為常量,因此是以預測值為自變量的函數,當建立新樹給出新的預測后,相當于在上一次的預測上增加了一個無窮小量

則有

其中真實標簽是常數,是上次迭代求出的值即這里的,為無窮小量。有了這個對應之后。

因此我們建立第t棵樹時有損失函數:

令損失函數的一階、二階偏導分別為,其中,

式中為常量,優化的是損失函數的最小值,因此常量值可以從損失函數中去掉。上式可簡化為:

葉節點權重

式中正則項進行展開,得:

其中是新建的樹的值,對于每個樣本來說,就是對應的葉節點的權重。定義為分到葉節點的樣本(葉節點總數為T,樣本總數為n)

上式是對本次建樹時n個樣本的損失求和,下面分兩步:先對每個葉節點的樣本損失求和,再對所有葉節點求和,兩者結果一樣。

對于葉節點上的損失:

對于當前的樹結構求使最小,顯然這是個一元二次方程求最小值問題。

可以得到葉節點權重的最優值:


分裂準則

上面是對單個葉節點計算出了最優權重,對于新建的這樹(樹結構)在此權重下對應的的最小損失為每個葉節點上樣本最小損失之和(將上式中的代入):

在樹結構下產生的最優損失可以做為樹結構的評價函數,也就是作為樹分裂時候的評價指標。

令為每次分裂時分到左子樹上的樣本,為每次分裂時分到右子樹上的樣本,有。則在該次分裂后損失的減小量為:

因此將分裂時增益定義為:

我們在建樹的過程(也就是求分段函數的過程)包括兩步:一是選擇分裂依據的特征和特征值(將自變量分段),二是確定葉節點的權重(確定每段對應的函數值)。劃分的依據準則是Gain,其實也就是損失函數的解析解,劃分后葉節點的權重是使函數達到解析解的權重。

從最優化的角度來看:GBDT采用的是數值優化的思維, 用的最速下降法去求解Loss Function的最優解, 其中用CART決策樹去擬合負梯度, 用牛頓法求步長。XGboost用的解析的思維, 對Loss Function展開到二階近似, 求得解析解, 用解析解作為Gain來建立決策樹, 使得Loss Function最優.

除了對目標函數添加正則項外,為了減小過擬合,xgboost還使用了列采樣和縮減方法(Shrinkage,即Learning rate)。

損失函數計算

對于二分類問題常使用log損失作為損失函數,下面推導一下log loss的一階梯度G和海森矩陣H。:

其中p為預測概率。若為預測值,則有:

因此:

即:

往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯《統計學習方法》的代碼復現專輯 AI基礎下載機器學習的數學基礎專輯 獲取本站知識星球優惠券,復制鏈接直接打開: https://t.zsxq.com/qFiUFMV 本站qq群704220115。加入微信群請掃碼:

總結

以上是生活随笔為你收集整理的【机器学习】xgboost系列丨xgboost原理及公式推导的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 色图综合网 | 亚洲女人初尝黑人巨大 | 中文字幕无码乱码人妻日韩精品 | av首页在线观看 | 极品少妇xxxx精品少妇偷拍 | 欧美久久网 | 中文字幕免费高 | 国产又粗又猛又爽又黄91 | 久久久久久少妇 | 国产免费av在线 | 96国产在线 | 免费毛片大全 | 91精品国产高清一区二区三密臀 | 日韩美女激情 | 亚洲福利视频导航 | 久久久久久欧美精品se一二三四 | 天天干一干| 高h教授1v1h喂奶 | 午夜福利电影一区二区 | 午夜影院免费在线观看 | 涩涩资源网 | 美女扒开让男人桶爽 | 乱色精品无码一区二区国产盗 | 中文字幕观看 | 亚洲福利影视 | 福利视频免费看 | 亚洲AV无码精品色毛片浪潮 | 黄页网址大全免费观看 | 狠狠干影视 | www.日韩精品 | 91视频精选 | 香蕉伊思人视频 | 国产真实乱 | 夜夜爽妓女8888视频免费观看 | 欧美在线精品一区 | 亚洲第一成年人网站 | 日韩美女一级片 | 超碰www| 国产高清自拍一区 | 人人爽人人爽人人 | 国产一区a | 亚洲女人天堂色在线7777 | 欧美最猛性xxxx | 蜜桃av在线免费观看 | 亚洲午夜福利在线观看 | 夜夜爽妓女8888视频免费观看 | 亚洲第一中文字幕 | 催眠调教后宫乱淫校园 | 五月天激情综合网 | 久久久久久久久免费 | 寂寞少妇让水电工爽hd | 国产精品麻豆成人av电影艾秋 | 国产一区二区女内射 | 狠狠艹av | 秘密基地动漫在线观看免费 | 一级片免费网址 | 亚洲天堂美女视频 | 麻豆成人精品国产免费 | 国产精品久久久久久久一区探花 | 久久国产精品无码一级毛片 | 欧美激情 国产精品 | 亚洲性事 | 人人插人人 | 黄网站在线播放 | 黄色国产在线观看 | 日韩草逼视频 | 国产熟妇搡bbbb搡bbbb搡 | 国语对白真实视频播放 | 亚洲欧美久久 | 五月天综合在线 | 国产精品入口夜色视频大尺度 | 被灌满精子的波多野结衣 | 光棍天堂av | 色播放 | 欧美日韩八区 | av福利在线免费观看 | 久久久免费看 | 亚洲精品无码久久 | 青娱乐在线播放 | 国产伦精品一区二区. | 啪啪五月天 | 日韩三区四区 | jlzzjlzz亚洲女人 | 巨胸挤奶视频www网站 | 精品少妇 | 亚洲v欧美 | 欧美日本国产在线 | 草碰在线| 两性视频久久 | 网站久久 | 日本一级大毛片a一 | 日韩欧美亚洲 | 亚洲av无码专区首页 | av免费观看不卡 | 国产视频污在线观看 | 在线免费黄色 | av片在线观看免费 | 国产精品无码网站 | 亚洲国产91 |