關(guān)于YouTube推薦系統(tǒng)的論文學(xué)習(xí)

論文1:The YouTube Video Recommendation System

本文是2010年發(fā)表在RecSys上的文章。本文主要介紹的是YouTube的個(gè)性化推薦的相關(guān)內(nèi)容锨苏。

1.目標(biāo)

用戶使用YouTube一般有三個(gè)原因:
--看他們在其他地方找到的單一視頻(直接導(dǎo)航)谷暮;
--圍繞某個(gè)主題(搜索和目標(biāo)導(dǎo)向?yàn)g覽)查看特定視頻捷泞;
--受他們感興趣內(nèi)容的吸引。
推薦系統(tǒng)主要是針對第三點(diǎn),目的是幫助用戶發(fā)現(xiàn)他們感興趣的高質(zhì)量視頻僻焚,并且推薦結(jié)果應(yīng)該隨時(shí)間和用戶最近的行為更新雅倒。

2.挑戰(zhàn)

在YouTube的推薦應(yīng)用中瘩绒,面臨以下挑戰(zhàn):
--用戶上傳的視頻的元信息非常少;
--視頻時(shí)長比較短(一般小于10分鐘);
--用戶行為短暫牧抵、多變而且噪聲很多;
--視頻生命周期短纸泡。
這是YouTube的推薦和普通視頻網(wǎng)站推薦不同的地方绩郎,這些挑戰(zhàn)也是現(xiàn)在很多短視頻公司關(guān)注的問題。

3.系統(tǒng)設(shè)計(jì)

推薦系統(tǒng)算法應(yīng)該保持時(shí)效性和新鮮性萍启,另外总珠,用戶必須了解為什么向他們推薦視頻,這樣可以幫助用戶根據(jù)自己的喜好改善推薦引擎伊约。推薦的視頻是通過用戶的行為來生成的姚淆,用戶的行為包括觀看、收藏屡律、喜歡等來作為種子視頻腌逢,然后使用各種相關(guān)性和多樣性的 signals 對視頻集進(jìn)行排序。推薦系統(tǒng)的工程設(shè)計(jì)方面超埋,保持各個(gè)模塊的獨(dú)立性搏讶,并且還需要對故障具有恢復(fù)能力,并在出現(xiàn)部分故障時(shí)適度降級霍殴。

3.1 輸入數(shù)據(jù)

這里有2種數(shù)據(jù)可以考慮:
1)是內(nèi)容數(shù)據(jù)視頻流媒惕、視頻元信息(標(biāo)題,標(biāo)簽等)来庭;
2)用戶行為數(shù)據(jù)妒蔚,包括顯性和隱性數(shù)據(jù)。前者是指用戶評分月弛、明確表示喜歡肴盏、不喜歡等行為帽衙,后者是瀏覽、觀看等行為厉萝。
原始數(shù)據(jù)中還含有非常多的噪聲,很多不可控因素會影響原始數(shù)據(jù)的質(zhì)量谴垫。

3.2 相關(guān)視頻

作者將相關(guān)視頻定義為用戶在觀看給定的種子視頻 v 之后可能會觀看的視頻章母,使用關(guān)聯(lián)規(guī)則挖掘技術(shù)來確定視頻間的相關(guān)性翩剪。視頻i和j的相關(guān)性定義為:


其中ci和cj分別是視頻vi和vj 在所有會話中的總發(fā)生次數(shù),f(vi,vj ) 是將種子視頻和候選視頻的“全球流行度”考慮在內(nèi)的歸一化函數(shù)肢专,最簡單的一個(gè)此類函數(shù)為f(vi,vj ) =ci*cj舞肆,利用這個(gè)相關(guān)系數(shù)Ri=r(vi,vj )找出排名前 N 的候選視頻進(jìn)行推薦 , 除了僅挑選前 N 個(gè)視頻外焦辅,還會設(shè)定最低分?jǐn)?shù)閾值。

3.3 生成推薦候選列表

將用戶觀看過的視頻筷登、喜歡過的視頻哩盲、收藏過的視頻等等作為種子集合,對它們進(jìn)行N級的級聯(lián)擴(kuò)展廉油,也就是YouTube選擇召回的不是1步相關(guān)視頻,而是n-步相關(guān)視頻班巩,即種子視頻迭代n次后得到的相關(guān)視頻集合,產(chǎn)生廣闊和多樣的候選結(jié)果抱慌。

3.4 排序

在生成一組候選視頻后眨猎,需要對這些相關(guān)視頻進(jìn)行排序。
用于排序的數(shù)據(jù)主要包括:
--視頻質(zhì)量:包括觀看次數(shù)睡陪、視頻評分、評論户秤、收視和上傳時(shí)間等逮矛;
--用戶特征:考慮用戶觀看歷史記錄中種子視頻的屬性转砖,例如觀看次數(shù)和觀看時(shí)間等;
--多樣性:要在被推薦的視頻集合的類別中做一個(gè)平衡府蔗,以保持結(jié)果的多樣性。
這些數(shù)據(jù)最終被線性組合起來赡译,得到ranking的評分。

4.總結(jié)

本文雖然是2010年發(fā)表的蝌焚,近年來有很多內(nèi)容升級復(fù)雜化了,但是作為初學(xué)者只洒,本文的知識點(diǎn)和整體思路是非常值得學(xué)習(xí)的。當(dāng)時(shí)的YouTube推薦系統(tǒng)的核心算法就是基于Item的協(xié)同過濾算法成畦,也就是對于一個(gè)用戶當(dāng)前場景下和歷史興趣中喜歡的視頻涝开,找出它們相關(guān)的視頻循帐,并從這些視頻中過濾掉已經(jīng)看過的舀武,剩下就是可以用戶極有可能喜歡看的視頻。

論文2:Deep Neural Networks for YouTube Recommendation

本文是Google的YouTube團(tuán)隊(duì)在推薦系統(tǒng)上DNN方面的嘗試衷旅,發(fā)表在16年9月的RecSys會議纵朋。本文第1節(jié)介紹了YouTube推薦系統(tǒng)主要面臨的挑戰(zhàn)。第2節(jié)介紹了一個(gè)簡要的系統(tǒng)概述操软。第3節(jié)更詳細(xì)地描述了候選集生成模型,包括如何對其進(jìn)行訓(xùn)練并用于提供推薦服務(wù)聂薪;實(shí)驗(yàn)結(jié)果顯示模型添加特征和DNN深度后可以顯著提升預(yù)測效果。第4節(jié)詳細(xì)說明了排序模型仁锯,包括使用加權(quán)邏輯回歸技術(shù)以訓(xùn)練預(yù)測預(yù)期觀察時(shí)間的模型翔悠;實(shí)驗(yàn)結(jié)果表明,增加隱層網(wǎng)絡(luò)寬度和深度都能提升模型效果蓄愁。 最后双炕,第5節(jié)做了總結(jié)撮抓。

1.YouTube面臨的挑戰(zhàn)

-規(guī)模大:用戶和視頻的數(shù)量都很大,傳統(tǒng)適合小規(guī)模的算法無法滿足;
-新鮮度:要求對新視頻作出及時(shí)和合適的反饋荸恕;
-噪音:YouTube上的歷史用戶行為由于稀疏性和各種不可觀察的外部因素而不可預(yù)測顷编。 我們很少能獲得基本真實(shí)的用戶滿意度,更多的是隱式反饋噪聲信號双肤。

2.系統(tǒng)概述

推薦系統(tǒng)的整體結(jié)構(gòu)如圖所示:



該系統(tǒng)由兩個(gè)神經(jīng)網(wǎng)絡(luò)組成:一個(gè)用于候選集的生成钮惠,一個(gè)用于排序。候選集生成網(wǎng)絡(luò)將用戶的Youtube活動(dòng)歷史記錄作為輸入蔑赘,然后從海量視頻集中篩選出一小部分(數(shù)百個(gè))以高精度與用戶相關(guān)的視頻预明。排序網(wǎng)絡(luò)負(fù)責(zé)基于更加精細(xì)的特征對候選集進(jìn)行排序,最后將最高得分的視頻呈現(xiàn)給用戶(按它們的得分排名)酥馍。

3.候選集生成
3.1 問題建模

該模型把這個(gè)推薦問題轉(zhuǎn)化成極端多分類問題:對于用戶U和上下文C阅酪,把語料庫V中的數(shù)百萬個(gè)視頻(分類)i,在時(shí)間t處做準(zhǔn)確的分類术辐,如下所示:



其中u為用戶U的embedding表示辉词,vi 代表各個(gè)候選視頻的embedding。embedding是指稀疏實(shí)體(單個(gè)視頻瑞躺,用戶等)到實(shí)數(shù)密集向量的映射;DNN的目標(biāo)就是在用戶信息和上下文信息為輸入條件下學(xué)習(xí)用戶的embedding向量u,這對于用softmax分類器來區(qū)分視頻是有用的襟企。

3.2 模型架構(gòu)

整個(gè)模型架構(gòu)是包含三層全連接層顽悼,使用relu激活函數(shù)几迄。把用戶觀看歷史數(shù)據(jù)冰评、搜索數(shù)據(jù)做一個(gè)embedding,加上age解孙、gender等特征作為DNN的輸入抛人;輸出分線上和離線訓(xùn)練兩個(gè)部分。訓(xùn)練階段使用softmax輸出概率妖枚,在服務(wù)期間則直接使用接近最近鄰搜索來進(jìn)行生產(chǎn)候選的N個(gè)視頻。

3.3 主要特征處理

1)把用戶觀看過的視頻id列表做embedding荠商,并對所有歷史觀看視頻ID的embedding做平均续誉,得到觀看embedding向量。
2)同時(shí)把用戶搜索過的視頻id列表也做如上的embedding郊愧,得到搜索embedding向量井佑。
3)用戶的人口統(tǒng)計(jì)學(xué)屬性做embedding得到特征向量。
4)簡單的二值和連續(xù)特征躬翁,例如用戶的性別,登錄狀態(tài)和年齡作為歸一化為[0,1]的實(shí)數(shù)值直接輸入到網(wǎng)絡(luò)中例嘱。
5)example age:機(jī)器學(xué)習(xí)系統(tǒng)總是利用歷史的例子去預(yù)測未來宁舰,所以對過去總會有一個(gè)隱含的偏差。為了矯正偏差腋腮,YouTube把訓(xùn)練樣本的年齡當(dāng)作一個(gè)特征。

3.4 樣本和上下文選擇

1.訓(xùn)練樣本要用youtube上的所有視頻觀看記錄即寡,而不只是我們的推薦的視頻的觀看記錄。
2.為每個(gè)用戶生產(chǎn)固定數(shù)量的訓(xùn)練樣本莺丑。
3.丟棄搜索信息的順序墩蔓,用無序的詞袋表示搜索查詢。
4.如下圖蟹漓,圖(a)從歷史觀看記錄中隨機(jī)拿出來一個(gè)作為正樣本來預(yù)測它源内,其余的歷史觀看記錄作為上下文;這樣其實(shí)泄露了未來的信息膜钓,并且忽略了任何非對稱的消費(fèi)模式。相反夫壁,圖(b)是從用戶的歷史視頻觀看記錄中隨機(jī)拿出來一個(gè)作為正樣本沃疮,然后只用這個(gè)視頻之前的歷史觀看記錄作為輸入;這樣的預(yù)測效果好得多邑茄。

3.5 特征和深度實(shí)驗(yàn)

– 深度為0:這時(shí)網(wǎng)絡(luò)就是一個(gè)把連接起來的輸入層轉(zhuǎn)換一下俊啼,和softmax的256維輸出對應(yīng)起來
– 深度為1:第一層 256個(gè)節(jié)點(diǎn),激活函數(shù) 是ReLU (rectified linear units 修正線性單元)
– 深度為2:第一層512個(gè)節(jié)點(diǎn)同木,第二層256個(gè)節(jié)點(diǎn)跛十,激活函數(shù)都是ReLU
– 深度為3:第一層1024個(gè)節(jié)點(diǎn),第二層512個(gè)節(jié)點(diǎn)洲尊,第三層256個(gè)節(jié)點(diǎn),激活函數(shù)都是ReLU
– 深度為4:第一層2048個(gè)節(jié)點(diǎn)颊郎,第二層1024個(gè)節(jié)點(diǎn)霎苗,第三層512個(gè)節(jié)點(diǎn),第四層256個(gè)節(jié)點(diǎn)内狸,激活函數(shù)都是ReLU

實(shí)驗(yàn)結(jié)果如下圖所示:



可以看出厘擂,特征選取較多時(shí),并且模型深度在四層時(shí)昂灵,可以得到較好的結(jié)果舞萄。

4.排序
4.1 模型架構(gòu)

排序階段最重要的任務(wù)就是精準(zhǔn)的預(yù)估用戶對視頻的喜好程度。在排序階段面對的數(shù)據(jù)集比較小撑螺,因此會采用更多的特征來計(jì)算崎弃。
作者在排序階段所設(shè)計(jì)的DNN和上文的DNN的結(jié)構(gòu)是類似的,但在訓(xùn)練階段對視頻的打分函數(shù)不再是softmax饲做,而是采用的邏輯回歸艇炎。如下圖所示:


4.2 主要特征

1)特征工程
盡管神經(jīng)網(wǎng)絡(luò)能夠減輕人工特征工程的負(fù)擔(dān),但是我們依然需要花費(fèi)精力將用戶及視頻數(shù)據(jù)轉(zhuǎn)化為有效的特征居砖。其主要的挑戰(zhàn)在于如何表示用戶動(dòng)作的時(shí)間序列以及這些動(dòng)作如何與正被評分的視頻展現(xiàn)相關(guān)驴娃。但是通過對用戶和物品之間的交互行為,我們能提取出一些有用信息唇敞,比如: 用戶從這個(gè)頻道里看過多少視頻咒彤,用戶上次觀看這個(gè)主題的視頻是什么時(shí)候等咒精。
2)embedding 離散特征
每個(gè)維度都有獨(dú)立的embedding空間,實(shí)際并非為所有的id進(jìn)行embedding歇拆,比如視頻id范咨,只需要按照點(diǎn)擊排序,選擇top N視頻進(jìn)行embedding输吏,其余置為0向量替蛉;而當(dāng)多值離散特征映射成embedding之后,像在候選集生成階段一樣躲查,在輸入網(wǎng)絡(luò)之前需要做一下加權(quán)平均熙含。另外一個(gè)值得注意的是,離散特征對應(yīng)的ID一樣的時(shí)候怎静,他們的底層embedding也是共享的,其優(yōu)勢在于提升泛化能力腌乡、加速訓(xùn)練夜牡、減小內(nèi)存占用等。
3)連續(xù)特征歸一化
對連續(xù)值類的特征進(jìn)行歸一化塘装,作者設(shè)計(jì)一種積分函數(shù)將特征映射為一個(gè)服從[0,1]分布的變量蹦肴;還可以對某些特征進(jìn)行取根號、取對數(shù)和取平方的相關(guān)操作阴幌,使得網(wǎng)絡(luò)有更強(qiáng)的表達(dá)能力卷中。

4.3 觀看時(shí)長建模

給定正負(fù)樣本渊抽,正樣本為有點(diǎn)擊視頻,負(fù)樣本為無點(diǎn)擊視頻无埃;用觀看時(shí)長對正樣本做了加權(quán)毛雇,負(fù)樣本都用單位權(quán)重(即不加權(quán))侦镇;采用的是基于交叉熵?fù)p失函數(shù)的邏輯回歸模型訓(xùn)練的。

4.4 隱層實(shí)驗(yàn)

上表顯示了在保留數(shù)據(jù)集上用不同的隱層配置得到的結(jié)果震捣,這些結(jié)果表明增加隱層的寬度提升了效果蒿赢,增加深度也是一樣渣触。

5.總結(jié)

本文內(nèi)容方面,介紹了YouTube基于深度學(xué)習(xí)的推薦系統(tǒng)嗅钻,先用視頻和用戶的主要信息通過深度候選生成模型從百萬級視頻中找出數(shù)百個(gè)相關(guān)的視頻,再用視頻和用戶的其他信息通過深度排序模型從數(shù)百個(gè)視頻中找出幾十個(gè)最有可能受用戶歡迎的視頻給用戶秃流。這樣使得推薦系統(tǒng)對用戶喜好的刻畫能力大大增強(qiáng)柳弄,刻畫的范圍更加廣泛。
本文結(jié)構(gòu)方面嚣伐,從推薦系統(tǒng)的整體結(jié)構(gòu)講起萍丐,劃分為候選集生成和排序兩個(gè)階段,然后對每個(gè)階段詳細(xì)地展開講解碉纺。整體過程條理清晰刻撒,邏輯嚴(yán)密声怔,值得我們學(xué)習(xí)舱呻。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市芥驳,隨后出現(xiàn)的幾起案子茬高,更是在濱河造成了極大的恐慌,老刑警劉巖丽猬,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件熏瞄,死亡現(xiàn)場離奇詭異,居然都是意外死亡强饮,警方通過查閱死者的電腦和手機(jī)邮丰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來邑雅,“玉大人妈经,你說我怎么就攤上這事〈蹬荩” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵洞难,是天一觀的道長揭朝。 經(jīng)常有香客問我,道長柱嫌,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任与学,我火速辦了婚禮嘉抓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘卵佛。我一直安慰自己蓝丙,他們只是感情好望拖,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鸥跟,像睡著了一般盔沫。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拟淮,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天谴忧,我揣著相機(jī)與錄音,去河邊找鬼委造。 笑死均驶,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的妇穴。 我是一名探鬼主播隶债,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼燃异,長吁一口氣:“原來是場噩夢啊……” “哼继蜡!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起仅颇,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤碘举,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后耕皮,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝙场,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年罚拟,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了完箩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,795評論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡阻逮,死狀恐怖秩彤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情币励,我是刑警寧澤珊拼,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站仅胞,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏干旧。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一挠将、第九天 我趴在偏房一處隱蔽的房頂上張望编整。 院中可真熱鬧,春花似錦内贮、人聲如沸汞斧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽仲义。三九已至剑勾,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間虽另,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工谣拣, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留族展,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓贵涵,卻偏偏與公主長得像,于是被迫代替她去往敵國和親宾茂。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容