Regression

線性回歸的梯度提升 - 為什麼它不起作用?

  • December 16, 2015

在學習梯度提升時,我還沒有聽說過關於該方法用於構建和集成模型的“弱分類器”的屬性的任何限制。但是,我無法想像使用線性回歸的 GB 應用程序,事實上,當我執行了一些測試時 - 它不起作用。我正在使用殘差平方和的梯度測試最標準的方法,並將後續模型加在一起。

明顯的問題是第一個模型的殘差以這樣的方式填充,以至於實際上沒有回歸線可以擬合了。我的另一個觀察結果是,後續線性回歸模型的總和也可以表示為單個回歸模型(添加所有截距和相應的係數),所以我無法想像如何改進模型。最後一個觀察結果是線性回歸(最典型的方法)使用殘差平方和作為損失函數——與 GB 使用的相同。

我還考慮過降低學習率或每次迭代只使用預測變量的一個子集,但最終仍然可以總結為單個模型表示,所以我想它不會帶來任何改進。

我在這裡想念什麼?線性回歸是否不適合與梯度提升一起使用?是因為線性回歸使用殘差平方和作為損失函數嗎?弱預測器是否有任何特殊限制,以便它們可以應用於梯度提升?

我在這裡想念什麼?

我不認為你真的錯過了什麼!

另一個觀察結果是,後續線性回歸模型的總和也可以表示為單個回歸模型(添加所有截距和相應的係數),所以我無法想像如何改進模型。最後一個觀察結果是線性回歸(最典型的方法)使用殘差平方和作為損失函數——與 GB 使用的相同。

在我看來,你把它釘在了那裡,並給出了一個簡短的證明,證明線性回歸在這種情況下勝過提升線性回歸。

為了迂腐,這兩種方法都試圖解決以下優化問題

線性回歸只是觀察到你可以直接解決它,通過找到線性方程的解

這會自動為您提供最佳的價值出於所有的可能性。

無論您的弱分類器是單變量回歸還是多變量回歸,Boosting 都會為您提供一系列係數向量. 如您所見,最終的模型預測是一個總和,並且具有與完整線性回歸器相同的函數形式

選擇這些步驟中的每一個以進一步減少平方誤差的總和。但是我們可以通過一開始就執行完整的線性回歸,在這個函數形式中找到最小可能的平方誤差和。

在這種情況下,增強的一種可能的防禦可能是它提供的隱式正則化。可能(我沒有玩過這個)您可以使用梯度增強器的早期停止功能以及交叉驗證來停止完整的線性回歸。這將為您的回歸提供正則化,並可能有助於過度擬合。這不是特別實用,因為在此設置中具有非常有效且易於理解的選項,例如嶺回歸和彈性網絡。

當周圍沒有簡潔的函數形式時,Boosting 就會大放異彩。提升決策樹讓回歸器/分類器的功能形式緩慢演變以適應數據,通常會導致無法通過手和眼睛想像的複雜形狀。當需要一個簡單的函數形式時*,* boosting 不會幫助你找到它(或者至少可能是一種相當低效的找到它的方法)。

引用自:https://stats.stackexchange.com/questions/186966

comments powered by Disqus