十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
youtube召回邏輯是怎樣的,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名與空間、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、囊謙網(wǎng)站維護、網(wǎng)站推廣。
上圖是整個架構(gòu)中的候選集生成模塊, 也就是召回模塊。
下面的這些embedding直接連起來, 效果, 不怎么好, 感覺只能做base line
example age是當前訓(xùn)練時間-日志時間, 由于某個視頻的熱度并不是均勻分布在時間線上的, 加上這個特征可以讓分布盡量的與真實的保持一致, 很有意思的一點, 但是原因我沒想太明白。
之后就是三層Relu, 最后輸出一個vector, 假設(shè)為 20x1的embedding, 最后輸出的這個就是 user embedding, 之后softmax然后ANN進行最近鄰檢索就行。
問題來了, 為什么能拿這個DNN最后生成的user embeding 去召回, 進行ANN的Item Embedding從哪里來的? 以及ANN的時候用的是哪個距離?
首先, 對于某一個輸入的user embedding, 判斷此條件對某個item到底點不點, 可以理解為一個多分類問題, 即一個item就是一個分類, 假設(shè)視頻個數(shù)為200w, 那么其實就是使用softmax判斷 20維度的user embedding 到底會落在 200w中的哪一個。
所以, softmax會生成一個200w x 20 的denser, 那么每一個item就是一個 20x1的embedding, 用以表明item的embeding
再看一下softmax的公式, 那就是user embedding 與 item embedding, 然后加和求處理求最大, 但是由于在線上服務(wù)的時候不可能直接softmax算一遍, 由于softmax的特性, 只需要求兩個embedding內(nèi)積最大的那些來召回即可。
所以最后的item embedding為softmax產(chǎn)生的, 由于是一個softmax多分類問題, 所以需要在KNN的時候,求內(nèi)積最大來實現(xiàn),
具體實現(xiàn)可以采用Faiss, 創(chuàng)建IndexIVFFlat索引, 相似度方法采用 faiss.METRIC_INNER_PRODUCT, 把200w的item embedding放進去, 線上服務(wù)的時候那個三層模型實時反饋生成user embedding, 然后在faiss中做KNN
看完上述內(nèi)容,你們掌握youtube召回邏輯是怎樣的的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!