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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

没什么是一次排序解决不了的,如果有,那就One more time

發布時間:2025/3/8 编程问答 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 没什么是一次排序解决不了的,如果有,那就One more time 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Personalized Re-ranking for Recommendation(ResSys'19)

說起排序,對排序的認知還停留在召回階段召回的item經過粗排過濾,剩下較少的item在精排中打分,按epcm或者其他策略挑選出最終要曝光的item。重排是一種考慮到推薦items之間關系和影響的排序模式,常規的推薦系統僅僅考慮<user, item>對的角度,并不會考慮items間作為一個list進行推薦之后的互相影響。

舉個例子,排序模型往往都是point-wise的,一個DNN加豐富的user/item/上下文特征預估點擊率,在召回的100個item候選集中排序取出Top10的item進行推薦展示。但是,在實際情況里,這10個item展示給用戶時是會相互影響的,這樣就導致排序模型線下預估與線上實際點擊情況之間是有偏差的。

那么,產生這種情況的原因是什么呢?

首先是我們在排序階段并沒有考慮到item之間的影響,其次用戶對不同場景(或者邏輯)下看到的item list的反饋是不同的。比如,在信息流場景中,如果展示的20個內容中有同一主題(理財科普),對于有點擊意圖的用戶,類似的內容排在一起時,用戶點擊顏值較高或者知名大V的內容的概率會增大;對于沒有點擊意圖的用戶,展示給用戶更加多樣性的內容,更適合用戶去探索與發現,這時推薦的多樣性就變得更重要了。

Re-rank模型將常規rank模型的輸出作為模型輸入,強化item之間的關系以及item與用戶的關系進行One more time排序。對于不同用戶來說,list中item的分布應該具有比較大的差異。

PRM的模型結構,是一個比較傳統的multi-head結構,輸入Initial List是一個精排模型輸出的推薦集合,然后依次經過輸入層, 編碼層和輸出層三部分后,輸出的Re-ranked List是重排序。

編碼層目標在于整合對列表中物品的相互影響,以及用戶行為和列表中物品的相互影響。這里利用Transformer中self-attention結構來實現任意兩個Item的交叉,從而獲得Item互相間的影響。

在Attention中, Query,Key和Value都是同一個輸入的embedding矩陣,然后經過Multi-Head Attention。公式如下:

經過FFN增強模型和輸入向量不同維度之間的交互,將多個Attention進行stack,組合成更復雜和更高維的交互信息。

經過FFN增強模型和輸入向量不同維度之間的交互,將多個Attention進行stack,組合成更復雜和更高維的交互信息。

最后,以點擊預估作為目標,通過Softmax和Cross-entropy進行訓練后通過Score排序依次展示給用戶。

其中D是展示給用戶的items集合,y是用戶是否點擊。

我們知道,最常見的考慮時序性的模型是RNN和Transformer,所以經常把這兩類模型用在重排模塊,這是很自然的事情。一般的做法是:排序Top結果的物品有序,作為RNN或者Transformer的輸入,RNN或者Transformer明顯可以考慮在特征級別,融合當前物品上下文,也就是排序列表中其它物品,的特征,來從列表整體評估效果。RNN或者Transformer每個輸入對應位置經過特征融合,再次輸出預測得分,按照新預測的得分重新對物品排序,就完成了融合上下文信息,進行重新排序的目的。

除了本篇Re-Rank文章之外,煉丹筆記還分享了《Revisit Recommender System in the Permutation Prospective》一文,論文提出了兩階段的重排序框架PRS(Permutation Retrieve System),分別是PMatch階段和PRank階段,

PMatch一句話總結就是,把上百個item的排列都給list-wise模型預估排列分不現實,PMatch負責挑選出候選的排列。

PRank就比較簡單了,先離線訓練一個模型,該模型輸入是一個長度為n的序列 (x1, x2, ..., xn),然后輸入到Bi-LSTM里,就會得到n個隱向量,每個隱向量concat用戶特征和序列中每個item的原始特征,過mlp預測點擊率即可。

沒什么是一次排序解決不了的,如果有,那就One more time

更多干貨,請關注公眾號:煉丹筆記

總結

以上是生活随笔為你收集整理的没什么是一次排序解决不了的,如果有,那就One more time的全部內容,希望文章能夠幫你解決所遇到的問題。

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