推荐算法初探

商品推荐算法初探

分析

项目情况

蓝鲸网购商城,这个问题域下涉及的对象只有商品用户。这两个对象和推荐算法相关的属性有如下:

  • 商品
    • 名称
    • 分类
    • 价格
    • 图片等复杂信息
  • 用户
    • 商品访问记录
      • 访问次数
    • 商品购买记录(订单)
      • 订单价格
    • 商品评分记录
      • 评分

需求

  • 能应对相对大量用户和商品的系统
  • 算法必须能在2核2g的服务器上正常运行
  • 使用在线算法

约束

  • 开发时间紧张
  • 用户量和商品量十分小
    • 可能有方法会改善这个情况,比如自动化生成工具
  • 用户行为数据有限
    • 因为要人工操作。但是同上。

算法的选择

基于用户的协同过滤-User CF

核心思想:人以群分,推荐和你最相似用户喜欢的商品

优点

  • 在线算法
  • 实现简单
  • 效率高

缺点

  • 十分依赖于其他用户和商品的交互数据。交互越多推荐效果越好。
  • 基于交互,会同时涉及用户和商品两个模块

基于商品的协同过滤-Item CF

核心思想:物以类聚,推荐和你喜欢的商品相似的商品,相似度基于交互

优点

没怎么细看,我姑且认为这个更加准确吧

缺点

  • 算法要求先离线处理所有商品的相似度
  • 效率较慢
  • 基于交互,会同时涉及用户和商品两个模块

基于内容的推荐算法

核心思想:物以类聚,推荐和你喜欢的商品相似的商品,相似度基于商品属性

优点

  • 自然。推荐商品最直接、朴素的想法就是推荐内容相似的物品啦。

  • 静态。基于商品稳定的属性。不用依赖于不稳定的用户与商品的交互。

缺点

  • 实现上不如前两种算法那么规范,主观性比较大。