第十七章 推荐系统recommender systems

课时133 问题规划
在这里插入图片描述
我们希望构建一个算法来预测每个人可能会给他们没看过的电影打多少分,并以此作为推荐的依据。

课时134 基于内容的推荐算法
每个用户都有自己的θ。
在这里插入图片描述
在这里插入图片描述
r(i, j)表示用户j是否喜欢电影i,
y(i, j)表示用户j给电影i的评分,
θ(j)表示用户j的“喜好”参数,
x(i)表示电影i的特征参数,
对于用户j,电影i,预测评分为(θ(j))T(x(i))
m表示用户j评价的电影总数,
要训练θ(j).
在这里插入图片描述
第一个式子是训练一个theta(j)的代价函数,训练所有用户的参数θ的代价函数要加一个相加符号。
梯度下降最小化代价函数:
在这里插入图片描述
课时135 协同过滤collaborative filtering
这种算法能够自行学习要使用的特征。让人看电影然后判断x1和x2的值太耗费人力物力。如果能从用户那里得到θ表示他们对不同类型的喜欢程度,我们就可以用下图的式子推测出每部电影的x1和x2的值。
在这里插入图片描述
在这里插入图片描述
给定x可以求θ,给定θ也可以求x,似乎是一个先有鸡还是先有蛋的问题,我们可以随机地猜一些θ值,来学习出不同电影的特征,再得到一个更好的对参数θ的估计,再得到更好的特征,以此类推,最终算法将会收敛到一组合理的电影特征以及一组合理的对不同用户的参数的估计。
在这里插入图片描述
协同过滤指每个用户都在帮助算法学习出更合适的特征,也就是通过自己对几部电影进行评分来帮助系统更好地学习特征,这些特征又可以被用来更好地预测其他用户的评分。

课时136 协同过滤算法
协同过滤算法可以让我们不需要不停地计算x和θ,而是将x和θ同时计算出来。前两个紫色框里的两个式子其实是一样的,可以写成最下面的紫色框里的形式。这个算法将x和θ都作为参数一起最小化,不再需要反复计算。还有一个细节是不使用方差项θ0=1,x0=1,如果需要的话,系统会自动学得。
在这里插入图片描述
在这里插入图片描述

课时137 矢量化:低秩矩阵分解
写出Y矩阵:
在这里插入图片描述
协同过滤算法/低秩矩阵分解算法low rank matrix factorization向量化:
在这里插入图片描述
利用以及学习到的特征,来找到相关的电影:(衡量电影的相似度)
在这里插入图片描述

课时138 实施细节:均值归一化
对一个没有评价过任何电影的用户,代价函数的第一项为0,只有正则项,这样得到的参数为0,再算预测评分也就都为0,均值归一化可以解决这个问题
在这里插入图片描述
计算所有电影的平均评分放在μ向量中,Y矩阵中让每个评分都减去平均分,使得每部电影评分的均分为0,用Y训练θ(i)和x(i),预测评分时加上均值μi:
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值