基於內容和使用者畫像的個性化推薦

2021-09-21 11:42:30 字數 1118 閱讀 9226

目前比較流行的個性化推薦演算法有以下幾種:

本文所講述的基於內容和使用者畫像的個性化推薦屬於第一種。對於此種推薦,有兩個實體:內容和使用者,因此需要有乙個聯絡這兩者的東西,即為標籤。內容轉換為標籤即為內容特徵化,使用者則稱為使用者特徵化。對於此種推薦,主要分為以下幾個關鍵部分:

綜合上面講述的各個部分即可實現乙個基於內容和使用者畫像的個性化推薦系統。如下圖所示:

標籤是聯絡使用者與物品、內容以及物品、內容之間的紐帶,也是反應使用者興趣的重要資料來源。標籤庫的最終用途在於對使用者進行行為、屬性標記。是將其他實體轉換為計算機可以理解的語言關鍵的一步。

標籤庫則是對標籤進行聚合的系統,包括對標籤的管理、更新等。

一般來說,標籤是以層級的形式組織的。可以有一級維度、二級維度等。

標籤的**主要有:

+ tfidf

即可。此外,也可以使用textrank

這裡需要注意的一點是對於關聯標籤的處理,比如使用者的標籤是足球,而內容的標籤是德甲、英超,那麼使用者和內容是無法聯絡在一起的。最簡單的方式是人工設定關聯標籤,此外也可以使用word2vec一類工具對標籤做聚類處理,構建主題模型,將德甲、英超聚類到足球下面。

內容特徵化即給內容打標籤。目前有兩種方式:

針對機器自動打標籤,需要採取機器學習的相關演算法來實現,即針對一系列給定的標籤,給內容選取其中匹配度最高的幾個標籤。這不同於通常的分類和聚類演算法。可以採取使用分詞 + word2vec

來實現,過程如下:

此外,可以使用文字主題挖掘相關技術,對內容進行特徵化。這也分為兩種情況:

通用情況下,只是為了效果優化的特徵提取,那麼可以使用非監督學習的主題模型演算法。如lsa、plsi和gap模型或者lda模型。

在和業務強相關時,需要在業務特定的標籤體系下給內容打上適合的標籤。這時候需要使用的是監督學習的主題模型。如slda、hslda等。

使用者特徵化即為使用者打標籤。通過使用者的行為日誌和一定的模型演算法得到使用者的每個標籤的權重。

另,在非業務強相關的情況下,還可以考慮使用lsa主題模型等矩陣分解的方式對使用者進行標籤化。

有了內容特徵和使用者特徵,可以使用隱語義模型

進行推薦。這裡可以使用其簡化形式,以達到實時計算的目的。

使用者對於某乙個內容的興趣度(可以認為是ctr):

原文出處:後端技術雜談

如何實現基於內容和使用者畫像的個性化推薦

基於內容和使用者畫像的個性化推薦,有兩個實體 內容和使用者。需要有乙個聯絡這兩者的東西,即為標籤。內容轉換為標籤即為內容特徵化,使用者則稱為使用者特徵化。因此,對於此種推薦,主要分為以下幾個關鍵部分 綜合上面講述的各個部分即可實現乙個基於內容和使用者畫像的個性化推薦系統。如下圖所示 標籤庫 標籤是聯...

基於內容的電影推薦 使用者畫像

使用者畫像構建步驟 使用者畫像建立import pandas as pd import numpy as np from gensim.models import tfidfmodel from functools import reduce import collections from ppri...

個性化推薦的幾條思路

關於個性化推薦的方法,這裡大致總結一下。基於使用者 根據使用者的相似性,給特定使用者推薦與他相似的使用者所購買的商品 基於商品 根據商品的相似性,給購買特定商品的使用者推薦與之相似的商品。參考鏈結1 關聯演算法 knn裡最常用來度量 相似性 的是相關係數,關聯演算法實際上是另一種可以用來度量 相似性...