一、基於圖模型的推薦
在不考慮標簽時,基於二項圖有兩種隨機游走的圖推薦算法:
1.probability spreading
隨機游走算法,在游走中,每個目標得到權重是基於歸屬者的邊計算出來的。
每次傳播(item->user->item)后用戶Ui的興趣向量:
$$f_j^p=\sum_{l=1}^{n}\sum_{s=1}^{m}\cfrac{a_{lj}a_{ls}a_{is}}{K(U_l)K(I_s)},j=1…m$$
2.heat spreading
規則與ProbS相反,在游走中,每個目標得到權重是基於自己的邊計算出來的。
每次傳播后用戶Ui的興趣向量:
$$f_h^p=\cfrac{1}{K(I_j)}\sum_{l=1}^{n}\sum_{s=1}^{m}\cfrac{a_{lj}a_{ls}a_{is}}{K(U_l)},j=1…m$$
其中:$K(I_j)=\sum_{l=1}^{m}a_{lj}$是節目j的鄰域大小,$K(U_l)=\sum_{l=1}^{n}a_{ls}$是用戶l的鄰域大小。
$a_{ij}$是表示用戶i和物品j之間是否有邊存在的二元向量。
相比之下,Heats算法傾向於降低熱門item的權重,而Probs中與增強對熱門item的推薦。
在隨機游走算法的基礎上,有基於三分圖的標簽推薦算法:
圖中,用戶i的每個item的權重(1 or 0)會同時像用戶和標簽進行傳播,這樣每次傳播后的興趣向量:
$f_j^t=\lambda f_j^p + (1-\lambda) f_j^{pt}$,其中$f_j^p$和$f_j^{pt}$分別是從(item->user->item)和(item->tag->item)傳播后得到的權重。
二、矩陣分解的張量模型
對三元陣$Y_{(n\times m\times t)}$進行矩陣分解,C為核張量,U,I,T為用戶特征,物品特征和標簽特征矩陣。
根據分解結果對Y進行填充。
填充后即得到評分矩陣