推薦系統架構與算法流程詳解

文 | yijiapan

騰訊 WXG 數據分析師


推薦算法的理解

如果說互聯網的目標就是連接一切,那麼推薦系統的作用就是建立更加有效率的連接,推薦系統可以更有效率的連接用戶與內容和服務,節約了大量的時間和成本。如果把推薦系統簡單拆開來看,推薦系統主要是由數據、算法、架構三個方面組成。

推薦系統的整體框架

推薦的框架主要有以下幾個模塊

用戶畫像

用戶標籤

標籤是我們對多維事物的降維理解,抽象出事物更具有代表性的特點。 我們永遠無法完全的瞭解一個人,所以我們只能夠通過一個一個標籤的來刻畫他,所有的標籤最終會構建爲一個立體的畫像,一個詳盡的用戶畫像可以幫助我們更加好的理解用戶。

用戶畫像的分類

原始數據

原始數據一共包含四個方面

事實標籤

事實標籤可以分爲靜態畫像和動態畫像。

隱式行爲的權重往往不會有顯示行爲大,但是在實際業務中,用戶的顯示行爲都是比較稀疏的,所以需要依賴大量的隱式行爲。

模型標籤

模型標籤是由事實標籤通過加權計算或是聚類分析所得。通過一層加工處理後,標籤所包含的信息量得到提升,在推薦過程中效果更好。

內容畫像

內容畫像: 例如對於文章中的新聞資訊類推薦,需要利用 NLP 的技術對文章的標題,正文等等提取關鍵詞、找到對應的標籤等。視頻除了對於分類、標題關鍵詞的抓取外,還依賴於圖片處理的技術。因此在推薦前需要對推薦的商品或內容進行一系列的處理過程。環境變量: 對於推薦系統來說,環境畫像也非常的重要。例如在短視頻的推薦場景中,用戶在看到一條視頻所處的時間、地點以及當時所瀏覽的前後內容、當天已瀏覽時間等是非常重要的變量。推薦內容與場景通常可以分爲以下幾類

算法構建

推薦算法流程

推薦算法其實本質上是一種信息處理邏輯,當獲取了用戶與內容的信息之後,按照一定的邏輯處理信息後,產生推薦結果。熱度排行榜就是最簡單的一種推薦方法,它依賴的邏輯就是當一個內容被大多數用戶喜歡,那大概率其他用戶也會喜歡。但是基於粗放的推薦往往會不夠精確,想要挖掘用戶個性化的,小衆化的興趣,需要制定複雜的規則運算邏輯,並由機器完成。推薦算法主要分爲以下幾步:

來源:方正證券《抖音 vs 快手深度覆盤與前瞻 - 短視頻 130 頁分析框架》

召回策略

  1. 熱銷召回:將一段時間內的熱門內容召回。

  2. 協同召回:基於用戶與用戶行爲的相似性推薦,可以很好的突破一定的限制,發現用戶潛在的興趣偏好。

  3. 標籤召回:根據每個用戶的行爲,構建標籤,並根據標籤召回內容。

  4. 時間召回:將一段時間內最新的內容召回,在新聞視頻等有時效性的領域常用。是常見的幾種召回方法。

精排策略

精排模型

精排模型的不同類別

精排模型的基本原理

Model-based 精排模型——邏輯迴歸爲例

原理介紹

  1. 概念:邏輯迴歸通過 sigmoid 函數,將線性迴歸變爲可以解決二分類的方法,它可用於估計某種事物發生的可能性。

  1. 計算公式:Y 根據目標設計:例如是否點擊(是:1,否:0,最後預測一個 0-1 之間的點擊概率);X 根據特徵工程設計:這一塊就涉及到了前面提到的用戶畫像與內容畫像,所有的畫像都是對樣本的特徵的刻畫。特徵工程需要根據業務場景選擇合適的特徵並進行一定的加工;W 由模型訓練得到。構建流程基於我們的目標,需要進行樣本的收集(樣本是對客觀世界的具體描述),通過對已收集到的樣本進行特徵構造,並對其進行訓練,最終求出模型參數的具體數值。

建立樣本邏輯迴歸爲有監督模型,因此需要有已經分類好的樣本。正樣本:用戶曝光過某物品並點擊。負樣本:用戶曝光過某物品並且沒有點擊。如果正負樣本差距過大,可以將負樣本隨機抽樣後與正樣本一起訓練。或只保留有點擊行爲的用戶作爲樣本,將曝光但是沒有被點擊的物品作爲負樣本。

特徵工程特徵工程是對收集到的樣本進行更加深度的特徵刻畫。雖然作爲算法人員與用戶接觸較少,但對身邊使用該產品的同學,進行深入的觀察與訪談,瞭解他們對於所推薦內容的反饋,往往可以得到意料之外的特徵開發方向。主要分爲以下幾個維度。

不同交叉方法得到的不同的參數數量

其他

拓展閱讀:Learning and Reasoning on Graph for Recommendation

staff.ustc.edu.cn/~hexn

Concept to Code:Deep Learning for Multitask Recommendation

drive.google.com/file/d

算法衡量標準

算法衡量指標

獲得推薦效果

如何去獲得推薦效果。可以分爲離線實驗、用戶調查、在線實驗三種方法。

除了算法本身之外...

推薦算法是否會導致信息不平等和信息繭房?

推薦系統並非導致信息不平等和信息繭房的根本原因。

但不可否認的是,推薦系統的便捷性、自動化、實時性會加重這些問題。在這樣的情況下,我們能做些什麼?

推薦算法如何幫助用戶挖掘小衆興趣?

算法如何更好的與產品結合?

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/xoxe2MWz2Dky0s1MH56GCw