推荐系统(二)

协同过滤(Collaborative Filtering)

Problem Motivation


在之前的基于内容的推荐系统中,对于每一部电影,我们都掌握了可用的特征,通过使用这些特征,并运用线性回归模型,可训练得每一个用户对某一电影的评分。 相反地,如果我们拥有用户对每一部电影的评分,我们就可以学习得电影得特征。


但如果我们既无法得到电影的特征,也没有用户对每一部电影得的评分,之前我们所介绍的方法就无法适用了。因此,我们引入协同过滤。

Collaborative Filtering

在协同过滤中,我们需要对x和θ同时优化,其基本算法为:

  • 随机给定θ^(1), ···, θ^(nu),计算x^1, ···, x^nm
  • 随机给定x^1, ···, x^nm,计算θ^(1), ···, θ^(nu)

其中,这两步骤交替进行,直至得到合理的θ和x的值。

注:在协同过滤中,我们通常不使用偏置项,如若需要,算法会自动学得。


协同过滤算法优化目标

协同过滤算法

  1. 对x(1), ···, x^(nm), θ(1), ···, θ^(nu)随机赋值小值
  2. 使用梯度下降算法(或者其他高级算法)最小化代价函数,例如:梯度下降算法最小化代价函数,其数学表达式为:

  1. 在得到合理的参数θ和电影特征x后,利用θTx预测电影评分

上述算法除了能预测某一用户对某一电影评分,其还能根据用户的喜好来推荐相关电影。例如,某一用户爱好观看动作类电影x(i),推荐系统会根据这一特征推荐相关的电影x(j),这两部电影的特征向量之间的距离为||x(i) - x(j)||。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值