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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

embedding亦福亦祸?XGBoost与LightGBM的新机遇

發布時間:2024/7/5 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 embedding亦福亦祸?XGBoost与LightGBM的新机遇 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文 | 水哥
源 | 知乎

Saying

1. 小的性能差異在容易實現面前一文不值,這一點是XGBoost和LightGBM的最大優勢
2. 沒能與embedding很好地結合無疑是樹模型的災難,吃不下巨量的新數據,也打不過DNN,除了一些規模比較小的公司,樹模型在精排中已經滅絕了
3. 但沒能與embedding很好地結合卻帶給樹模型無限生機,在每一個需要模型但又不能上太重模型的場合,樹模型都可以靈活的存在。以這種方式,樹模型在推薦系統中獲得了永生
4. 想要成為精排模型的必要不充分條件是,新出現的特征/取值不會對訓練部署流程有任何中斷或者形式上的改變

這是【從零單排推薦系統】系列的第15講。樹模型在推薦中應用,算法上的發展比較簡單,從決策樹,到基于樹的Gradient Boosting Machine,包括上一講的GBDT都是抓小點和縫合為主。雖然XGBoost和LightGBM在GBDT的基礎上各自還做了一些改進,但都是屬于修補性質的。這兩個工作更加為人熟知的是工具上的發展越來越好,開源的實現是很多人打比賽刷榜的利器。在實踐中,好用的框架/工具就是算法長盛不衰的秘訣。

本講的重點是一個很有意思的,別的地方沒有討論過的問題:在kaggle等比賽中,樹模型非常強勢,但是在實際業務中,樹模型幾乎不會成為精排的選擇,為什么會出現這樣一頭熱一頭冷的情況?其本質原因是,要成為不斷接受新數據新特征的門神模型,必須擁有形式上的不變性。

XGBoost[1]:更加精致的GBM

我們先延續上一講的GBDT的推導來介紹XGBoost,正如上一講所說,GBM的核心是級聯很多模型,后面的模型學習的都是前面模型綜合后剩下的殘差:

這里的公式含義都和上一講完全保持一致。在這里,我們可以做一個二階的近似,也就是按照泰勒展開到二階項為止:

其中, , 分別表示在上一步對于 的一階,二階偏導。由于的結果基本之前都已經算過了,設現在這步需要擬合的目標是 的話,就有

為了能讓這個式子繼續簡化,可以假設模型結構 是一個回歸樹,即樣本對所有樹都做一次預測,而每棵樹的葉子節點都有權重,最后樣本的概率是這些落入節點的權重的和(可以換個方式來理解:經過一些非線性操作,也就是決策樹決策的過程,最后得到的仍然是一個binary的向量。1的點就是落入的葉子節點,其他則是0,然后相當于用一個LR來做分類)。那么這個模型可以表示為,若 還是一個二范數的正則化,那么把這個代入到上面的式子中得到的就是一個二次項(其中的按照維度拆解,找對稱軸和 《水哥:推薦系統精排之鋒(2):工業LR的稀疏要求(挑戰全網最好懂推導(https://zhuanlan.zhihu.com/p/408205665))》都是一樣的),就可以直接求解了。

算法上,XGBoost對尋找切割點的貪心做了效率上的優化,不是遍歷每一個點,而是先通過特征分布尋找可能成為切割點的候選,在遍歷這些候選的點。在工程上,XGBoost事先把排序結果存在Compressed Sparse Columns Format中,并且用塊壓縮和塊分區來優化IO速度。但工程優化不是這個專欄的重點(主要是我也不會),就不展開講了。

總結來說,相對于GBDT,XGBoost的主要優點有:1.使用了二階項作為更細的近似,精度更高;2. 使用正則項并且把葉子結點個數加入到正則項中,可以控制模型的復雜度;3. 在特征排序上和尋找切割點的過程中都做了并行化處理。

LightGBM[1]:極大加速的GBDT

LightGBM是GBDT的另一種改進版本,它的出發點是從樣本角度和特征角度來簡化GBDT的運算過程:

  • 樣本角度:GBDT對于每一個樣本都要參與運算,而在LightGBM中,給出了一個假設:只有梯度大的哪些樣本才會影響學習的過程,梯度小的樣本是一定程度上可以忽略的?;谶@個假設,我們要做的就是把梯度大的放回去繼續優化,梯度小的丟棄。但是還不是這么簡單的,如果梯度小的全丟了,那么可能會引入bias,所以我們可以選擇梯度大的(也就是排序前top a%)全要,后面的部分中采樣出b%。采樣后的部分要乘以一個系數 ,為啥是這個系數呢?假如采樣后和采樣前均值 沒發生變化,乘完系數之后兩類樣本的比值沒變,這樣可以盡量不讓分布發生變化(有沒有注意到和之前說過的樣本負采樣很像,還記得是哪一講的嗎?)。

  • 特征角度:特征中有很多特征是不會同時為1的,比如有一些one-hot特征,性別,年齡這樣的,一個用戶只會有其中一個值不為0.那么遍歷這樣的所有取值是不太合理的。LightGBM提出把這些不會同時取1的特征合并在一起,行成一個“束”,這樣尋找切割點的時候,遍歷起來會更快,這個就叫做互斥特征捆綁(Exclusive Feature Bundling)。不過在實現上,還有兩個小問題,第一個問題是選擇誰和誰拼成一個新的特征?第二個問題是具體怎么操作?對于第一個問題,lightGBM給出的做法是以特征為頂點,以沖突(同時為1)有多大為邊建圖。每個節點的度是與其他節點沖突的大小,由大到小挨個開始:如果加入一個“束”會導致總的沖突數超過既定閾值 ,就新開一個“束”,反之則加入。對于第二個問題,其實就是把值域合并一下,文章中舉得例子是 的值域是 , 的值域是 ,那么給 加一個10的偏置,再合起來,新的特征值域就是。

上面雖然介紹了現在樹模型比較好用的兩種算法/工具,但是本講的重點其實不是他們的原理,而是在實踐中我們如何選擇是否使用樹模型?如果用的話,用在哪些場合是比較理想的?

因為沒有embedding,樹模型絕跡于精排

我們這兩講提到了很多樹模型的優點,比如它的非線性是非常非線性的。但是大家如果對業界有所了解,就會發現很少在實際業務的精排中看到樹模型的身影,這是為什么?

先拋出結論:因為樹模型不能很好的處理在線學習過程中,源源不斷的出現的ID類型的特征。雖然XGBoost和LightGBM都談了對于未訓練的值如何處理,但在實際場景中這個數字可能會非??鋸?。從冷啟動這個角度來想,如果我們希望我們的平臺是富有活力的平臺,就理應會源源不斷的出現新的item,那么冷啟動的規模就更大。現在的大平臺上,新item的比例應該遠遠超過50%,在這么大的未出現樣本面前,樹模型就顯得捉襟見肘了。不能很好的解決這個問題,樹模型就不能負擔得起精排的重任。

當然,樹模型不是完全沒有想過應對方案。前一講的Facebook那篇文章其實就說了,他們的樹模型是一天一更新的(如果不更新,就會失去樹模型強化分桶的作用)。這個方案當然體現了他們對問題的深入思考,但你也能看得出來這中間的勉強。如果樹模型后面接的環節是一天重新訓練不能收斂的,這個方案還能用嗎?

那么,現在的精排模型怎么解決這個問題?答案就是embedding,每當新出現了ID,我可以開辟一段新的空間來存儲,讓這段embedding保留該特征的信息。一個新的embedding的加入,雖然會引發冷啟動問題,但是對于訓練,部署的流程沒有任何改動。因此,基于embedding的embedding+DNN無往不利。

有的同學可能會說那LR也沒有embedding呀,為什么它可以?我們可以認為LR是有embedding的,但是只有1維,就是之前所說的特征的權重 。在未來還可能有新的形式或者模型出現,但是我認為,不管哪種模型來做精排,新的特征出現時,都不能在訓練部署上出現中斷,或者形式的改變。

目前為止還沒有看到樹模型和embedding很好地結合的例子,或者準確地說是樹模型沒什么加embedding的必要和意義。embedding本質上是把低維的ID映射到一個更高的空間中,記錄更細致的信息(我個人也有一些相關的經驗,比如把所有特征的embedding長度都翻倍,基本上漲幅有大有小,但是從來不會掉點。這表明更大的embedding擁有更多的存儲空間),而決策樹是按照特征本身的信息劃分的。

因為沒有embedding,樹模型得以長生

上面明明說沒有embedding,樹模型都快滅絕了,這里怎么又說長生了,乍一看這和上面的說法不是反著的嗎?

可能這就是所謂的塞翁失馬,焉知非福了。embedding是很強很暴力,但是embedding需要大量的空間(Parameter Server)來存。想想看,如果一個特征的embedding維度是64,原來LR中一臺機器能存下的特征現在就需要64臺機器來存,這是非常可怕的空間消耗。而且推薦系統也不是除了召回粗排精排就沒東西了,還有許許多多小的環節需要模型來預估,難道各個都用embedding+DNN的模型結構嗎?除了占用空間太大,可能其中有的模型ROI也不太高,不如就找個簡單點的模型抗住唄?

這個時候,樹模型就可以大展身手了。既然它不需要embedding,那它就很省空間。一些邊邊角角的地方,需要模型時都可以考慮用它。不要小看這些邊邊角角的場合,有些是發揮很大作用的,舉兩個例子:

  • 判斷一個item處于生命周期中的哪個階段(在后面會講講這個概念,現在可以簡單理解為,一個item有剛開始起量,穩定膨脹,流量下滑和死亡這么幾個階段,根據這個階段可以做不同的針對性決策),此時Item ID做特征顯然是沒有意義的,而是item現在總的曝光量,已經投放了多久,每個階段的曝光,轉化等等。

  • 預測一個用戶第二天是不是還會來,有各種行為特征,比如在某個類別下觀看了多少視頻,用戶已經用了多長時間,今天的總播放時長是多少等等。

  • 這兩個例子都是實踐中使用樹模型的典型場景,也是非常重要的應用場景。第一個場景關系到在線廣告系統中,怎樣為廣告主分配流量。而第二個例子與留存-DAU這個漏斗的優化有關聯。從這兩個例子中歸納一下,當觸發以下兩個條件時,樹模型自動進化為不二選擇

  • 特征中沒有不斷新增的ID類特征,categorical特征可以窮舉,比如年齡,城市等。

  • 當輸入的特征混有各種各樣的categorical,numeric等等類型的特征時,尤其對于像counter(計數類特征,比如用戶在APP上的時間)類很有效果。

  • 經過上面的分析,我們就能理解為什么在工業界,樹模型從精排模型中絕跡了,但在kaggle等比賽中,經常出現樹模型的身影。因為kaggle的比賽大部分是閉集,而且對特征設計要求較高,這種情況很適合樹模型發揮強大的非線性分類能力。

    開集與閉集:以人臉識別為例,閉集的含義是,測試集的人你都見過,只是現在給你的圖片你沒見過。而開集則指的是,測試集中會出現新的人,要判斷這些沒見過的人的圖片之間是否相似。所以在公開數據集里面基本都是固定的人(閉集),而如果是產品則要面對開集場景。

    下期預告

    推薦系統精排之鋒(10):DNN與兩大門派

    往期回顧

    1.召回 粗排 精排,如何各司其職?

    2.拍不完的腦袋:推薦系統打壓保送重排策略

    3.簡單復讀機LR如何成為推薦系統精排之鋒?

    4.召回粗排精排-級聯漏斗(上)

    5.召回粗排精排-級聯漏斗(下)

    6.推薦系統精排:看阿里媽媽再試線性模型

    7.推薦精排之鋒:FM的一小步,泛化的一大步

    8.推薦中使用FNN/PNN/ONN/NFM優化特征交叉

    9.聊聊推薦系統的高階特征交叉問題

    10.真正的高階特征交叉:xDeepFM與DCN-V2

    11.GBDT是如何成為推薦系統頂級工具人的?

    后臺回復關鍵詞【入群

    加入賣萌屋NLP/IR/Rec與求職討論群

    后臺回復關鍵詞【頂會

    獲取ACL、CIKM等各大頂會論文集!

    ?

    [1] XGBoost: A Scalable Tree Boosting System,KDD,2016
    (https://www.kdd.org/kdd2016/papers/files/rfp0697-chenAemb.pdf)

    [2] LightGBM: A Highly Efficient Gradient Boosting Decision Tree,NIPS,2017
    (https://proceedings.neurips.cc/paper/2017/file/6449f44a102fde848669bdd9eb6b76fa-Paper.pdf)

    總結

    以上是生活随笔為你收集整理的embedding亦福亦祸?XGBoost与LightGBM的新机遇的全部內容,希望文章能夠幫你解決所遇到的問題。

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

    主站蜘蛛池模板: 兄弟兄弟全集免费观看 | 一本大道久久 | 成年人视频免费在线观看 | 亚洲一区二区三区在线看 | 香蕉视频色版 | 欧美色综合天天久久综合精品 | 波多野吉衣av | 日本性xxxxx 免费毛片视频网站 | 中国一区二区三区 | 日日爽视频 | 亚洲精品你懂的 | 迈开腿让我尝尝你的小草莓 | 曰韩毛片 | 亚洲精品日韩在线观看 | 少妇高潮惨叫久久久久久 | 日本黄频 | 精品国产a线一区二区三区东京热 | 日韩不卡中文字幕 | 午夜免费一区 | 中文字幕在线观看视频一区 | 日日夜夜网站 | 欧美福利视频在线 | 亚洲第一页视频 | 亚洲无限av | 午夜精品久久久久久久久久久久 | 国产精品毛片一区视频播 | 亚洲精品国产精品国自产观看浪潮 | 九色免费视频 | 极品少妇一区 | 五月婷婷亚洲 | 欧美1级片 | 久久久无码18禁高潮喷水 | 国产911在线观看 | 久天堂 | 日本黄色小片 | 午夜精品导航 | 麻豆国产精品视频 | 特级黄毛片| 亚洲a一区二区 | 色月婷婷 | 国产天天骚 | 正在播放一区二区 | 黑丝扣逼 | 草久视频在线观看 | 美国免费黄色片 | av中文字幕一区 | 亚洲黄页网站 | 国产视频精品视频 | 波多野结衣一区二区三区中文字幕 | 一区二区三区不卡视频 | 国产伦理自拍 | 天天干天天爽天天射 | 韩国精品在线观看 | 久久国产精品免费看 | 好吊日在线观看 | 在线观看成人免费视频 | 美日韩在线视频 | 两个小y头稚嫩紧窄h文 | 男人天堂av电影 | 国产女人爽到高潮a毛片 | 久久婷婷国产 | 亚洲综合视频网 | 色翁荡息又大又硬又粗又爽 | 亚洲成人av网址 | 国产精品视频你懂的 | 久久久精品久久久久 | av在线色 | 成人欧美精品 | 一区二区成人免费视频 | 青青青国产视频 | 手机av在线不卡 | 亚洲天堂网视频 | 日韩一区二区三免费高清在线观看 | 亚洲综合色成人 | 亚洲激情综合网 | 青青艹av| 黄色三级视频网站 | 成人精品视频一区二区三区尤物 | 66av欧美| 四虎成人精品永久免费av | 色丁香久久 | 日本一区二区免费高清视频 | 黄页网站视频 | 亚洲GV成人无码久久精品 | 亚洲乱亚洲 | 中文在线8资源库 | 国产成人无码一区二区三区在线 | 精品久久影视 | 国产网站在线看 | 欧美性大战xxxxx久久久 | 中文字幕乱码视频 | 女同一区 | 久草手机在线 | 亚洲精品一区二区三区四区 | 上原亚衣av一区二区三区 | 国产伦理片在线观看 | 亚洲第一综合色 | 久久精品8 | 亚洲精品久久久久avwww潮水 |