基于用户的协同过滤算法

本文介绍了基于用户协同过滤算法的原理,包括用户向量化表示、使用向量空间模型计算基础相关性,以及如何结合用户行为计算推荐结果。通过具体示例展示了如何计算用户之间的相似度和推荐物品的权重。
摘要由CSDN通过智能技术生成

基于用户的协同过滤算法

基于用户的相关性计算就是计算不同用户对多个物品发生行为的相似程度,类似于把用户进行分组,认为相似的用户,感兴趣的物品相似,得到推荐结果,推荐结果群体化。

1. 将用户向量化表示

将用户以往的行为量化如下表:

用户 面包 牛奶 啤酒
小明 1 0 1
小红 1 1 0

小明对面包和啤酒发生了行为,小红对面包和牛奶发生了行为,比如说购买行为

向量化表示为:

U 小明 = [ 1 , 0 , 1 ] U_{小明} = [1,0,1] U小明=[1,0,1]
U 小红 = [ 1 , 1 , 0 ] U_{小红} = [1,1,0] U小红=[1,1,0]

2.使用向量空间模型(vsm)计算基础相关性

想要做到根据用户兴趣推荐,根据用户以往行为对用户感兴趣的物品进行预测就很好理解,利用余弦相似度进行计算

2.1直接用向量进行计算

s i m ( U i , U J ) = c o s ( θ ( U i , U j ) ) = U i ⋅ U j ∣ U i ∣ ∣ U J ∣ sim(U_i,U_J)=cos(θ _{({U_i,U_j})})=\frac{U_i·U_j}{|U_i||U_J|} sim(Ui,UJ)=cos(θ(Ui,Uj))=Ui∣∣UJUiUj
U i U_i Ui U j U_j Uj进行向量点乘(内积)
以小红和小明为例:
U 小明 = [ 1 , 0 , 1 ] U_{小明} = [1,0,1] U小明=[1,0,1]
U 小红 = [ 1 , 1 , 0 ] U_{小红} = [1,1,0]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值