推薦系統(tǒng)論文閱讀(四十八)-谷歌:修正雙塔向量召回模型

論文:

論文題目:《Sampling-Bias-Corrected Neural Modeling for Large Corpus Item Recommendations》

地址:https://dl.acm.org/doi/pdf/10.1145/3298689.3346996

最近換了工作+旅游都沒來得及寫一下博客赏胚,近期的工作一直在做向量召回+負采樣的活甜熔,今天我們來看一下谷歌這篇工業(yè)風十足的論文吧顾腊,看看有什么借鑒的地方。

一 萍诱、背景

工業(yè)界的召回一直都是圍繞著雙塔+負采樣兩個問題展開的稼钩,之前的文章里也說過了具帮,召回是樣本的藝術,由于召回需要從整個樣本集里面去選取汪厨,所以需要讓模型開開眼見見世面,所以需要有更多的負樣本讓模型能夠區(qū)分出那些是用戶不喜歡的劫乱,哪些是用戶可能喜歡的,注意狭吼,只要是可能喜歡的,召回模型就要選出來刁笙,這里跟排序是不一樣的,排序模型是一定要選出用戶真正喜歡的疲吸,而召回只需要選出用戶可能喜歡的,其他的工作只需要交給后面的粗排跟精排就可以了摘悴。

一般的雙塔模型長這樣:

通常是用兩個塔分別去建模user和item舰绘,然后在模型的后面計算內積,最后用真實的label計算loss捂寿。

回到本文口四,本文主要的工作是針對負采樣的修正,在這里我要先提一下一個召回中負采樣的方法:

1.batch隨機負采樣

2.batch內其他樣本作為負樣本者蠕,也叫batch softmax

3.batch隨機+hard sample+部分曝光未點擊

首先,我們來分析下以上幾個負采樣的方法掐松,第1個踱侣,完全隨機是不太可能的,因為在推薦里面畢竟是有熱門商品跟冷門商品的大磺,完全隨機的話抡句,有可能就是熱門樣本被采樣太多了,導致在召回的時候把熱門商品打壓來杠愧,對于電商領域來說是不能這么做的待榔,因為熱門的item是可以帶來很大的gmv的;第2個,問題跟第一個一樣锐锣,batch內的其他樣本同樣會有select bias的問題腌闯;第3個是工業(yè)界里一般的做法,后面兩種樣本主要是為了讓模型真正的能區(qū)分困難樣本雕憔。

谷歌這篇論文針對的是第2點來展開論述的姿骏,針對負采樣問題連同雙塔模型一起優(yōu)化,讓我們一起來看看吧斤彼。

二 分瘦、模型以及修正負采樣

2.1 預定義和batch softmax optimization

{[x_{i}] }_{i}^N表示user/query,{[y_{j}] }_{j}^M表示item琉苇,r是label嘲玫,經過雙塔影射到同一空間后:

這時候我們就可以計算內積來表示他們之間的match程度了:

數(shù)據(jù):

一個用T個訓練樣本,如果我們使用softmax多分類損失:

其中:

這時候并扇,可以看到我們之前在w2v中類似的情況了去团,由于M太大了,導致上面這個式子的計算效率十分低拜马,所以需要對loss函數(shù)進行改進渗勘,改成了我們在之前所說的batch softmax:

就是在一個batch內,把其他樣本的item當作負樣本來進行softmax俩莽。

但是,這么做還有個問題取刃,我們既然進行了采樣璧疗,那么意味著高頻的item容易被采樣成負樣本馁龟,所以還是要進行修正的:

其中s的計算變成了這樣:

其中p_{j} 是item j被采樣的概率却音,最終損失函數(shù)變成了:

訓練的整體過程如下:

論文里對于r的解釋是這樣系瓢,這里r不是0和1夷陋,對于沒有點擊的樣本來說骗绕,r是0爹谭,對于點擊的item,r是播放完成度东揣,也就是說r可能是小于1的嘶卧。

2.2 采樣修正

前面我們也說了凉袱,在batch內負采樣會導致熱門item容易成為負樣本专甩,所以需要進行采樣修正,具體的做法是棺耍,維護兩個表A和B蒙袍,其中A保存item上一次被采樣到的step害幅,B保存item的采樣頻率岂昭,你可能聽的有點云里霧里了邑遏,在詳細介紹一下吧枢里。

由于在一個推薦系統(tǒng)中奥洼,新item是會經常出現(xiàn)的,所以使用hash函數(shù)h把每一個item進行映射,以防止詞表大小固定帶來的問題爱态,我們的A表會保存h(item i)上一次出現(xiàn)的step,當未來的某個batch采樣到item i的時候痘煤,就會計算當前step - A表中的h(item i)的step,然后保存到B表中调窍,同時更新A表的step,這時候我們就可以使用1/B(h(item i))來表示item i被采樣的概率了。

注意到,我們之前更新B表的方式是easy版本的雪营,因為有可能hash函數(shù)的原因導致更新B表的方式被其他item影響了,所以采用了類似于指數(shù)加權平均的思想來更新B表:

具體的算法過程如下:

這樣還不夠摄闸,因為由于H<H,所以可能有很多item被映射到同一個值上面,這就會導致A表中的值會趨近于最近上一次更新step的那個item芦拿,所以導致當前step-A中的值變小裙盾,然后導致B表的值變小徘熔,這就讓item的采樣頻率變大了,顯然是不合理的,所以需要設計好不同的哈希函數(shù)实蔽,論文中是采用了多個哈希函數(shù)女坑,然后計算B的時候選取最大的值碉就,具體過程如下:

2.3 模型結構和特征


2.3.1特征

1.seed features,我理解這部分是用戶正在觀看的視頻的特征碉熄,表征用戶當前時刻的興趣點

2.channel id應該不是頻道的意思锈津,可以點開toutube然后點擊一個創(chuàng)作者的頭像,會發(fā)現(xiàn)channel id是創(chuàng)作者的id

3.user features性誉,就是一些用戶以前的video點擊序列艾栋,以及以前點擊過的channel id序列蛉顽,以及一些user profile特征

4.item側携冤,這些特征就是尋常的item側特征

2.3.2 l2 正則



為了讓softmax更明顯扣猫,會對內積的結果進行放大翘地,實際上工業(yè)界確實都這么做:

四衙耕、實驗結果

首先看一下hash函數(shù)的對比實驗:

然后看一下\alpha 選值的對比實驗:

離線實驗recall上的對比:

總結一下這篇論文,還有很多我沒理解的地方,希望可以進一步思考:

1. 為什么要進行l(wèi)2正則

2.item emb要共享嘛

3.損失函數(shù)是否需要對比下hinge loss和nce loss或者說sample softmax loss

4.特征序列的處理方式

5.初坠。碟刺。薯酝。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末蜜托,一起剝皮案震驚了整個濱河市橄务,隨后出現(xiàn)的幾起案子穴亏,更是在濱河造成了極大的恐慌嗓化,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,324評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件严肪,死亡現(xiàn)場離奇詭異驳糯,居然都是意外死亡酝枢,警方通過查閱死者的電腦和手機悍手,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評論 3 392
  • 文/潘曉璐 我一進店門坦康,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人卑笨,你說我怎么就攤上這事赤兴。” “怎么了桶良?”我有些...
    開封第一講書人閱讀 162,328評論 0 353
  • 文/不壞的土叔 我叫張陵陨帆,是天一觀的道長。 經常有香客問我承二,道長亥鸠,這世上最難降的妖魔是什么识啦? 我笑而不...
    開封第一講書人閱讀 58,147評論 1 292
  • 正文 為了忘掉前任颓哮,我火速辦了婚禮,結果婚禮上伤极,老公的妹妹穿的比我還像新娘塑荒。我一直安慰自己姜挺,他們只是感情好,可當我...
    茶點故事閱讀 67,160評論 6 388
  • 文/花漫 我一把揭開白布凌箕。 她就那樣靜靜地躺著牵舱,像睡著了一般芜壁。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上顷牌,一...
    開封第一講書人閱讀 51,115評論 1 296
  • 那天窟蓝,我揣著相機與錄音饱普,去河邊找鬼。 笑死谁帕,一個胖子當著我的面吹牛冯袍,可吹牛的內容都是我干的颠猴。 我是一名探鬼主播小染,決...
    沈念sama閱讀 40,025評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼裤翩,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了呵扛?” 一聲冷哼從身側響起筐带,我...
    開封第一講書人閱讀 38,867評論 0 274
  • 序言:老撾萬榮一對情侶失蹤伦籍,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后芝薇,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體洛二,經...
    沈念sama閱讀 45,307評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡晾嘶,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,528評論 2 332
  • 正文 我和宋清朗相戀三年变擒,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片策添。...
    茶點故事閱讀 39,688評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡唯竹,死狀恐怖苦丁,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情产上,我是刑警寧澤蛾狗,帶...
    沈念sama閱讀 35,409評論 5 343
  • 正文 年R本政府宣布沉桌,位于F島的核電站,受9級特大地震影響佃扼,放射性物質發(fā)生泄漏蔼夜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,001評論 3 325
  • 文/蒙蒙 一瘤运、第九天 我趴在偏房一處隱蔽的房頂上張望尽超。 院中可真熱鬧梧躺,春花似錦、人聲如沸巩踏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽毅往。三九已至派近,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間侯嘀,已是汗流浹背谱轨。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評論 1 268
  • 我被黑心中介騙來泰國打工土童, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人错沃。 一個月前我還...
    沈念sama閱讀 47,685評論 2 368
  • 正文 我出身青樓雀瓢,卻偏偏與公主長得像刃麸,于是被迫代替她去往敵國和親司浪。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,573評論 2 353

推薦閱讀更多精彩內容