免費谘詢熱(rè)線
13621929115以下文章(zhāng)來源於(yú)機器之(zhī)心SOTA模型 ,作者機器之心SOTA模型 機器之心專欄本專欄將逐一盤點(diǎn)自然語言處理、計算機視覺等領(lǐng)域下的常見任務,並對(duì)在這些任務上取得過(guò) SOTA 的經典(diǎn)模型逐一詳解前往 SOTA!模型資源站(sota.jiqizhixin.com)即可獲(huò)取本文中包含的模型實現代碼、預訓練模型展示(shì)模型及 API 等資源。
本文將分 3 期進行連載,共介紹 18個在推薦係(xì)統任務上曾取得 SOTA 的(de)經典模型第 1 期:DSSM、Youtube_DNN、SASRec、PinSAGE、TDM、MIMD第 2 期:PinnerSAGE、ENSFM、MHCN、FFM、FNN、PNN。
第 3 期:Wide&D展示模型eep、DCN、xDeepFM、DIN、GateNet、IPRec您正在閱讀的是其中的第 1 期前往 SOTA!模型資源站(sota.jiqizhixin.com)即可獲取本文中包含的模型實現代(dài)碼、預訓練(liàn)模(mó)型(xíng)及 API 等資源。
本期收錄模型速覽模型SOTA!模(mó)型資(zī)源站收錄情況模型來(lái)源論文DSSMht展(zhǎn)示模型tps://sota.jiqizhixin.com/project/dssm-2收錄實現數量:3支持框架:PaddlePaddle、PyTorch
Learning Deep Structured Semantic Models for Web Search using Clickthrough Da展示模型taYoutube_DNNhttps://sota.jiqizhixin.com/project/youtube-dnn
收錄實現數量:4支持框(kuàng)架:TensorFlow、PyTorchDeep Neural Networks for YouTube RecommendationsSASRechttps展示模型://sota.jiqizhixin.com/project/sasrec
Self-Attentive Sequential RecommendationPinSAGEhttps://sota.jiqizhixin.com/project/pinsageGraph Convolutional Neu展示模型ral Networks for Web-Scale Recommender Systems
TDMhttps://sota.jiqizhixin.com/project/tdm收錄實現數量:2支持框架:PaddlePaddleLearning Tree-based Deep Model for Re展示模型commender Systems
MIMDhttps://sota.jiqizhixin.com/project/mimd支持框架:PaddlePaddle、TensorFlowMulti-Interest Network with Dynamic Routing for Recommendatio展示模型n at Tmall
推薦係統是指利用電子商務網站向客戶提供商品信息(xī)和建議(yì),幫助用戶決定應該購買(mǎi)什麽產品,模擬銷售人員幫助客戶完(wán)成購買過程的係統在(zài)廣告、電商、信息流分發等業(yè)務場景中,推薦係統發揮了至關(guān)重要的作用,是幫助用戶快速獲得感(gǎn)興趣的信息的關鍵,也(yě)是改進產品以吸引用(yòng)戶、提高用戶粘性的關鍵。
推薦係統展示模(mó)型把用戶模型中的(de)興趣需求信息和推薦對象模(mó)型中的特征信息匹配,同時使用相應的推薦算法進行計算篩選,找到(dào)用戶(hù)可能感興趣的推薦對象,然(rán)後推薦給用戶為了實現精準推薦,首先要對用戶進行(háng)畫(huà)像對用戶畫像打標簽後,生(shēng)成多維度、豐富、全麵的用戶標簽,這些標簽就是推薦係統中的(de)特征,而這些(xiē)特征就是推薦係統中的。
推(tuī)薦算法/模展示模型(xíng)型的輸入(rù)數據利用特征對推薦算(suàn)法/模(mó)型進行離線訓練,然後進行A/B測試後,獲(huò)得最終的推薦算法/模型後續還包括算法/模型的部(bù)署、冷(lěng)啟動等(děng)流程具體到推薦算法/模型部分,一般包括(kuò)兩大環節:召回和排序。
召回主要是指"根據用戶的(de)興趣和曆史(shǐ)行為,從(cóng)海量的物品庫(kù)裏,快(kuài)速找回一小部分用戶潛在感興趣的物品"召回方法主(zhǔ)要展示模型要(yào)求(qiú)具備處理數(shù)據量(liàng)大、處理(lǐ)速度快(kuài)的能力經典的召回方法包括基於統計的啟發式(shì)召回(huí)和基於深度學習的向量召回方(fāng)法。
本報告主要聚焦於基於深度學習的召(zhào)回(huí)方法排(pái)序則(zé)是指根據多類特征,使用模型進行個(gè)性化(huà)的推薦排序環節還可以進一步(bù)細分為粗排(pái)、精排和重排推薦(jiàn)算法/模型在工業場景中應用(yòng)主(zhǔ)要麵對下麵這些問題:數據量龐大、訓展示模型練環境低效、在線和離線環境(jìng)的不(bú)一致、上線部署的困難等等。
因此,一個好(hǎo)的推薦係統中一般會應用多(duō)個推薦算法/模型,而每個推薦算(suàn)法/模型的最佳效果(guǒ)需要工(gōng)程(chéng)師(shī)在實踐中摸索調試出來的,每個基礎模型又有很多改良版本,針對不同的問題效果也可能不(bú)同www.17C.com在這篇報告中總結的是能夠在推薦係(xì)統中應用的必備的TOP基礎
推薦算展示模型法/模型一、召回模型1、 DSSMDSSM(Deep Structured Semantic Models)也叫深度語(yǔ)義匹配(pèi)模型,最(zuì)早是在微軟(ruǎn)2013年發表的一篇應(yīng)用(yòng)於(yú) NLP 領域中計算語義(yì)相似度任務的文章中提出的。
DSSM是適用於廣告(gào)推薦領域中的模型,其目的是從廣告(gào)維度為廣告主推薦一定數量的人群展示模型,從數量上看是從數億級別人群中(zhōng)找出(chū)百(bǎi)萬級人群用於投放廣告,所以是召(zhào)回模型DSSM 原理很簡單:獲取搜索引(yǐn)擎中的用戶搜索 query 和 doc 的海量曝光和點擊日誌數據,訓練階段分別用複雜的深(shēn)度學習網(wǎng)絡(luò)構建 query 側特(tè)征的 query embedding 和 doc 側(cè)特征的 doc embe展示模型dding,線上 infer 時通過計算兩個語義向量的 cos 距離來表示語義相似度,最終獲得語義相(xiàng)似(sì)模型。
這個模型既可(kě)以獲得語句的低維(wéi)語義向量表達 sentence embedding,還可以預測兩句話的(de)語義相似度圖1. DSSM使用DNN將高維稀疏的文本特征映射為語義空間中(zhōng)的(de)低維密集特征(zhēng)第一個隱展示模型藏層有3萬個(gè)單元(yuán),用於完成word-hash。
然後,通過多層非線性投影,將(jiāng)word-hashed特征進行投影最後一層的神經活動在這個DNN中形(xíng)成了語(yǔ)義空間的特征如(rú)圖1所示,DSSM使用一個(gè)DNN架構將原始文本特征映(yìng)射到語義空間中的特征DNN的輸入(原始文(wén)本特(tè)征)是一個高維的術語向量,例如,查詢或文檔展示模型中的術語的原始計(jì)數,而DNN的輸出是一個低維(wéi)語義(yì)特征空間的概念向量。
DNN模型用於網絡文(wén)檔的排名,具體包括:1)將術語向量映射到其相(xiàng)應(yīng)的語義概念向量;2)將(jiāng)文檔和查詢之間的相關性分數計算為其相應語義概念向量的餘弦相似度對於(yú)輸入是英文的輸(shū)入層,可以通過 Word Hashing 方式處理,該(gāi)方法基於字展示模型母的 n-gram,主要作(zuò)用是減少輸入(rù)向量(liàng)的維度。
而對於輸入是中文的輸入層,還要增加額外(wài)的分詞處理步驟給定一個(gè)詞(例如:good),首先在該詞上添加詞首和詞尾的標記(例如:#good#)然後,將該詞分解為字母n-grams(例如,字(zì)母trigrams:#go, goo, ood, od#)。
最(zuì)後,用展示模型一個(gè)字母n-grams的向量來表示這個詞DSSM 模型(xíng)表示層(céng)使用的是 BOW(bag of words)詞袋模型,沒有考慮詞序的(de)信息,由圖1可見,最下麵的 Term Vector 到 Word Hashing 將(jiāng)詞映射到 3W 維的向量空間中。
然後分別經過兩(liǎng)層 300 維度的隱藏層(céng),最後統一輸出 1展示模(mó)型28 維度的向量最後,將 query 和 doc 統(tǒng)一(yī)轉換成了兩個 128 維的語義向量,接下來通過 cos 函數計(jì)算這兩(liǎng)個向量(liàng)的餘弦相似度,公式如下:
其中,y_Q和y_D分別是查詢和文檔的概念向量在網絡搜索中,給定查(chá)詢,文件按其語義相關性分數進行排序(xù)使用點擊數(shù)據對模型進行訓練以獲取參數,目(mù)的是(shì)使得展示(shì)模型點擊(jī)概率最大(即最小化(huà)損(sǔn)失函數)條件概率如下:根據(jù)極大似(sì)然(rán)估計法(fǎ),得出損失函數(shù):
當前(qián) SOTA!平(píng)台收錄 DSSM 共 3 個模型實現資源項目SOTA!平(píng)台項目詳情頁DSSM前(qián)往 SOTA!模型平台(tái)獲取實現資源:https://sota.jiqizhixin.com/project/dssm-2。
2展示模型、 Youtube_DNNYoutube_DNN是Youtube推出的一(yī)個視頻推薦模(mó)型,屬於一個應用場景驅動的模型視頻推薦任(rèn)務中麵臨的問題(tí)包括:數(shù)據規模(mó)超(chāo)大(dà)、視頻(數(shù)據)更新速度快且對響應速度要求(qiú)高、用戶行為(wéi)預測難度大(用(yòng)戶隱式反(fǎn)饋多、顯式反饋少)。
如圖2所示,Youtube_DNN主要(yào)包括(kuò)三個階段展示模型:(1)召回層:從百萬級視(shì)頻(pín)中(zhōng)篩選出小(xiǎo)部分視頻;要求速度快;召回層(céng)根(gēn)據用戶曆史觀看、搜索等記錄(lù)進行召回,以滿足用戶泛化(huà)的興趣(2)排序層:為了更精準地推薦給用戶,這階段需要(yào)更(gèng)加複雜(zá)的模型和特征進行排(pái)序。
(3)線下評估:評估指(zhǐ)標有precision、recall、ranking loss;最終線上做A展示模型(xíng)/B測試(指標(biāo):點擊率、觀看時間)圖2. Youtube_DNN推薦模型(xíng)架(jià)構在召回層,YouTube把推薦(jiàn)問題看作是一個(gè)超(chāo)大規模多分類softmax問題,給(gěi)定用戶曆史行為和上下文,學習用戶嵌入,然後輸(shū)入softmax生成召(zhào)回層的(de)候選集結果。
完整的召回模型如圖3所示圖(tú)3. YouTube候選集(jí)生成模型展示模型架構YouTube_CNN輸入的特(tè)征包括用戶曆(lì)史觀看視頻的嵌入向量、搜索詞的嵌入向量、用戶地理特征、用戶設備特(tè)征和example age、人口屬性特(tè)征。
example age可以理解為視頻的年齡(líng):初始值設為(wéi)0,隨著(zhe)時間(jiān)的增長,記錄(lù)視頻的年齡(líng)然後,將輸入的特征通過concat層連接起來(lái),輸入到三層Re展示(shì)模型LU神(shén)經網絡中訓練使用常見的塔狀設計,底層最寬,往上每層的神經元數目減(jiǎn)半,直(zhí)到 Softmax 輸入層是(shì) 256 維(1024ReLU→512ReLU→256ReLU)。
利用softmax層進行分類,定義為基於特定用戶U 和其上下文 C,在時(shí)刻t,將視頻庫 V中指定的視頻 w_t劃分為第 i 類的概展示模型率:softmax輸出層(céng)不是做點擊率預(yù)估,而是預測用戶會點擊(jī)哪個視頻(pín),即用softmax對視頻進行分類,然後按照概率進行從大到小的排序,選取topN。
輸出層的維度和視頻ID的嵌入向量維度相同,最終得到(dào)用戶向(xiàng)量u圖4. Youtube_DNN排序模型架構圖4是 Youtube_DNN的推(tuī)薦模型架構排序展示模型(xíng)模型的作用是引入更多描述視頻、用戶以及二者之間關係的特征,達到(dào)對候選視頻集合(hé)準確排序的目的。
圖4與(yǔ)圖3的整體結構非常相似,主要(yào)的區別在於特征工程部分排序模型中用到的特征包括:(1)impression video ID embedding: 當前要計算的video的embedding;(2)watc展示模型hed video IDs average embedding: 用戶觀看過的最後N個視頻(pín)embedding的average pooling;(3)language embedding: 用戶語言的embedding和當前視頻語言的embedding;(4)time since last watch展示模型: 自上次(cì)觀看同channel視頻的時間;(5)#previous impressions: 該視頻已經被曝光給該用戶的次數(shù)。
當前(qián) SOTA!平台收錄 Youtube_DNN 共 4 個模型實現資(zī)源(yuán)項目SOTA!平台項目(mù)詳情頁Youtube_DNN前往 SOTA!模(mó)型平台獲取實現資源:https:/展示模型/sota.jiqizhixin.com/project/youtube-dnn。
3、 SASRec順序動態是許多現代推薦係統的一個關鍵特征,這些係(xì)統試圖(tú)根據用(yòng)戶最近執行的行(háng)動來捕捉(zhuō)他們(men)活動的(de) "背景"為了捕捉這種模式,有兩種主要的方(fāng)法:馬爾科夫鏈(Markov Chains,MCs)和循環(huán)神經網展示(shì)模型絡(RNNs)。
馬爾科夫鏈假定可以根據用戶的最後(或最後幾個)行動來預測他們的下一個行動(dòng),而RNN原則上允(yǔn)許發現更長期的語義一般來說,基於馬(mǎ)爾可夫鏈的方法在極其稀疏的數據集中表現最好,在這種情況下,模(mó)型(xíng)的簡潔性至(zhì)關重要;而RNN在密集的數(shù)據集中表現更好,在這種情況下,更高的模型(xíng)複雜性是可以承受的。
本展示模型文的目標是平(píng)衡(héng)這兩個目標,提出了一個基於自注意力的(de)順序模型(self-attention based sequential model,SASRec),它允許(xǔ)www.17C.com捕捉長期語義,使用注意力機製,根據相對較少的行動進行預測。
在每個時間步長,SASRec試圖從用戶的(de)行動曆史中識別哪些項目是 "相關的",並展示(shì)模型利用它們來預測下一個項目圖5. SASRec的訓練過程的簡(jiǎn)化(huà)圖在每個時間步長中,模型考慮所有以前的(de)項(xiàng)目,並使用注意力來(lái) "關注 "與下一個行動相關的項目。
在順序(xù)推薦的(de)設定中,給定一個用戶的行動序列(liè)Su = ((S_1)u, (S_2)u, ..., (S_|Su|)u),預測下一個項目在訓(xùn)練(liàn)過程中,展示模型在時間步長t,模型根據之前的t個項目來預測(cè)下一個項目將訓練序列((S_1)u, (S_2)u, ..., (S_|Su|-1)u)轉化(huà)為固定長度的序列s = (s_1, s_2, ..., s_n),其中,n代表模型可以(yǐ)處理的最大長度。
如果序(xù)列的(de)長度大於n,www.17C.com就考慮最近的n個動作如果序列長度小於n展示模型,www.17C.com在左邊(biān)重複添加一(yī)個 "padding "項,直(zhí)到長度為n創建一個項嵌入矩陣M∈R|l|xd,其中,d是潛在維度,並(bìng)檢索輸入嵌入矩陣E∈Rnxd,E_i=M_si。
一個恒定(dìng)的零向量0被用來作(zuò)為填充項的嵌入由於自注意力模型不包(bāo)括任何循環或(huò)卷積模塊,它不知道以前的項目的位置(zhì)因(yīn)此,www.17C.com在輸(shū)入嵌(qiàn)入中注入展示模型(xíng)一個(gè)可學習的位置嵌入P∈Rnxd縮放的點(diǎn)積注意力定義為:在機器翻譯(yì)等NLP任務中(zhōng),注意力機製通常使用K=V(例如使用RNN編碼器-解碼器進行翻譯:編碼器的隱藏狀態是鍵和值,解碼器的(de)隱藏狀態是查詢)。
在該方(fāng)法中,自注意力操作將嵌入的E_b作為輸入(rù),通過線性投影將其轉換為三個矩陣,並將其送入注意力層:由展示模型於序列的性質(zhì),模型在預(yù)測(cè)(t+1)項時應該隻考慮前t項然而,自注意力層(S_t)的第t個輸出包含後續項目的嵌入,這使得該模型(xíng)不適用。
因此,通過禁(jìn)止Qi和Kj(j>i)之間的(de)所有鏈接來修改注意(yì)力盡管自注意力能夠以適應性的權(quán)重聚合所有以前的項目嵌入,但最終它仍然是一個線性模型為了賦予該模型以非線性,並考展示模型(xíng)慮不(bú)同潛(qián)在(zài)維(wéi)度之間的相互作用,對所有的S_i都采用(yòng)了一個點式兩層前饋網絡(共享參數):。
在第一個自注意力區塊之後,F_i基本上(shàng)聚合(hé)了所有以前的項目嵌入(即E_bj, j≤i)然而,通過另一個基於F的自注意力塊來學習更複雜的項目(mù)轉換可能是有用的具體來說,將自注意力區塊(即一個(gè)自(zì)注意力層和一個前饋(kuì)網絡)展示模型進行堆疊,第b(b>1)個區塊定義(yì)為。
然(rán)而,當網絡加深時,有幾(jǐ)個問題會(huì)變得更加(jiā)嚴重1)模型容量的增加(jiā)導致過(guò)度擬合;2)訓練過程變得不(bú)穩定(由於梯度消失(shī)等原因(yīn));3)具有更多參數的模型往往需要更多(duō)的訓(xùn)練時間因此,引入以下處理:現有的順序推薦(jiàn)方法表明(míng),最後訪問的(de)項(xiàng)目對預測下一個項目起著關鍵作用。
然而,在展示模型經過幾個自注意力塊之後,最後訪問的項目的嵌入已經與之前的所有項目糾纏在一起(qǐ);添(tiān)加(jiā)殘差連(lián)接將最後訪(fǎng)問過的項目的嵌入傳播到最後一層,會使得該模(mó)型更容易利用低層的信息層歸一化是用來歸一化各特征的輸入(即零均(jun1)值和單位方差),這有利於穩定和加速神經網絡訓練。
與批(pī)量歸一化不(bú)同,層歸一化中使用的統計數據與同一批(pī)次展(zhǎn)示模型中的其(qí)他樣本無關具體來說,假設輸入是一個包含樣本所有特征的(de)向量x,該操作被(bèi)定義為:為了緩解深度(dù)神經網絡中的(de)過擬合問題,"Dropout "正則(zé)化技術已被證明在各種(zhǒng)神(shén)經網絡架構中是有效的(de)。
Dropout的(de)概念很簡單(dān):在訓練期間以概率p隨機 "turn off "神經元,並在測試時使用所有神經元www.17C.com還在展示模型嵌(qiàn)入的E^上應用了一個Dropout層在自適應地、分層次地提取先前(qián)消費的項目(mù)信息(xī)的b個自注意力塊之後,根據(F_t)b預測下一個項目(給定前t個項目)。
具體來說,采用(yòng)一個(gè)MF層來預測項目i的相關性為了減少模型的大小和緩解過(guò)度擬合,本文考(kǎo)慮另一種方案,它隻使(shǐ)用一個單一的(de)項目嵌入M:使用同(tóng)質物品嵌入的一(yī)展示模型個潛在問題是,它們的內部產品不(bú)能代表不對稱的物品轉換(例如,物(wù)品i經常在(zài)j之後購買,但反之則不然),www.17C.com的模型沒有這個問題,因為它(tā)學習了一個非線性變換(huàn)。
為了提供個性化的推薦,現有的方法通(tōng)常采取兩(liǎng)種(zhǒng)方法之一:1)學習一個代表(biǎo)用戶偏好的顯式用戶嵌入2)考慮用戶以前的行為,並(bìng)從(cóng)訪問過的項目的嵌入中誘導出一展示(shì)模型個隱含的(de)用戶嵌入:其中,U為用戶嵌入當前 SOTA!平台收錄 SASRec 共 4 個模(mó)型實現資(zī)源。
項目SOTA!平台(tái)項目詳情頁SASRec前往 SOTA!模型平台(tái)獲取(qǔ)實現(xiàn)資源:https://sota.jiqizhixin.com/project/sasrec4、 PinSAGEPinterest展示模型 推出的基於 GCN ( GraphSAGE)的召回算法 PinSAGE,被稱為"GCN 在工業級推薦係統上的首次成功運(yùn)用"。
PinSAGE 主要思想是通過 GraphSAGE 得到 pin(Pinterest 中的書簽,可以理解為普通推薦係統中的 item)的向(xiàng)量表示(shì),然後基於 pin embed展示(shì)模(mó)型ding 做 item2item 的召回。
PinSAGE 底(dǐ)層算法就是 GraphSAGE,隻不過為了將其落地於(yú)一個 web-scale 的工業級(jí)推薦係統,PinSAGE 做了一係列的改進(jìn)圖6. depth-2卷積(jī)的模型結構概覽上左圖:一個小的輸入圖例。
上(shàng)右(yòu)圖:2層神經網絡,計算出節(jiē)點A的嵌入(rù)(h_展(zhǎn)示模型A)2的2層神經網絡,該網絡使用前一層的表示(shì)法計算節點A的嵌(qiàn)入底部:計算輸入圖的每個節點嵌入的神經網絡雖然各(gè)節點的神經網絡不同,但它們都有一組相同的參數具有相同陰影模式的方框共享參數;γ表示重要性集合函數(shù);薄矩形(xíng)方框表示密集連接的多層神經網絡。
PinSAGE的關鍵計算工作原理是局部圖(tú)卷積的概念為了(le)生展示(shì)模型成一個節點(即一個項目)的嵌(qiàn)入(rù),應用了多個卷積模塊,這些模塊從節點的局部圖鄰域聚集特征信息(例如,視覺、文本(běn)特征)(如圖6所示)每個模塊(kuài)都會學習如何從一個(gè)小的圖形鄰域(yù)聚集信息,通過堆疊多個(gè)這樣的模(mó)塊,PinSAGE可(kě)以獲得關(guān)於局部網絡拓撲(pū)結構的信息。
重要的是,這些局部卷積模塊的參數(shù)是在所有節點上共享展示模型的,這(zhè)使得該方法的參數複(fù)雜性與輸入圖的大小(xiǎo)無(wú)關Pinterest是一個內容發現應用程序,用戶與pins互動,pins是在線內容的視覺書簽(例如,他們想做的菜譜,他們想購買的衣服(fú)等等)。
用戶將這些pins整理成板塊,其中,包含用戶認為在主題上相關的pins集合總的來說,Pinterest圖包含20億個展示(shì)模型pins,10億個boards,以及超過180億(yì)條邊(即pins與(yǔ)相應board的會(huì)員關係)。
www.17C.com的(de)任務(wù)是生成高質量的(de)pins嵌入或表示,以用於推薦為了學(xué)習(xí)這些嵌入,將(jiāng)Pinterest環境建模為一個由兩個互不相幹的集合(I(包含pins)和C(包含boards)中的節點組成的二方圖除了圖結構之外,展(zhǎn)示模型還假設pins/項目 u∈I與(yǔ)實值屬性x_u∈Rd相關(guān)。
一般來說,這些屬性可以指定項目(mù)的元數據或內容信息,在Pinterest的(de)案例中,www.17C.com認為pins與豐富的文本和圖像特征都有關聯(lián)目標是利用這些輸(shū)入屬性以及bipartite graph 的結構來生成高質量的嵌(qiàn)入。
然後,利用(yòng)這些嵌入通過最近鄰查找來展示模型生(shēng)成推薦(jiàn)係統的候選人,或者作為機器學習係統中的特(tè)征來對候選人進行排名前向傳播(bō)算法www.17C.com考慮的任務是為一個節點u生成一個嵌入z_u,這取決(jué)於節點(diǎn)的輸入特征和這個節點周圍的圖結構。
PinSage算法(fǎ)的核心是一個本地化的卷積(jī)操作,在這(zhè)裏www.17C.com學習如何(hé)從u的鄰域聚合信息(圖6)整個(gè)過程詳見算法1其基本(běn)思想是,我展示模型們通過密(mì)集神經網絡轉換u的鄰(lín)域表示z_v ,∀v∈N (u),然(rán)後在生成的向量集(jí)上應用聚合器/池化函數(line 1)。
這個聚合步驟提供了一個u的(de)本地鄰域N(u)的(de)向量表示(shì)n_u然後,將聚合的鄰域向量n_u與(yǔ)u的(de)當前表示h_u連接起來,並將連接的向量通(tōng)過另(lìng)一(yī)個密集的神經網(wǎng)絡層進行轉換(Line 2)展示模型(xíng)作(zuò)者觀(guān)察到在使用串聯操作時有明顯的(de)性能提升。
此外,第3行的歸一化處理能夠使得訓練(liàn)更加穩定,對歸一(yī)化嵌入進行近似近鄰搜索的效(xiào)率更高該算法的輸出是一個u的向量表示,它包含了關於自身和局部圖鄰域的信息(xī)基於重要性的鄰域PinSAGE的一個重要創新是如何定義(yì)節點鄰域N(u),也就是說,如何選擇算法1中(zhōng)的鄰域集展示模型合來進行卷積。
以前的GCN方法隻是檢查k-hop圖的鄰域,而在(zài)PinSage中,定義了基於重要性的鄰域(yù),其中一個節(jiē)點u的鄰域被定義為(wéi)對節點u影響最大的T個節點具體來說,模擬從節點u開始的隨機行走,並計算隨(suí)機行走所訪問的節點(diǎn)的(de)L1歸一化訪問(wèn)計數。
然後(hòu),將u的鄰域定義為相對於節點u具有最(zuì)高(gāo)歸一化訪問計數(shù)展示模型的前T個節點這種基(jī)於重(chóng)要性的鄰域定義有兩方麵的優勢(shì)首先,選擇固定(dìng)數量(liàng)的節點進行聚(jù)合,使www.17C.com能夠在訓練(liàn)期間控製(zhì)算法的內存占(zhàn)用其次,它允許算法1在匯總局部向量表示時考慮到鄰居的重要性。
特別是,將算法1中的γ作為加權平均數來實現,其權重根據(jù)L1歸一化訪問計數來定義作者把這種新的方法稱為重要性集(jí)合堆疊卷積每展(zhǎn)示模型次應用卷積(jī)操作(算法1)都(dōu)會得到一個新的節點表示,我(wǒ)們可以將多個這樣的卷積(jī)堆疊在(zài)一起,以便獲得關於節點u的局部圖結構(gòu)的更多信息。
特別是引入多層卷積(jī),其中,第k層的卷(juàn)積輸入取決於第(dì)k-1層輸出的表示(圖6),初始(即 "第0層(céng)")表示等於輸入節點特征算法(fǎ)1中的模型參數(Q、q、W和w)是各節點共享的,展示(shì)模型但各層之間有所不同算(suàn)法2詳細說明(míng)了(le)堆(duī)疊卷積如何為mini-batch的節點集M生成嵌入(rù)。
首先計算每(měi)個節點的(de)鄰域(yù),然後應用K卷積迭代來生成目標節點的K層表示最(zuì)後卷積層的輸(shū)出再(zài)通過一個全連接的神經網絡(luò)來生成最終的輸出嵌入z_u,∀u∈M隨後學習的模型的全套參數:每(měi)個卷積層(céng)的權重(chóng)和偏置(zhì)參數(Q(k),q(展示模型k),W(k),w(k), ∀k∈{1,...,K})以及最後密集神經網絡層(céng)的(de)參數G1,G2和g。
算法1中第1行的輸出維度(即Q的列空間維度)在所(suǒ)有層都被設定為(wéi)m為(wéi)了簡單起見,將所有卷積層的輸出維度(即算法1第3行的輸出)設置為相等,用d表示這個尺寸參數(shù)模型的(de)最終輸出維度(應用算法2第18行後)也設展示模型置為d。
以(yǐ)有監督(dū)的方式訓練PinSage,使用的(de)損失函數為 max-margin ranking loss假設www.17C.com可以獲得一組有標簽的物品對L,其中,集合中的物品(pǐn)對(q,i)∈L,被假設為是相關的,即www.17C.com假設如果(q,i)∈L,那麽物品i是查詢(xún)物品q的一(yī)個好的推薦(jiàn)候選者。
訓(xùn)練階段的目標是優化PinS展示模型age的參數,使標簽集合中的物品對(q,i)∈L的輸出嵌入接近為了訓練模型的參數,www.17C.com(men)使用一個基於最大邊際的損失函數( max-margin-based loss function)。
其基本思想是,www.17C.com要使正例的內積(jī)最大化,即查詢項和相應的相關項的嵌入同時(shí),www.17C.com(men)要確保負樣本(běn)的內積—即查詢項的嵌入與不展示模型相(xiàng)關項的內積—比正樣本的內積小一些,且有一(yī)定的預設幅度因此,單對節點嵌入(zq, zi):(q,i)∈L的損失函數為:。
當前 SOTA!平台收錄 PinSage 共 3 個模型實現資源項目SOTA!平台項目詳情頁PinSage前往 SOTA!模(mó)型(xíng)平台獲取(qǔ)實現資源:https://sota.jiqiz展示模型(xíng)hixin.com/project/pinsage。
5、 TDMTDM(Tree-based Deep Model)是一種新的基於(yú)樹的方法,它可以提供與語料庫大小相對應的對數複(fù)雜度(dù),如深度神經網絡,主要想法是通過自上而下(xià)地(dì)遍曆樹(shù)狀節點,對每個用戶-節點對進行決策,從粗到(dào)細地預測用戶興趣。
樹狀結構可以展示(shì)模(mó)型聯合學習,以更好地兼容用戶的興趣分布,從而促進(jìn)訓(xùn)練和預測圖7. 淘寶(bǎo)網展示廣告推薦係統的係統架構(gòu)在收到用戶的(de)頁麵瀏覽請求後,係統使用用戶特征、上下文特征和項目特征作為輸入,從匹配服務器的整個語料庫(數以億計)中生成一個相對小得多(duō)的候選項目集(通常是數百個)。
基於樹形的推薦模型在這個階段做了大量工(gōng)作,展示(shì)模型將候選集的規(guī)模縮小(xiǎo)了幾個數量級(jí)TDM模型旨在構建一個有數百個項目的候選集根據用戶是否對生成的候選項目感興趣,給出了(le)一個印象質量的上限如何從整個語料庫中提取(qǔ)候選人,權衡效率和效果是工業級應用要解決的關鍵問題。
圖8. 基於樹形的深度(dù)模型架構用戶行為(wéi)根據時間戳劃分為不同的時間窗口在每個時間窗口中,項目嵌入展示模型加權平均,而權重來自激活單元每個時間窗口的輸出(chū)和候選節點的嵌入被串聯起來作為神經(jīng)網絡的輸入(rù)在三個具有(yǒu)PReLU激活和批量歸一(yī)化的全連接層之後,使用二(èr)進(jìn)製softmax來得出用戶是否對候選節點感興趣的概率。
每個(gè)項目和其相應的葉子節點共享相同的嵌入所有嵌入都是隨機初始化的TDM架構如圖(tú)8所示樹搜索的方式展示(shì)模(mó)型體現在右下角,作者希望最終構建出來的樹是滿足貪婪搜索的,即從上而下,每層保留topk個(gè)路徑,最終就能得到推薦的(de)topk個商品。
為樹上的每個節點學習低維嵌入,並使用注意力模塊軟搜索相關的(de)行為,以更好(hǎo)地(dì)代表用戶為了利用包含(hán)時間戳信息的用戶行為,作(zuò)者設計了(le)分塊輸入層來區分位於不(bú)同時間窗口的(de)行為曆史行為可(kě)以展示模型沿著時間線(xiàn)劃分為不同的時間窗口(kǒu),每個時間窗(chuāng)口中的(de)物品嵌入是加權平均的。
注意(yì)力模(mó)塊和下麵的網絡大大加強了(le)模型的能力,也使用戶對(duì)候選項目的(de)偏(piān)好(hǎo)不能被調節到內部樹的初始化樹用於(yú)表征用戶興趣(qù)的層次信息,所以www.17C.com的目標是將類似的項目組織(zhī)在樹型(xíng)結構接近的位置上鑒於類別信息在許多領域都(dōu)是廣泛存在(zài)的,作者提出了一個(gè)展示模型利(lì)用項目的類別信息來建立初始樹的方法。
www.17C.com以二叉樹為例,首先,對所有類別進行隨機排序,並將屬於(yú)同(tóng)一類別的項目以類別內(nèi)的隨(suí)機順序放在一起如果一個項目(mù)屬於一個以上的類別,將該項目分配到一個隨機(jī)的類別,以保證其(qí)唯一性通(tōng)過這種方式,我(wǒ)們可以得到一(yī)個排序後的項目列表(biǎo)。
其次,這些排(pái)序後的項目被遞歸地減(jiǎn)半為兩個相展示模型等的(de)部分,直到當前的集合隻包含一個項目,這可以自上而下地構建一個接近完整的二叉樹樹的學(xué)習作為模型的一部分(fèn),每個葉子(zǐ)節(jiē)點的嵌入可以在模型訓練後學習然後,www.17C.com使(shǐ)用學習到的(de)葉子節點的嵌(qiàn)入向(xiàng)量(liàng)來聚類一個新的樹。
考慮到(dào)語料庫的大小,www.17C.com使用k-means聚類算法,因為(wéi)它具有良好的可(kě)擴展(zhǎn)性在每一步,項目根據其嵌展示模型入(rù)向量聚類為兩個子集調節兩(liǎng)個子集至(zhì)相等以(yǐ)獲得一個更平衡的樹(shù)當隻剩下一個項目時,遞歸(guī)就會停止,二叉樹可以用(yòng)這樣一種自上而下的方式來構(gòu)建。
深度模型和樹結構(gòu)是以另一種方式共同學習的:1)構建初始樹(shù)並(bìng)訓練模型直到收斂;2)在(zài)訓練的葉子節點嵌入的基(jī)礎上學習獲得新的樹結(jié)構;3)用學習的新樹結構再次訓練模型。MI展示模型MD
Copyright © 2002-2020 上海(hǎi)潤之模型(xíng)設(shè)計有限公司 版權所(suǒ)有 展示模型,展品模型,展廳模型,展示道具,展廳展品,展品道具,模型定(dìng)製(zhì),模(mó)型公司,上海模型公司 備案號:滬(hù)ICP備20018260號