推荐算法初探
商品推荐算法初探
分析
项目情况
蓝鲸网购商城,这个问题域下涉及的对象只有商品和用户。这两个对象和推荐算法相关的属性有如下:
- 商品
- 名称
- 分类
- 价格
- 图片等复杂信息
- 用户
- 商品访问记录
- 访问次数
- 商品购买记录(订单)
- 订单价格
- 商品评分记录
- 评分
- 商品访问记录
需求
- 能应对相对大量用户和商品的系统
- 算法必须能在2核2g的服务器上正常运行
- 使用在线算法
约束
- 开发时间紧张
- 用户量和商品量十分小
- 可能有方法会改善这个情况,比如自动化生成工具
- 用户行为数据有限
- 因为要人工操作。但是同上。
算法的选择
基于用户的协同过滤-User CF
核心思想:人以群分,推荐和你最相似的用户喜欢的商品
优点
- 在线算法
- 实现简单
- 效率高
缺点
- 十分依赖于其他用户和商品的交互数据。交互越多推荐效果越好。
- 基于交互,会同时涉及用户和商品两个模块
基于商品的协同过滤-Item CF
核心思想:物以类聚,推荐和你喜欢的商品最相似的商品,相似度基于交互
优点
没怎么细看,我姑且认为这个更加准确吧
缺点
- 算法要求先离线处理所有商品的相似度
- 效率较慢
- 基于交互,会同时涉及用户和商品两个模块
基于内容的推荐算法
核心思想:物以类聚,推荐和你喜欢的商品最相似的商品,相似度基于商品属性
优点
自然。推荐商品最直接、朴素的想法就是推荐内容相似的物品啦。
静态。基于商品稳定的属性。不用依赖于不稳定的用户与商品的交互。
缺点
- 实现上不如前两种算法那么规范,主观性比较大。