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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

推荐系统遇到曝光偏差怎么办?用对比学习!

發(fā)布時(shí)間:2025/3/8 windows 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 推荐系统遇到曝光偏差怎么办?用对比学习! 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

推薦系統(tǒng)中常常需要在億級別的候選集中找到上百個(gè)相關(guān)的item,俗稱DCG問題(Deep candidate generation)。通常處理這類問題采用的類似語言建模的方法。然而顯存的推薦系統(tǒng)都存在著曝光偏差,在候選集多的時(shí)候這個(gè)偏差更加的嚴(yán)重,導(dǎo)致模型只學(xué)習(xí)了曝光多的樣本,因此這篇論文《Contrastive Learning for Debiased Candidate Generation in Large-Scale Recommender Systems》使用了對比學(xué)習(xí)去解決曝光偏差問題,該方法已經(jīng)成功部署在淘寶,并且效果有顯著提升。

DCG問題中的對比學(xué)習(xí)

首先我們可以拿到這樣的數(shù)據(jù)集和,D={(xu,t,yu,t): u=1,2,...,N, t=1,2,...Tu},xu,t= {yu,1:(t-1)},即我們在預(yù)估t時(shí)刻用戶要點(diǎn)啥時(shí),用到的是該用戶t時(shí)刻前點(diǎn)擊的所有items。在DCG問題中,我們需要學(xué)習(xí)用戶的encoder和item的encoder把用戶和item映射到一個(gè)空間中,并通過cos相似度找到top k的item,典型的學(xué)習(xí)方式如下,使用最大似然估計(jì)(MLE)去擬合上述數(shù)據(jù)集合:

然而使用觀測到的點(diǎn)擊數(shù)據(jù)訓(xùn)練模型會有嚴(yán)重的曝光偏差問題,對有潛力但沒機(jī)會曝光的item是毀滅性打擊。很多高質(zhì)量的item但是在訓(xùn)練數(shù)據(jù)集中點(diǎn)擊較少,在MLE這種學(xué)習(xí)方式就很難再曝光。

如何理解對比學(xué)習(xí)能解決曝光偏差呢?

論文中使用的對比loss類似Sampled Softmax,先看看Sampled Softmax:

L表示負(fù)采樣的個(gè)數(shù),pn(y|x)是預(yù)先定義好的負(fù)采樣分布,減去logpn(y|x)是為了讓該loss收斂到和MLE相似的結(jié)果。在實(shí)踐中pn(y|x)往往就使用pn(y),pn(y)就等同于流行度,使用該流行度加速收斂,在實(shí)踐中L取值上千。當(dāng)候選集巨大時(shí),sampled softmax效果要優(yōu)于NCE和negative sampling。

接下來我們討論對比學(xué)習(xí)中的contrastive loss,在負(fù)采樣概率分布為pn(y|x),loss如下:

但是我們發(fā)現(xiàn)上式中不再減去logpn(y|x),因此該公式不再與MLE一致了,所以對比學(xué)習(xí)主要是優(yōu)化pn(y|x)這個(gè)分布,使得模型收斂到合適的地方。

對比學(xué)習(xí)為什么能緩解曝光偏差?

讓我們先看下IPW(inverse propensity weighted) loss:

q(y|x)就是調(diào)節(jié)loss的權(quán)重了,它可以是曝光的分布。實(shí)現(xiàn)IPW有兩步,第一步用一個(gè)獨(dú)立的模型(該模型作用就是得到q(y|x))并通過曝光產(chǎn)生的數(shù)據(jù)集擬合MLE loss,第二步擬合IPW loss,然而這種方式效率比較低下。

我們可以證明contrastive loss和IPW可以達(dá)到同樣的效果,這兩種方法都是最小化KL散度,證明過程可以參考論文附錄。

CLRec

從上圖中,我們可以清晰的看到負(fù)采樣的方式,都近似pn(y|x)=pdata(y) (a)就是batch內(nèi)負(fù)采樣,(b)創(chuàng)建了一個(gè)固定大小的FIFO隊(duì)列存取之前見到過的正例,然后用在當(dāng)前batch內(nèi)作為負(fù)樣本。(c)和(b)不同在于隊(duì)列直接緩存了encoder的結(jié)果。

如果是用IPW,很難估計(jì)到準(zhǔn)確的q(y|x),CLRec就用q(y)代替q(y|x),q(y)和pdata(y)有高度相關(guān)性,很容易理解,系統(tǒng)曝光的item是因?yàn)檫@些item點(diǎn)擊率較高,所以q(y)就可以近似pdata(y)。但是簡單的使用pdata(y)進(jìn)行負(fù)采樣雖然可以緩解偏差,但是計(jì)算成本很高也不能保證每個(gè)item在一個(gè)epoch內(nèi)被采樣到,因此設(shè)計(jì)了(b)和(c)這種隊(duì)列采樣方法。(b)和(c)兩種方法中,如果隊(duì)列大小就是batch_size,那就等同于(a)方法。為了使得泛化效果更好,我們需要上千負(fù)樣本,因此選擇一個(gè)比較大的隊(duì)列大小,但是較小的batch size去節(jié)約內(nèi)存。e.g. batch size = 256 queue size = 2560。(b)和(c)本質(zhì)區(qū)別時(shí)(c)需要更多steps才能收斂,因?yàn)樘荻然貍鞑坏截?fù)樣本,但是由于訓(xùn)練速度提升了,整體訓(xùn)練時(shí)間(c)是優(yōu)于(b)的。論文中還提到了Multi-CLRec,緩解多意圖偏差,感興趣的可以看原文。

實(shí)驗(yàn)

論文中的實(shí)驗(yàn)持續(xù)了至少4個(gè)月,離線評估糾偏時(shí),比較了sampled softmax和CLRec,在不同loss下我們可以看到CLRec顯著提高了多樣性(提升了1倍),并且從曝光分布我們可以看到sampled softmax更擬合訓(xùn)練集的分布而CLRec學(xué)到了一個(gè)相對不同的分布從而緩解了曝光偏差:

如果改變分布就是好的,那隨機(jī)出豈不是更好?所以還必須對比點(diǎn)擊率和recall才能真正說明CLRec是有效的,從下圖我們可以看到CLRec提升了點(diǎn)擊率和Recall:

參考文獻(xiàn)

1、Contrastive Learning for Debiased Candidate Generation in Large-Scale Recommender Systems arxiv.org/pdf/2005.1296

總結(jié)

以上是生活随笔為你收集整理的推荐系统遇到曝光偏差怎么办?用对比学习!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。