用戶建模#

用戶建模是推薦系統的基礎,目標是通過各種資料構建用戶的興趣畫像。

用戶畫像 vs 用戶角色#

概念英文定義用途
用戶畫像User Profile真實用戶資料的結構化表示個性化推薦、精準營銷
用戶角色Persona目標用戶群的虛擬代表產品設計、用戶研究

推薦系統中使用的是 User Profile,是基於真實資料的用戶特徵向量。

用戶畫像的構成#

三類資料來源#

用戶畫像 = 人口統計學特徵 + 行為特徵 + 興趣標籤
類別示例取得方式
人口統計學年齡、性別、地域、職業用戶註冊、第三方資料
行為特徵瀏覽、點擊、購買、收藏埋點日誌
興趣標籤喜歡科技、愛看電影挖掘生成

標籤體系設計#

標籤需要具備以下特點:

特點說明
層次結構從粗到細,如:數碼 → 手機 → iPhone
互斥與非互斥性別標籤互斥,興趣標籤不互斥
權重標籤強度,反映興趣程度
時效性興趣會隨時間衰減

從文本挖掘用戶興趣#

關鍵詞提取#

TF-IDF#

TF-IDF(t,d) = TF(t,d) × IDF(t)

其中:
- TF(t,d) = 詞 t 在文檔 d 中的出現次數 / 文檔 d 的總詞數
- IDF(t) = log(總文檔數 / 包含詞 t 的文檔數)

TF-IDF 的核心思想:一個詞在某篇文檔中出現頻率高,但在整個語料庫中出現頻率低,這個詞就是這篇文檔的關鍵詞。

TextRank#

基於 PageRank 的關鍵詞提取:

  1. 將文本分詞
  2. 構建詞語共現圖
  3. 利用 PageRank 計算每個詞的權重
  4. 選取權重最高的詞作為關鍵詞

命名實體識別 (NER)#

識別文本中的專有名詞:

  • 人名
  • 地名
  • 機構名
  • 品牌名
  • 產品名

主題模型#

LDA (Latent Dirichlet Allocation)#

文檔 → 主題分佈 → 詞語分佈

LDA 的假設:

  1. 每篇文檔是多個主題的混合
  2. 每個主題是多個詞的分佈
  3. 生成過程是:先選主題,再選詞
LDA 生成過程
  1. 對每個主題 k,從 Dirichlet(β) 生成詞分佈 φ_k
  2. 對每篇文檔 d:
    • 從 Dirichlet(α) 生成主題分佈 θ_d
    • 對文檔中的每個詞位置 n: - 從 Multinomial(θd) 選擇主題 z_dn - 從 Multinomial(φ{z_dn}) 選擇詞 w_dn

詞嵌入 (Word Embedding)#

將詞語映射到低維稠密向量空間。

Word2Vec#

兩種訓練方式:

模型輸入輸出
CBOW上下文詞中心詞
Skip-gram中心詞上下文詞
# 使用 gensim 訓練 Word2Vec
from gensim.models import Word2Vec

model = Word2Vec(sentences, vector_size=100, window=5, min_count=1)
vector = model.wv['手機']  # 取得詞向量
similar = model.wv.most_similar('手機')  # 相似詞

Word2Vec 的詞向量具有加法性質: vector('國王') - vector('男人') + vector('女人') ≈ vector('女王')

基於內容的推薦#

將用戶畫像和物品畫像映射到同一向量空間,通過計算相似度進行推薦。

流程#

1. 物品內容分析 → 物品向量
2. 用戶行為分析 → 用戶向量
3. 計算用戶向量與物品向量的相似度
4. 按相似度排序,返回 TopK

相似度計算#

方法公式適用場景
餘弦相似度cos(θ) = A·B / (|A||B|)文本、稀疏向量
歐氏距離√(Σ(a_i - b_i)²)稠密向量
Jaccard 相似度|A∩B| / |A∪B|集合比較

優缺點#

優點缺點
不需要其他用戶資料需要物品內容分析
可以推薦新物品難以發現新興趣
推薦結果可解釋依賴特徵工程質量
不會有冷啟動問題(物品側)容易過度專業化

用戶興趣衰減#

用戶興趣會隨時間衰減,常用指數衰減模型:

weight(t) = weight_0 × e^(-λt)

其中:
- weight_0:初始權重
- λ:衰減係數
- t:時間差

實踐中,可以使用滑動窗口只保留最近 N 天或最近 K 次行為,簡化計算。

實踐建議#

  1. 標籤粒度:太粗沒有區分度,太細覆蓋不足
  2. 多維度建模:結合多種特徵,不要只依賴單一維度
  3. 實時更新:用戶興趣會變化,需要及時更新畫像
  4. A/B 測試:不同的建模方式需要通過實驗驗證效果

總結#

要點說明
用戶畫像真實用戶資料的結構化表示
資料來源人口統計學 + 行為 + 興趣標籤
文本挖掘TF-IDF、LDA、Word2Vec
基於內容推薦用戶向量與物品向量的相似度匹配
興趣衰減使用時間衰減因子更新權重