Youtobe基于深度學(xué)習(xí)的視頻推薦
場景特點
1.大規(guī)模:用戶量和視頻量超過1billion
2.新鮮度:每天會有超過100K的新視頻上傳
3.噪音大:用戶行為系數(shù),大量噪音宛琅,視頻缺少結(jié)構(gòu)化meta數(shù)據(jù)
分兩步走:召回+排序
召回幾千個候選集觉痛,然后排序選top幾十展示給用戶
召回
1.看成分類問題挪钓,v表示視頻的embedding向量戈次,u表示用戶的embedding向量
2.雖然有‘點贊’或‘拍磚’這樣的顯式反饋耸彪,但是這篇論文用的是隱式反饋:user completing a video is a positive example(用戶看完了一個視頻?要求有點高栈雳?)因為顯式反饋數(shù)據(jù)比較少
3.采用的是負(fù)采樣+權(quán)重的方法护奈,loss是最小化交叉熵,不能采用哈弗曼樹方法是因為哥纫,在遍歷節(jié)點時沒有辦法確定路徑霉旗,因為目標(biāo)是希望'產(chǎn)生多個類別'
4.線上需要計算topN個類別(視頻)展示給用戶,需要計算millions級,所以需要采用一個近似次線性方法厌秒。因為線上服務(wù)時只需要取embedding 向量读拆。不關(guān)注softmax輸出層的概率,因此可以簡化為點積空間中的最鄰近搜索简僧,有一些通用庫可以使用。AB實驗也發(fā)現(xiàn)雕欺,最鄰近算法的選擇對結(jié)果不是很敏感
回模型結(jié)構(gòu)
特征
1.用戶觀看過的視頻id列表做embedding岛马、取embedding向量的平均值,得到watch vector屠列。同時把用戶搜索過的視頻id列表也做如上的embedding啦逆,得到search vector
2.人口統(tǒng)計特征作為先驗知識是重要的,如地區(qū)笛洛、設(shè)備可以對新用戶發(fā)揮作用夏志,做embedding然后concate,一些其他的二類別或連續(xù)特征苛让,如性別沟蔑,年齡,登錄狀態(tài)等歸一化到[0-1]狱杰。
3.一些非多值類的特征如性別瘦材,還有數(shù)值類特征直接做為神經(jīng)網(wǎng)絡(luò)的輸入。
4.還有一些數(shù)值類特征仿畸,可以利用經(jīng)驗知識食棕,對其進(jìn)行變換。如對年齡特征進(jìn)行平方操作错沽,然后作為新的特征簿晓。
5.異構(gòu)特征:神經(jīng)網(wǎng)絡(luò)的優(yōu)點是可以隨意將連續(xù)或類別特征加到模型里面去,如搜索歷史和觀看歷史千埃,query被分詞用embedding表示憔儿,然后用均值來表示。