推荐系统的常见指标
推荐系统的评价指标,要从解决实际问题的角度来思考。
好的推荐系统,不仅要保证自身系统的健壮度,好要满足服务平台、用户等多方面的需求。
用户角度
更方便更快速的发现自己喜欢的产品
精准度
更多的为用户主观感受,评估的是推荐的物品是不是用户喜欢的
惊喜度
推荐的物品让用户有心情跳动的惊喜感觉,比如发现多年前的记忆、耳目一新的内容、用户听过的但是不知名字的音乐,看过片段却不知道名字的电影、知道功能却不知道名字的商品
此类推荐和用户兴趣不一定相似,但是却给用户带来意外之喜,超出用户的预期
新颖性
推荐用户没有接触过的东西,不一定是用户最喜欢的,但可以提升用户的探索欲望,从而获得更完整的用户兴趣
多样性
推荐的更多的品类,可以挖掘用户潜在的兴趣点,拓展用户的兴趣范围来提升用户的推荐体验
平台角度
平台方为用户提供物品或信息。
不同平台的获利方式不同,比如有的靠会员模式、有的通过商品、大部分则通过广告
对多数平台来说商业目标是最重要的目标之一
内容满意度
由于业务场景不同,内容满意的指标也会随之变化,主要是通过用户对产品的不同行为来衡量
- 资讯
- 阅读-----阅读时长----分享评论
- 电商
- 点击----浏览-----收藏购物车----购买-----好评----复购
- 短视频
- 播放----播放时长-----分享、点赞、评论-----关注 ------跟拍
- 音乐
- 播放-----播放时长-----分享、收藏、评论
场景转化率
转化率指标更为直观,给用推荐内容,是希望用户对推荐的内容有所行动,比如点击行为、点赞行为
pv点击率(点击量/pv)
粗略的衡量转化效果,但如果少数用户贡献大量点击时,容易覆盖该指标的真实性
uv点击率(点击量/uv)
可记录用户在一个完整周期内的点击效果,不会因用户重复浏览某个内容而受影响
曝光点击率(点击量/曝光次数)
更适合长页面、信息流等需要上拉、下拉翻页的产品,曝光次数随用户刷屏次数增加而变大,真实记录每一屏的转化效果
uv转化率(转化次数/点击量)
衡量用户转化情况,用户从一个场景转化到另一个场景去,用来评估用户的宽度
人均点击次数(点击量/点击uv数)
每个用户的点击次数,可用来评价用户的深度
推荐系统的离线评估
推荐系统自身的评估,推荐系统从接受数据到产生推荐结果,再根据推荐结果的影响重新修正自身。
推荐算法训练–(离线评价)----模型上线----(在线评价)—推荐内容—(在线评价)------行为日志收集分析—>>迭代优化推荐算法
准确度
准确度评估主要是评估推荐算法模型的好坏,为选择合适的模型提供决策支持。
数据划分为训练集、测试集;
使用训练集学习训练模型;
使用测试集来衡量误差以及评估准确度;
根据推荐系统目的不同,准确度的衡量也不同:
分类问题
比如点击、不点击; 喜欢、不喜欢;
-
精确度precision:推荐结果有多少是用户喜欢的
-
召回率recall:用户喜欢的产品,有多少个是推荐系统推荐的
通常希望两个指标都越大越好,但实际需平衡两个指标都关系,所以长远F-指标来作为平衡二者关系的计算方式
评分预测
对产品惊醒评分,电影评分
- 均方根差RMSE
- MAE 平均绝对误差
用于描述与测评分与产品真实评分的差距
排序问题
分类、评分只是把推荐产品晒出来,不包含展示顺序,而如果要把用户最可能消费的产品放在前面,则需要排序指标。
-
AUC,随机挑选一个正样本,一个负样本,正样本排在负样本前的概率
当算法能更好的把证样本排在前边的时候,就是一个好的算法模型
-
MAP,推荐列表中和用户相关的产品在推荐列表中的位置得分,越靠前分越大
-
MRR,按照跟用户相关的产品的排名的倒数作为精确度
-
NDGC,推荐列表中每一个产品评分值的累加;同时考虑每个产品位置,最后进行归一化,在同一标准上评价不同的推荐列表
覆盖率
推荐出的产品占总产品的比例
多样性
用户兴趣不是一成不变的,统一用户的兴趣会受到时间段、心情、节日等多种因素影响。推荐时要尽量推荐更多的品类。
可通过对产品聚类,在推荐列表中插入不同类别产品类提高多样性
时效性
不同产品的时效性不同,比如电商产品时效性不是很高,但新闻、资讯、短视频之类的产品,就需要很高的时效性。
针对不同的产品,甚至产品下不同的类目,设置不同的时效性,也是提高推荐质量的途径之一。
推荐系统的在线评估
在线评估分为两个阶段:用户触发推荐服务、用户产生行为
触发推荐服务
稳定性
系统稳定性对于用户体验至关重要,怎样针对不同场景持续稳定的提供推荐服务,是推荐系统的最重要的指标之一,提升推荐效果也要在保证系统稳定的前提下去进行优化
高并发
当某个时间节点大量用户访问,或用户规模急速扩大时,系统能否扛住高并发的压力,也是个很大的挑战。
了解接口的高并发能力,做好充分的压力测试
响应时间
衡量用户能否及时得到推荐反馈,response time 受多种因素影响,比如网络情况、服务器、数据库等,可通过监控请求的时长,接口监控,数据监控,做好报警措施
产生行为
用户产生行为,通过收集分析用户的行为日志进行相关指标的评价
示例:
1、推荐的曝光点击转化率
2、推荐的点击访问转化率
3、推荐的访问购买转化率
示例:
1、推荐曝光
2、点击 (曝光点击转化率)
3、阅读(点击阅读转化率)
4、分享(阅读分享转化率)
AB测试
在线评估通常会结合AB测试
什么是AB测试
AB测试本质为对照实验,来源于医学的双盲测试,通过给两组病人不同的药物,来确定药物是否有效。
AB测试:将不同的算法/策略,在同一时间维度,分别在两组或者多组 组成成分相同的用户群体内容进行线上测试,分析各组用户的行为指标,得到可以真正全流量上线的算法和策略
AB测试常见做法
核心:控制变量、分流测试、规则统一
控制变量
AB测试必须是单变量的,变量太多会产生干扰,很难找到各个变量对结果的影响程度。
分流测试
AB测试作为对照试验,自然要有 试验组和对照组。通常会对用户进行分流
- 用户ID
- 设备号
- 浏览器cookie
- 约定生成的伪随机数,0,1大数定律
规则统一
在控制变量和分流测试的前提下,针对不同的流量,应制定相同的评价指标,才能得到准确的对比效果。