一步一步学推荐系统(四)——CB和CF推荐算法详解

作者: wencst 分类: 架构设计 发布时间: 2019-01-06 20:04 阅读: 7,252 次

通用CB算法

制定分词

比如:

1.产品分类:5

2.产品名称:3

3.产品描述:1

正排表

倒排表

执行推荐

当用户查看产品:JXW12N通用四辊卷板机

  1. 对产品分词
  2. 基于分词查看倒排表
  3. 从倒排表中取出所有的相关产品集合N(i)
  4. 对产品集合N(i)中每个产品进行计算分数N(i,c)
  5. 排序
  6. top-N

User Based CB算法

与通用CB算法的区别,在最后一步,执行推荐时

  • 对产品分词:
    1. 通用CB算法:只是基于用户当前正在查看的产品来计算
    2. User Based CB:基于当前用户查看的所有产品进行分词来计算
  • 后续的步骤是一样的

通用CF算法

首先需要有这样一个矩阵,其中斜杠标识该用户没有看过这个电影。矩阵转置。

后面我是用excel的计算公式来做的。

User Based CF算法

每一个单元格计算公式:

矩阵归一化

同样的矩阵归一化方法还有:

  • 线性函数的转换:y=(x-MinValue)/(MaxValue-MinValue)
  • 对数函数转换:y=log10(x)
  • 反余切函数转换:y=atan(x)*2/PI

执行推荐

我们预测,C用户给Titanic电影的评分会是3.18677分,整体上所有电影排序,拿出预测他评分最高的N个电影发给C。

 

Item Based CF算法

同样的基础内容,转换为Item-Item矩阵,然后计算方法类似。

两次计算结果并不相同,但并不影响推荐结果。

 

如果文章对您有用,扫一下支付宝的红包,不胜感激!

欢迎加入QQ群进行技术交流:656897351(各种技术、招聘、兼职、培训欢迎加入)



Leave a Reply