高維稀疏特徵的時候,lr 的效果會比 gbdt 好

高維稀疏特徵的時候,lr 的效果會比 gbdt 好,爲什麼?

  • 這個問題我也是思考了好久,在平時的項目中也遇到了不少 case,確實高維稀疏特徵的時候,使用 gbdt 很容易過擬合。
  • 但是還是不知道爲啥,後來深入思考了一下模型的特點,發現了一些有趣的地方。
  • 假設有1w 個樣本, y類別0和1,100維特徵,其中10個樣本都是類別1,而特徵 f1的值爲0,1,且剛好這10個樣本的 f1特徵值都爲1,其餘9990樣本都爲0(在高維稀疏的情況下這種情況很常見),我們都知道這種情況在樹模型的時候,很容易優化出含一個使用 f1爲分裂節點的樹直接將數據劃分的很好,但是當測試的時候,卻會發現效果很差,因爲這個特徵只是剛好偶然間跟 y擬合到了這個規律,這也是我們常說的過擬合。但是當時我還是不太懂爲什麼線性模型就能對這種 case 處理的好?照理說 線性模型在優化之後不也會產生這樣一個式子:y = W1*f1 + Wi*fi+….,其中 W1特別大以擬合這十個樣本嗎,因爲反正 f1的值只有0和1,W1過大對其他9990樣本不會有任何影響。
  • 後來思考後發現原因是因爲現在的模型普遍都會帶着正則項,而 lr 等線性模型的正則項是對權重的懲罰,也就是 W1一旦過大,懲罰就會很大,進一步壓縮 W1的值,使他不至於過大,而樹模型則不一樣,樹模型的懲罰項通常爲葉子節點數和深度等,而我們都知道,對於上面這種 case,樹只需要一個節點就可以完美分割9990和10個樣本,懲罰項極其之小.
  • 這也就是爲什麼在高維稀疏特徵的時候,線性模型會比非線性模型好的原因了:帶正則化的線性模型比較不容易對稀疏特徵過擬合。
發佈了40 篇原創文章 · 獲贊 35 · 訪問量 11萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章