推荐系统评估
1 推荐系统的评估指标
- 好的推荐系统可以实现用户, 服务提供方, 内容提供方的共赢
- 评估数据来源显示反馈和隐式反馈
| 显式反馈 | 隐式反馈 |
例子 | 电影/书籍评分 是否喜欢这个推荐 | 播放/点击 评论 下载 购买 |
准确性 | 高 | 低 |
数量 | 少 | 多 |
获取成本 | 高 | 低 |
- 常用评估指标
- 准确性 (理论角度) Netflix 美国录像带租赁
- 评分预测:RMSE MAE
- topN推荐:召回率(真正率pp/pp+pn) 精准率(pp/pp+np)
- 准确性 (业务角度)
- 覆盖度
- 信息熵 对于推荐越大越好
- 覆盖率
- 多样性&新颖性&惊喜性
- 多样性:推荐列表中两两物品的不相似性。(相似性如何度量?)
- 新颖性:未曾关注的类别、作者;推荐结果的平均流⾏度
- 惊喜性:历史不相似(惊)但很满意(喜)
- 往往需要牺牲准确性
- 使⽤历史⾏为预测⽤户对某个物品的喜爱程度
- 系统过度强调实时性
- Exploitation & Exploration 探索与利用问题
- Exploitation(开发 利用):选择现在可能最佳的⽅案
- Exploration(探测 搜索):选择现在不确定的⼀些⽅案,但未来可能会有⾼收益的⽅案
- 在做两类决策的过程中,不断更新对所有决策的不确定性的认知,优化 长期的⽬标
- EE问题实践
- 兴趣扩展: 相似话题, 搭配推荐
- 人群算法: userCF 用户聚类
- 平衡个性化推荐和热门推荐比例
- 随机丢弃用户行为历史
- 随机扰动模型参数
- EE可能带来的问题
- 探索伤害用户体验, 可能导致用户流失
- 探索带来的长期收益(留存率)评估周期长, KPI压力大
- 如何平衡实时兴趣和长期兴趣
- 如何平衡短期产品体验和长期系统生态
- 如何平衡大众口味和小众需求
2 推荐系统评估方法
- 评估方法
- 问卷调查: 成本高
- 离线评估:
- 只能在用户看到过的候选集上做评估, 且跟线上真实效果存在偏差
- 只能评估少数指标
- 速度快, 不损害用户体验
- 在线评估: 灰度发布 & A/B测试 50% 全量上线
- 实践: 离线评估和在线评估结合, 定期做问卷调查
推荐系统的冷启动问题
1 推荐系统冷启动概念
- ⽤户冷启动:如何为新用户做个性化推荐
- 物品冷启动:如何将新物品推荐给⽤户(协同过滤)
- 系统冷启动:⽤户冷启动+物品冷启动
- 本质是推荐系统依赖历史数据,没有历史数据⽆法预测⽤户偏好
2 处理推荐系统冷启动问题的常用方法
- 用户冷启动
- 1 收集⽤户特征
- ⽤户注册信息:性别、年龄、地域
- 设备信息:定位、⼿机型号、app列表
- 社交信息、推⼴素材、安装来源
- 2 引导用户填写兴趣
- 3 使用其它站点的行为数据, 例如腾讯视频&QQ音乐 今日头条&抖音
- 4 新老用户推荐策略的差异
- 新⽤户在冷启动阶段更倾向于热门排⾏榜,⽼⽤户会更加需要长尾推荐
- Explore Exploit⼒度
- 使⽤单独的特征和模型预估
- 举例 性别与电视剧的关系
物品冷启动
- 给物品打标签
- 利用物品的内容信息,将新物品先投放给曾经喜欢过和它内容相似的其他物品的用户。
系统冷启动
- 基于内容的推荐 系统早期
- 基于内容的推荐逐渐过渡到协同过滤
- 基于内容的推荐和协同过滤的推荐结果都计算出来 加权求和得到最终推荐结果