基于内容的推荐算法

根据用户对item的点击次数来判据用户对物品的打分情况

基本流程:

  1. 特征(内容)提取
    提取每个待推荐物品的特征(内容属性),比如说是不同物品的分类标签等。
  2. 用户偏好计算
    利用用户过去的显式评分或者隐式操作记录,计算用户不同特征(内容属性)上的偏好分数。
  3. 内容召回:将待推荐物品的特征与用户偏好得分匹配,取出用户最可能喜欢的物品池。
  4. 物品排序:按照用户偏好召回物品池,可能一次性挑选出很多内容,此时,可以根据这些物品的平均得分等,再继续进行排序。

优点:

  1. 物品没有冷启动问题,因为物品的内容特征不依赖于用户数据;同时,推荐出的物品不会存在过于热门的问题。
  2. 能为具有特殊兴趣爱好的用户进行推荐。
  3. 原理简单,易于发现定位问题。

特征提取:

  1. 结构化的特征。取值限定在某个范围之内,比如固定的标签等。
  2. 非结构化的特征。内容无固定格式,最常见的非结构化特征就是文章。

结果计算

每个物品的内容特征向量,可如下表示:

d j = ( w 1 j , w 2 j , ⋯   , w n j ) d_j = (w_{1j}, w_{2j}, \cdots, w_{nj}) dj=(w1j,w2j,,wnj)

每个物品可以用一个n维向量表示。其中 w n j w_{nj} wnj 表示每一维的特征权重。每一维代表了一个标签或者是一个单词等基础要素。

假如用户喜欢物品{1, 3, 7},则该用户的特征向量可以表示为:
U k = ( d k 1 + d k 2 + d k 3 ) / 3 = ( u 1 k , u 2 k , ⋯   , u n k ) U_k = (d_{k1} + d_{k2} + d_{k3})/3 = (u_{1k}, u_{2k}, \cdots, u_{nk}) Uk=(dk1+dk2+dk3)/3=(u1k,u2k,,unk)
那么用户k在文章t上的得分可以使用余弦公式计算得到:
s c o r e = cos ⁡ θ = ∑ i = 1 n ( u i k × w i t ) ∑ i = 1 n u i k 2 × ∑ i = 1 n w i t 2 score = \cos\theta = \frac{\sum_{i=1}^n (u_{ik} \times w_{it})}{ \sqrt{\sum_{i=1}^n u_{ik}^2} \times \sqrt{\sum_{i=1}^n w_{it}^2} } score=cosθ=i=1nuik2 ×i=1nwit2 i=1n(uik×wit)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值