文章名稱
【CIKM-2021】【CS Research, New Delhi, India】CauSeR: Causal Session-based Recommendations for Handling Popularity Bias
核心要點
文章旨在解決Session-Based推薦場景下Popularity帶來的Bias對長尾物品推薦的影響熟空。流行物品的過渡曝光影響了長尾物品的曝光,并且這種偏差會在模型訓(xùn)練過程中不斷被放大视哑。作者認(rèn)為這種影響在1)數(shù)據(jù)收集阵面;2)魔性訓(xùn)練兩個階段都會有影響轻局。數(shù)據(jù)收集時的偏差源于Popularity帶來的Conformity Bias,而模型訓(xùn)練時的偏差來源于樣本不平衡導(dǎo)致的偏差(可以理解為傳統(tǒng)的Popularity Bias)样刷。不同于現(xiàn)有方法仑扑,作者考慮聯(lián)合解決兩種偏差。
方法細(xì)節(jié)
問題引入
如上所述颂斜,流行物品的過渡曝光造成了SRS(session-based RS)模型在學(xué)習(xí)預(yù)測時(分類時)面對的訓(xùn)練樣本是不平衡的夫壁,標(biāo)簽呈現(xiàn)長尾分布,因而會影響模型的性能沃疮。并且盒让,這種偏差在新模型的訓(xùn)練過程中會被逐漸放大,放大偏差的影響主要源于兩個方面司蔬,
- 數(shù)據(jù)收集時候積累的Conformity Bias邑茄,一般是指用戶與物品交互時有從眾心理(可能是線下發(fā)生的);
- 模型訓(xùn)練階段積累的Popularity Bias俊啼,一般是指模型見到的樣本是不平衡的肺缕,進(jìn)一步呈現(xiàn)馬太效應(yīng),導(dǎo)致模型性能變差授帕。
作者現(xiàn)有方法更多解決的是數(shù)據(jù)收集階段的偏差同木,而對訓(xùn)練階段的偏差處理較少,尤其是在SRS領(lǐng)域跛十。
具體做法
Formulation
首先彤路,形式化定義一下SRS問題,
- 用戶集合為
芥映,物品集合為
洲尊;
- 所有用戶-物品交互的session可以記作
。例如奈偏,表示用戶點擊物品的行為序列坞嘀。
表示其中的一個session。
- SRS的目的是基于session
的前
個行為序列惊来,預(yù)測第
個交互的物品
丽涩。這個預(yù)測結(jié)果用多分類得分
表示,而得分較高的前
個物品裁蚁,被作為top-k推薦結(jié)果返回矢渊。
作者構(gòu)建的检眯,SRS的數(shù)據(jù)生成過程和模型訓(xùn)練過程的因果圖,如下所示昆淡。
數(shù)據(jù)生成階段,表示用戶在的session中的興趣刽严,
表示物品的特征(包含該物品的流行度特征)昂灵,
表示物品與當(dāng)前session中用戶興趣的相關(guān)程度。
是用戶是否點擊了該物品的outcome舞萄。該階段眨补,物品的基礎(chǔ)特性會影響
,進(jìn)而影響
倒脓。同時撑螺,物品的流行程度也會由于Conformity Bias(流行的物品用戶更傾向點擊,原因是因為從眾)直接影響
崎弃。
同時具有DE(Direct Effect)和IDE(InDirect Effect)兩部分甘晤,在這樣的數(shù)據(jù)上訓(xùn)練會和我們想得到的”
只通過
造成的effect“出現(xiàn)偏差。
模型訓(xùn)練階段饲做,表示session中的embedding墓毒,
表示物品的embedding(個人認(rèn)為這里是可以不包含流行度特征的)虏肾,
是momentum of SGD optimizer(SGD的動量),
是
在頭部物品方向上的投影。
是用戶是否點擊了該物品的outcome焙格。[18]證明了,SGD的動量會讓模型偏向于流行度高的物品(這里有一點疑惑碰逸,應(yīng)該說的是所有SGD方法都會有這個問題削祈。簡單的理解,也許是樣本不均衡肮砾,導(dǎo)致優(yōu)化器有偏)诀黍。
本節(jié)介紹了CauSeR模型解決的問題背景和形式化,下節(jié)繼續(xù)介紹模型的訓(xùn)練和預(yù)測唇敞。
心得體會
Data-Graneration Stage
個人認(rèn)為蔗草,作者在這個階段是把當(dāng)做treatment,此時Conformity Bias疆柔,造成treatment對outcome的影響咒精,分成了DE(Direct Effect)和IDE(InDirect Effect)兩部分。因此旷档,如果在這樣的數(shù)據(jù)上訓(xùn)練模叙,會高估流行物品(因相關(guān)性帶來的)Effect。
那么問題來了鞋屈,如果我的effect只是為了點擊范咨,有啥問題么故觅?答案是,沒有(畢竟渠啊,管他是什么物品输吏,只要點了就好)。但是替蛉,我們的目標(biāo)是提高相關(guān)性帶來的點擊贯溅,進(jìn)而實現(xiàn)有效的推薦(把相關(guān)的物品推薦給具有相應(yīng)興趣的人)。這樣做的原因躲查,有兩個它浅,1)推薦系統(tǒng)的目標(biāo)是解決信息爆炸,挖掘個性化興趣镣煮,這個初心不能變(而不是純做流行物品姐霍,人云亦云,即便用戶容易這樣典唇,但是當(dāng)他們反應(yīng)過來自己真正的需求時镊折,還是會覺得從眾不是他們真正想要的,不然還需要啥個性化呢蚓聘?)腌乡;2)一旦用戶明白過來自己想要的,從眾的答案(即便他過去從眾了)他們是不會進(jìn)一步轉(zhuǎn)化的夜牡,帶不來收益(靠熱度影響与纽,不在咱們討論的范疇)。并且塘装,這種從眾的心理急迂,單個用戶是隨機(jī)產(chǎn)生的,決定不從眾了蹦肴,就要推薦系統(tǒng)給個性化的結(jié)果僚碎。可惜的是阴幌,模型沒有這么快轉(zhuǎn)身勺阐,因為模型是統(tǒng)計模型,個體不從眾了矛双,可是統(tǒng)計數(shù)據(jù)還是從眾的渊抽,不斷訓(xùn)練還會惡性循環(huán)放大這種從眾,模型就永遠(yuǎn)給不出不從眾的推薦了议忽。
Traning Stage
作者提到是
對
的effect的confounder懒闷,那么此時到底誰是treatment?
個人認(rèn)為還是是treatment,因為畢竟推薦改變的是物品愤估,而不是改變用戶的session帮辟。那么,為什么會有
有confounder就出現(xiàn)偏差的問題玩焰?原因可能是由驹,
其實是個條件,
是一個collider結(jié)構(gòu)昔园。訓(xùn)練階段
是已知的荔棉,因此
是相關(guān)影響的(具有相關(guān)性)蒿赢,因此
對
的影響被
對
的影響左右,自然也會導(dǎo)致模型估計的
對
的影響出現(xiàn)偏差渣触?
推薦時候羡棵,我們是看著的變化,來推
的嗅钻。所以皂冰,在預(yù)測時,其實暗含了养篓,我們期望
秃流,這個條件,仍然是collider的場景柳弄。
此外舶胀,是否可以把同時當(dāng)做treatment?個人覺得好像不太合理碧注。