推荐系统算法(1)

1 Model-Based 协同过滤算法

随着机器学习技术的逐渐发展与完善,推荐系统也主键运用机器学习的思想来进行推荐。将机器学习应用到推荐系统中的方案非常多。一下对Modek-Based CF算法做一个大致的分类:

  • 基于分类算法、回归算法、聚类算法
  • 基于矩阵分解的推荐
  • 基于神经网络算法
  • 基于图模型算法
    接下来我们重点学习一下集中应用较多的方案:
  • 基于回归的协同过滤推荐
  • 基于矩阵分解的协同过滤推荐

2 基于回归的协同过滤推荐

将评分看成连续的值,借助线性回归思想来预测目标用户对某物品的评分。其中一种实现策略是Baseline(基准预测)。

Baseline:基准预测

偏置(bias):某个用户普遍偏离平均值的差值
Baseline 目标:

  • 找出每个用户普遍偏离平均值的偏置值 bu
  • 找出每个物品普遍偏离平均值的偏置值 bi
    使用Baseline的算法思想预测评分的步骤如下:
  • 计算所有电影的平均评分μ(即全局平均评分)
  • 计算每个用户评分与平均评分μ的偏置值bu
  • 计算每部电影接受的评分与平均评分μ的偏置值bi
  • 预测用户对电影的评分:r(预测)=bui = μ + bu +bi

举例:通过Baseline来预测用户A对电影“阿甘正传”的评分
对于所有电影评分平均分能够直接计算,因此问题在于要测出每个用户和每部电影的得分偏置置。对于线性回归问题,我们可以利用平方差构建损失函数。


损失函数.png

加入L2正则化:


加入L2正则化.PNG
  • 公式第一部分:是用来寻找与已知数据你和最好的bu和bi
  • 攻势第二部分:正则化项,用于避免过拟合现象。
    对于求解最小损失函数的过程,我们一般采用随机梯度下降法交替最小二乘法来优化实现。
    方法一:随机梯度下降法优化
    使用随机梯度下降优化算法预测Baseline偏置值
    step 1:梯度下降法推导
    step 2:随机梯度下降
    step 3:算法实现
    pandasAPI
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 推荐算法&评分预测问题 参考书本: 项亮, 推荐系统实践. 2012本文系阅读笔记 实际系统-topN问题 推荐系...
    锦绣拾年阅读 4,141评论 0 3
  • 作者 | HCY崇远 01 前言 本文源自于前阵子连续更新的推荐系统系列,前段时间给朋友整理一个关于推荐系统相关的...
    daos阅读 5,780评论 0 77
  • 本文编译自谷歌开发者机器学习术语表项目,介绍了该项目所有的术语与基本解释。 A 准确率(accuracy) 分类模...
    630d0109dd74阅读 2,150评论 0 1
  • A 准确率(accuracy) 分类模型预测准确的比例。在多类别分类中,准确率定义如下: 在二分类中,准确率定义为...
    630d0109dd74阅读 1,591评论 0 3
  • 作者/宋尚锋 逢 月圆 思团圆 游子盼归 洒泪眼朦胧 心澎湃紧相拥 一句淌洋的诗句 属每逢佳节倍思亲 两鬓斑白灶前...
    宋尚锋阅读 1,432评论 0 5

友情链接更多精彩内容