前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >吴恩达机器学习笔记 —— 17 推荐系统

吴恩达机器学习笔记 —— 17 推荐系统

作者头像
用户1154259
发布2018-08-09 16:20:30
5840
发布2018-08-09 16:20:30
举报

本章讲述了推荐系统相关的知识,比如基于内容的推荐算法、基于协同过滤的推荐算法以及实践中遇到的问题。

更多内容参考 机器学习&深度学习

推荐系统是机器学习在工业界应用最广泛的方向,很多电子商务类、咨询类的平台都在做个性化推荐的工作,通过机器学习的算法让自己的平台个性定制,千人千面。

比如我们拥有这样的数据集,其中nu代表用户的个数,nm代表物品的个数,r(i,j)为1代表用户j对物品i有评分,y(i,j)代表用户j对物品的分值。

基于内容的推荐

现在我们有了上面的数据集,即用户对电影的评分。还有电影的两个特征,浪漫指数和动作指数,假设我们针对每个用户都有一个θ,使得θTx能预测到一个分值——可以看做每个用户拥有一个线性回归的公式,通过这个公式,可以跟电影的两个特征(还有一个偏置项,固定为1)计算出分值。

其中r(i,j)是用户J对电影i是否有评分,y(i,j)是对应的分值,θ(j)代表用户j的参数向量,x(i)代表电影i的特征向量,因此对于用户j对电影i的评分就是(θ(j))T(x(i)),m(j)是用户j评分的电影数量。因此就有下面的公式:

协同过滤

前面的算法有一个特点就是需要有每个电影的特征向量,这个需要人为的来标注,如果你的数据没有这种现成的向量,而是有用户的偏好特征。比如知道一个用户对两个特征的喜好程度x,又知道他对这个电影的评分,那么就可以猜测出来这个电影对应的特征指数了。

比如上面的例子中如果用户的洗好向量是[0,5,0],对于第一个电影它的评分又是5,第五个电影评分时0,我们就可以猜到第一个电影的特征是[1,1,0],第五个电影是[1,0,1],这样就可以猜测出来每个电影的特征指数了。

总结来说,如果有电影的特征向量,就可以猜测出来用户对电影的评分;如果有用户的特征偏好,也可以猜测出来电影的特征指数。还有一种简单的方式就是随机给定θ,然后训练得出x,再通过x训练得出θ——这就是矩阵分解的意思啊!

这里讲到了通过评分矩阵可以计算相似物品,其实这也是物品协同过滤的核心:

有一个实践的小技巧,如果用户对任何的物品都没有评分,那么可以先给他初始化成均值(我们在做推荐系统的时候,这种用户一般都不会用协同过滤来做推荐)

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-08-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基于内容的推荐
  • 协同过滤
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档