《2019年個性化信息流原理揭秘-算法與架構.pdf》由會員分享,可在線閱讀,更多相關《2019年個性化信息流原理揭秘-算法與架構.pdf(67頁珍藏版)》請在三個皮匠報告上搜索。
1、個性化信息流原理揭秘:算法與架構演講提綱1.信息流產品簡介2.架構&流程a.文本特征,用戶畫像b.內容挑選(candidate generation)c.排序(ranking)d.人工規則規范3.總結信息流產品簡介什么是個性化信息流以個人畫像為基礎,提供千人千面個性化信息的產品。今日頭條抖音百度信息流Google Discover個性化信息流的前身遠古時代:門戶網站個性化信息流的前身近代:訂閱類產品個性化信息流的前身推薦系統為基礎的電商和內容服務AmazonNetflix架構&流程信息流產品的組成用戶用戶畫像畫像產品產品算法算法內容內容基礎架構基礎架構信息流的業務流程原始內容原始內容收集及標注
2、收集及標注候選內容候選內容篩選篩選排序排序收集反饋收集反饋更新用戶畫像更新用戶畫像產品呈現產品呈現原始內容收集、特征提取、用戶畫像原始內容收集內容收集方式:爬?。üW內容)PGC(合作伙伴發布內容,例如:公眾號,頭條號文章)UGC(用戶產生內容,例如:抖音)特征(Feature)定義:從原始數據提取的單個可衡量的屬性(例如,對娛樂新聞的關注度)特征是信息流產品的基石,用戶畫像的核心,內容推薦的最重要依據特征類別:內容特征(例如:關鍵字,內容主題,來源)熱度特征(例如:全局熱度,分類熱度)用戶特征(例如:用戶年齡,性別,收入)環境特征(例如:時間,地點)特征例子特征體系特征體系:自建特征關鍵字體
3、系工作量大,但自由度高利用已有特征關鍵字庫例如:利用現有的知識圖譜(Knowledge Graph)常見的特征標注方式:人工標注準確,但速度慢,適合起步階段自動標注需要強大的數據挖掘以及人工智能實力(例如NLP,Computer Vision,等等)特征提取TF-IDF 算法簡介特征提取業界例子用戶畫像用戶畫像組成對內容特征的興趣程度個人基本情況(性別,年齡,地理位置)體育娛樂經濟科技年齡位置小明0.70.80.315-25北京小強0.30.80.625-35上海小紅0.20.70.915-25深圳用戶畫像用戶畫像更新途徑顯式更新用戶主動輸入的興趣,例如關注的話題,明星,球隊等等隱式更新通過前
4、端埋點,后端對日志(log)進行批量處理獲得更新頻率離線更新,例如每天一次。技術難度低,用戶體驗差實時更新,技術難度大,用戶體驗好內容篩選(Candidate Generation)內容推薦用戶畫像原始內容召回粗粒度候選內容算法篩選細粒度候選內容召回Why:精細篩選耗費資源較大,不可能為每個用戶都對海量內容全部進行What:從海量內容中,迅速篩選出粗粒度候選集,為精細篩選做準備How:建立【特征-內容】倒排表,按照用戶畫像進行截斷科技doc_3(0.83)doc_1(0.52)doc_7(0.4).體育doc_9(0.92)doc_2(0.88)doc_6(0.52).娛樂doc_5(0.78
5、)doc_8(0.66)doc_4(0.25).搞笑doc_2(0.91)doc_5(0.78)doc_7(0.33).算法推薦兩大組成部分:Training:從日志數據,訓練出能計算相似性的模型。并且保存階段性結果以提高serving效率Serving:在運行時快速根據訓練階段的成果,從海量內容中尋找k個最相似的物品算法推薦目標:從粗粒度候選集,通過高級算法篩選出用戶最可能感興趣的內容方法:Content Based(內容屬性相似性推薦)Collaborative Filtering(協同過濾)DNN(深度學習)本質:推薦算法本質上解決的是kNN(k個最近鄰居)問題kNN需要坐標系及坐標:向
6、量空間距離(相似度)度量:Jaccard,Cosine相似性計算:Content-Based,CF,DNN推薦算法簡介目的:推薦算法的目的,是根據給予的query,尋找最匹配的N個item術語:Query:需要獲得推薦的對象,可以是用戶id,用戶使用產品的歷史,用戶當前的上下文環境(context)Item:被推薦的物品,可以是電商產品,電影/視頻,App,O2O服務,等等距離:衡量相似性的指標,常見有Jaccard,余弦相似性推薦算法簡介Query和Item都用共同特征體系內的特征表示,因此能被映射到同一坐標系內本質上,推薦算法解決的是一個kNN(k-Nearest Neighbord)問題
7、,即計算離Query距離最近的K個Item。步驟:Training:計算Query和Item的特征Serving:計算并返回k個最相似的item推薦算法-相似度計算兩種主流的相似度計算方法Jaccard相似度Cosine(余弦)相似度兩個用戶都感興趣物品數目兩個用戶中只要有一個用戶感興趣的物品數目Jaccard vs Cosine similarity Jaccard簡單直觀,計算效率更高 Cosine計算向量夾角,更適合向量空間特征 Jaccard多用于二元特征(點贊,點踩),Cosine適合非二元特征 沒有絕對優劣,只有更適合的應用場景,因此應該因地制宜推薦算法傳統算法:基于item內容特
8、征(Content Based)的相似性算法推薦和用戶喜歡的產品類似的產品協同過濾(Collaborative Filtering)推薦和用戶類似的用戶喜歡的產品,或者用戶喜歡的產品類似的產品現代流行算法:神經網絡(DNN)Content Based算法特點:利用特征,尋找user和item之間的相似性 無需知道其他用戶的特征和愛好 對新item冷啟動時特別有效的算法例子:跟怒用戶喜歡的物品特征,推薦類似物品Content Based算法-例子體育娛樂經濟科技.新聞10.70.3新聞20.30.70.6.用戶10.50.20.60.5.用戶畫像Content Based算法-例子體育娛樂經濟科
9、技用戶1得分新聞10.70.30.5新聞20.30.70.60.78.用戶10.50.20.60.5.用戶畫像Content Based算法優點:無需知道其他用戶喜好能有效推薦偏門item缺點:需要domain knowledge,對item建模,擴展性差協同過濾基于query和item的特征相似性計算推薦 UserCF:推薦和用戶類似的用戶喜歡的產品 ItemCF:推薦和用戶喜歡的產品類似的產品 Matrix Factorization:利用機器學習挖掘user和item隱語義特征UserCF流程:1.計算用戶相似度(Jaccard,余弦等等)2.根據用戶相似度*用戶對物品的興趣,最后得出t
10、op K相似度最大的itemUserCF流程:1.計算用戶相似度(Jaccard,余弦等等)2.根據用戶相似度*用戶對物品的興趣,最后得出top K相似度最大的item相似度(jaccard):2/4=0.51/4=0.250/5=0UserCF流程:1.計算用戶相似度(Jaccard,余弦等等)2.根據用戶相似度*用戶對物品的興趣,最后得出top K相似度最大的item推薦度:2/4=0.51/4=0.250/5=0ItemCF流程:1.計算物品之間相似度(Jaccard,余弦等等)2.根據物品相似度*用戶對物品的興趣,最后得出top K相似度最大的itemUserCF vs ItemCFU
11、serCF更社會化,反應群體興趣。適合User比較穩定,Item變化很快的產品,例如新聞ItemCF更個性化,反應用戶興趣傳承。適合Item更新比較穩定的產品,例如電影推薦。共同優點:無需domain knowledge,相似度依據為用戶對Item的行為,通用性高共同問題:相似性矩陣非常稀疏(Sparse),實際應用中效率不高隱語義模型:Matrix FactorizationContent-Based+CF=Matrix Factorization一種同時利用了相似性以及自身特征,但不需要行業知識建模的方法利用隱特征(Latent Feature)對User和Item構建embeddings
12、通過矩陣分解,用兩個較小的embeddings矩陣逼近原來的相似性矩陣和Content Based算法里面需要具備domain knowledge來對user和item進行建模不同,latent feature embeddings可以通過機器學習方法自動學會隱語義模型:Matrix Factorization隱語義模型:Matrix Factorization基于神經網絡的相似性模型隱語義模型解決了矩陣稀疏的問題,但并沒有利用query和item本身屬性(文章話題,關鍵字等等),以及當前context(時間,地點,等等)基于神經網絡的相似性模型,能在具備隱語義模型優點的同時,充分利用quer
13、y和item本身的屬性神經網絡的幾個基本概念Neural Net ArchirtectureSGDBackpropEmbeddingsSoftmax深度學習的基本原理 神經網絡Feed ForwardBack propagation of gradient深度學習的基本原理 Backprop&GD梯度下降,迭代優化參數深度學習的基本原理-Embeddings把User和Item映射到向量空間向量空間里面的距離,反映了相似度User和Item之間的關系,有時還能通過向量加減法計算出來例子:Word Embeddings通過向量加減法計算,表達單詞之間的關系深度學習的基本原理 Softmax公式:
14、把最后一層神經元輸出轉化為類型判別的概率(0到1之間)Softmax模型經典分類模型利用softmax計算用戶對item的興趣度,通過和實際結果比較,訓練整個神經網絡訓練目的,得出user embeddings和item embeddingsSoftmax模型輸入層:可以使用user feature:例如:年齡,性別也可以使用環境feature:例如:時間,地點輸入層:user feature,history,etcSoftmax模型輸出層:Softmax計算結果,代表用戶對每個文檔的興趣度和Ground truth一起,計算loss,反向傳播到DNN的每一層,訓練參數輸出層:當前用戶對每個文
15、檔的興趣度Ground truth,用于計算lossSoftmax模型訓練結果:User Embeddings:Softmax前的最后一層神經元Item Embeddings:輸出層每個Item對應的weightUser embeddingsItem Embeddings雙塔模型為user和item分別建立各自的神經網絡每個神經網絡的最后一層為各自的embeddingsUser embeddings和Item embeddings點乘得出最終的感興趣程度相比softmax,能使用上item本身的屬性InterestscoredotUser embeddingsItem embeddingsUs
16、er FeaturesItem FeaturesUser TowerItem Tower算法小結Content Based算法+簡單易懂+能推薦長尾item-需要領域知識-沒有利用相似性算法小結Collaborative Filtering(協同過濾)+無需領域知識+利用相似性-稀疏矩陣耗費資源-冷啟動-沒有利用user或item本身屬性算法小結DNN(神經網絡)+能充分使用user和item的自身屬性+學習功能更強大,例如多層神經元間能學會非線性關系+不用維護稀疏矩陣,避免耗費資源-訓練過程更復雜排序(Ranking)排序(Ranking)針對上一階段產生的推薦內容,進行排序,以獲得最佳“用
17、戶體驗”。對信息流產品來說,好的用戶體驗往往能通過用戶交互反映?!坝脩趔w驗”指標:點擊率,使用時長,回頭率,點贊率,分享率排序的種類:算法排序:通過算法訓練優化指標人工規則排序:通過人工規則,對算法不能覆蓋的商業邏輯(如置頂,事件營銷)進行強制排序排序(Ranking)內容篩選階段的候選內容,和用戶興趣最匹配,可以按照興趣匹配程度依次排序,但可能導致若干問題內容單一化(例如:用戶某一興趣遠高于其他興趣)內容特征最符合用戶畫像的內容,不一定是用戶最愿意點開的內容(例如:多圖的文章可能更吸引用戶點開)沒有用上環境特征,例如:時間,地點解決辦法:預測用戶與文章的交互程度,并按此進行排序交互類型指標點
18、擊率(CTR,Click Through Rate)觀看時長(Duration)點贊率(Like Rate)分享率(Share Rate)預測算法:DNN算法排序ctrTimedurationLocationUser interestslike人工規則排序算法往往不能覆蓋所有的商業邏輯,例如:1.冷啟動a.強制用戶興趣引導2.政策規定a.例如:強制置頂3.運營位a.例如:事件營銷4.多樣性要求a.例如:光靠算法可能越推越窄,導致內容單一在算法排序結束以后,通過人工規則對排序進行重新調整實戰中常見的問題冷啟動冷啟動:新用戶或新內容缺乏歷史數據,因此無法進行基于算法的有效推薦或排序新用戶冷啟動(無
19、法有效推薦內容)解決辦法:新用戶興趣引導,讓用戶顯式“關注”推薦全局熱點按照地理位置推薦地區性熱點新內容冷啟動(無法有效排序),解決辦法初期對排序進行人工加權根據熱度排序根據相似度排序用戶引導多樣性算法的本質是優化給定指標,因此如果指標單一,可能越推越窄內容類別導致排序傾斜(例如:娛樂新聞的用戶交互指標常高于科普類新聞)新用戶初期畫像不完整,導致內容單一化例如:用戶初期行為迅速形成反饋閉環,抖音類全屏推薦產品尤為嚴重解決辦法:產品層面:提供用戶興趣入口,例如:常見頂部頻道欄技術層面:建立多樣性指標,實時檢測推薦結果多樣性定義人工規則,強制內容多樣性把多樣性指標納入算法體系同時使用多種推薦算法,
20、綜合結果總結總結個性化信息流,是以個人畫像為基礎,提供千人千面個性化信息的產品信息流是搜索引擎在移動時代的更符合用戶使用習慣產品形態特征(features)是信息流產品的基石,用戶畫像的核心,內容推薦的最重要依據特征提取,最能體現公司與公司之間的技術實力從日志中提取用戶和特征之間的聯系,就構成了用戶畫像推薦系統的本質,是解決kNN問題算法主要體現在信息流產品中的兩大環節:內容篩選和排序內容篩選有三大類算法:基于內容特征算法,協同過濾算法,神經網絡排序:通過神經網絡預測用戶交互度,用人工規則強制商業邏輯信息流產品是推薦系統的一種,但其實只要有user和item的產品,都已可以通過推薦系統達成個性化