推荐系统实战

简介

推荐系统学习笔记

推荐系统主要分类

基于人口统计学的推荐

 基于统计学的统计是相对于一种比较简单的推荐算法,比如给用户打一个程序员的标签,然后把电脑相关的数据进行推荐。但是有一个缺点就是用户的信息不是很好的收集。上图的意思就是,如果大部分25-30岁的女都喜欢A物品,那么当有用户c过来的时候,那么根据统计就会把A物品推荐给c用户。简单的理解就是物以类聚,人以群分

基于内容的推荐算法

根据物品的内容,算出他们的相识度,然后进行相关物品的推荐。首先要对物品进行向量化,然后求物品的欧式距离。

 

基于协同过滤算法

基于用户行为推荐,这个是基于热推荐,要结合用户画像冷推荐效果更加的好,因为新用户,没有任何标签就不太好推荐物品。

 

 可以更具用户近邻推荐,比如上面Alice和Cary的喜欢程度一样,那么就可以推测Cary对泰坦尼克号的评价可能是4或者是5。这就是User-CF,还有就是泰坦尼克号和阿甘正传很相近,也能推出Cary对电影的评分,那么这个就是Item-CF。物品多的时候用Item-CF,用户多的时候用User-CF。

在模型训练的时候,可以假设他们有一定的矩阵关系,入下图。

 上面差分的矩阵,然后重新计算,看是否和之前的数据一样,得到最后的数据进行模型的打分。分解以后在相乘就是预测数据。

 

 

 

 

 上面是协同过滤算法的损失函数,也就是特征越多,惩罚越大,那么我们就要想办法得到损失函数的最小值,从而得到最好的模型。

 

 

上面不管是ASL还是梯度下降算法,最后的结果都是想得到,损失函数的最小值,得到最小值的损失函数得到的模型就相对较好。 

特征工程

特征选择就是对于一些可以区分的关键信息进行提取出来,就想相亲一样,高,矮,胖瘦对于相亲的影响就很大,那么这些就是有用的特征。

数值型特征处理

归一化

算法,这里的作用就是尽量的减少数据的差异化,对结果产生影响。

 

离散化

就是对于连续的数据,分段处理的情况,比如像公交车按年龄让座的分类问题,1表示会让座,0表示不让座。

比如学区,房间类型,都可以用1或者0来表示,如下图提取的特征就能够放在机器学习里面进行训练。

反馈数据

 

项目实战

架构图

 

思路

离线推荐

 上图是能够得到模型。下图是推荐信息生成的流程图,在模型训练出来着以后,开始预测,然后把预测的结果写到数据库中。

 下面根据训练出来的模型,求电影的相关度

上面用余弦相识度的原因是如果一个用户分别给两个电影打1,3分,另一个用户给3,5分,如果按距离计算的话,那么不太合适,如果用余弦相识度的话,他们就会在类似的角度,那么角度距离就不会太大。 

实时推荐 

实时推荐的思路就是,在理想求出相关性的电影以后,然后根据电影的相关性进行实时推荐,实时推荐的时候要考虑到用户对电影的评分的问题。 

 

基于内容推荐 

综合使用 

 

实现 

项目依赖

尚硅谷机器学习和推荐系统教程

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

工作变成艺术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值