一步一步学推荐系统(三)——推荐系统通用架构及通用算法

作者: wencst 分类: 架构设计 发布时间: 2019-01-04 14:34 阅读: 1,535 次

推荐架构

 

  • Offline Recommend(离线层)
    • 作用:对海量数据进行离线加工
    • 工具:Hadoop/Spark
  • Nearline Recommend(近线层)
    • 作用:利用流式处理技术对实时产生的数据进行加工
    • 工具:Storm/Spark
  • Online Recommend(在线层)
    • 作用:负责在线运算,处理简单的运算逻辑
    • 工具:Webpy/Java
  • 基础数据采集
    • 工具:MongoDB/HDFS
  • 基础数据处理
    • MapReduce/Spark
  • 数据持久化
    • Redis/MongoDB/Memcache

推荐算法

算法一:CB算法

CB算法(Content Base):基于内容的推荐算法

算法二:User Based CB算法

CB算法(Content Base):入User属性的基于内容推荐算法

 

算法三:User Based CF算法

CF算法(Collaboration Filtering)基于协同的推荐算法

  • User Based CF
  • Item Based CF

通过User-Item矩阵计算两个用户之间的相似度

假设:

  • 用户喜欢那些跟他有相似爱好的用户喜欢的东西
  • 具有相似爱好的用户在未来也具有相似爱好

方法:

  • 给定用户-商品集合N(u),他们和u具有相似爱好
  • 将N(u)喜欢的物品推荐给u

算法四:Item Based CF算法

通过User-Item矩阵计算两个产品之间的相似度

假设:

  • 用户喜欢跟他过去喜欢的物品相似的物品
  • 历史上相似的物品在未来也相似

方法:

  • 给定用户u,找到他过去喜欢的物品的集合R(u)
  • 将R(u)相似的物品推荐给u

User Based CF 和 Item Based CF 区别

CF算法的优缺点

 

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

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



Leave a Reply