美文网首页
推荐系统算法(1)

推荐系统算法(1)

作者: 小猪Piglet | 来源:发表于2019-06-14 23:35 被阅读0次

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

相关文章

网友评论

      本文标题:推荐系统算法(1)

      本文链接:https://www.haomeiwen.com/subject/ayrjfctx.html