GBDT與LR融合提升廣告點擊率預估模型


1GBDT和LR融合
     LR模型是線性的,處理能力有限,所以要想處理大規模問題,需要大量人力進行特征工程,組合相似的特征,例如user和Ad維度的特征進行組合。
     GDBT天然適合做特征提取,因為GBDT由回歸樹組成所以, 每棵回歸樹就是天然的有區分性的特征及組合特征,然后給LR模型訓練,提高點擊率預估模型(很多公司技術發展應用過,本人認為dnn才是趨勢)。
     例如,輸入樣本x,GBDT模型得到兩顆樹tree1和tree2,遍歷兩顆樹,每個葉子節點都是LR模型的一個維度特征,在求和每個葉子*權重及時LR模型的分類結果。

 

2廣告長尾性
     1)gbdt和隨機森林rf的對比:
     rf主要選擇對大多數樣本有區分度的特征;gbdt的過程,前面樹針對大多數樣本有區分 ,后面樹針對殘差依然較大的樣本,即針少數的對長尾樣本。更適合ctr模型預估。
     2)針對廣告的長尾性,廣告id這個特征就很重要,比如:某少量長尾用戶就喜歡點某類廣告主的廣告。
     方案:分別針對ID類和非ID類建樹,ID類樹:用於發現曝光充分的ID對應的有區分性的特征及組合特征;非ID類樹:用於曝光較少的廣告。

 

 
3gbdt得到的特征維度
     維度會降低,總維度是所有葉子節點數之和。
 
4gdbt模型原理
     1)BT回歸樹
    年齡預測:簡單起見訓練集只有4個人,A,B,C,D,他們的年齡分別是14,16,24,26。其中A、B分別是高一和高三學生;C,D分別是應屆畢業生和工作兩年的員工。
1BT回歸樹:顯然容易過擬合,特征太細了,只要葉子允許夠多可以達到百分百的准確率,但性能並不好。
     2)GDBT模型
     (1)最小化均方誤差特,確定特征:購物金額的分割點:
     (2)計算殘差=預測值-真實值,真實值是葉子節點均值,特征:百度知道提問:
     (3)殘差為0,停止迭代,輸出預測結果,真實值=初始值+殘差之和

A: 14歲高一學生,購物較少,經常問學長問題;預測年齡A = 15 – 1 = 14

B: 16歲高三學生;購物較少,經常被學弟問問題;預測年齡B = 15 + 1 = 16

C: 24歲應屆畢業生;購物較多,經常問師兄問題;預測年齡C = 25 – 1 = 24

D: 26歲工作兩年員工;購物較多,經常被師弟問問題;預測年齡D = 25 + 1 = 26 

 
 
  5 GDBT和Adaboost公式算法層級的解釋
    Ada boost是根據分錯的樣本 
    GDBT是擬合梯度(殘差)
 
  (1)梯度下降和梯度提升的區別聯系
    梯度下降:參數=迭代的增量累加和,特征維度
    梯度提升:參數=迭代的函數增量累加和,分類器(回歸樹or羅輯回歸)維度
    所以boosting就是一個加法模型
 
  (2) gradient boosting tree  (Gradient Boosting = Gradient Descent + Boosting)
目標函數:
梯度:對分類器求導數
eg:
    1 m個樣本集: ,label改寫為殘差 (殘差就是目標函數最小化1/2* 的梯度)
    2 訓練,相當於回歸樹擬合梯度,最后模型一個函數加法模型
 
 
 (3) Adaboost
    CART回歸樹分類器對樣本訓練分類,等到分類器誤差
    1根據分類器誤差計算每個分類器對權重
    2根據分類器誤差計算每個樣本的權重
    輸出加法模型,累加每個分類器權重*分類器函數
 
總結:
原則1:沒有免費的午餐,沒有一個模型在所有數據集上優於另一個模型。
原則2:剃姆刀原則,效果一樣的情況下選擇簡單的模型。eg LR和GDBT效果一樣的情況下,盡量選擇LR。
 
 
 
 
 
 
參考
 
 


免責聲明!

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



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