為什么常說GBDT用負梯度近似殘差?


殘差=真值-預測值,明明可以直接計算。

為什么要引入麻煩的梯度?有什么用嗎?

實際上這是因果倒置,GBDT想要計算的是負梯度。參考https://www.zhihu.com/question/63560633

1、我們知道,函數中下降最快的方向是導數方向,同理:GBDT中,損失函數減小最快的方向也是本身的導數方向。

2、如上圖所示:GBDT中,損失函數的導數L(f(x))是關於擬合函數f(x)的復合函數。所以每棵樹擬合時,擬合損失函數的導數方向,就是擬合損失函數減小最快的方向,即:損失函數的負梯度方向。

3、再次強調:在gbdt模型中,我們需要擬合的是損失函數的負梯度,與殘差沒有一點關系。

4、巧合的是,當損失函數為均方誤差時,損失函數的負梯度跟殘差一模一樣。這使得模型看起來就像在擬合殘差一樣,也就是所謂的殘差代替了負梯度。實際上我們擬合的還是損失函數的負梯度,只是這個負梯度的表達式跟殘差意外一樣了而已。


作者:ADVANCE ALGO
鏈接:https://www.zhihu.com/question/63560633/answer/1684606783
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM