推荐系统(3)-测评
从目标去衡量-定义理想态
对于任何需求来讲,我们都会有一个需求目标,解决什么问题;对于功能性场景来说,我们的目标就是用户使用流程/感知没有就是完成基本任务;但是对于推荐这种策略性的场景来说,定义需求目标就比较难以描述;我们能做到的就是为用户提供系统最佳的解决方案,而且这个理想的状态会随着业务发展一步步完善。
可能最开始只是让用户有的看,接下来就是给用户提供个性化服务,后面也许又变成内容呈现多样性、要求实时性或者平台需要将一些内容主动呈现推广;
在策略不像GUI界面那样可感知时,我们就需要大量的行为实例在统计上做一种目标衡量
而对于推荐场景的界面设计,我们完全可以按照产品设计的方法论去衡量合理性;想要推荐策略有效,首先要保证交互界面最优;
发现问题
用户反馈
1、通过用户访谈/线上问卷获取用户意见;可以设定一些 准确度、丰富度等标准问题
2、通过开放渠道获取用户看法,比如APP反馈功能,评论等
3、通过提供负反馈功能,并提供用户对内容反感的理由
系统监控
一般来讲,提需求时我们都需要进行埋点来监测从而主动发现问题。在推荐系统场景中,我们既需要知道前端用户的行为统计,又需要知道后台系统的模块数据;以便在宏观上进行监测潜在问题或者需求
比如该推荐模块的调用比例;或者访问该策略的用户类型等等;与实际预算有偏差时,就可能是存在问题或者是一种潜在的需求。就可以基于观察进行迭代
效果回归
离线测试
在上线前进行离线实验检验是否达成迭代指标(常见指标说明见下方)
通过搜寻日志系统拿到用户数据
将数据集划分为训练集与测试集
在训练集上进行调整,最终通过测试集验证指标
线上测试-ABtest
1、随机将在线用户分为几组,并通过空跑数据保证分组合理性
2、在不同组上验证不同算法实验,验证新算法是否优于旧算法
3、检查新算法是否会带来其他问题
4、评估新算法是否全量发布
抽样调研
在一段时间间隔后,我们可以对某个策略点做一次抽样调查,通过统计的方式发现问题
1、通过目标策略点定义所需要的数据范围、对象
2、通过随机的方式进行抽样
3、抽样数量需要具有统计意义,如果出现问题需要在5个以上或者占比3%
4、最终对问题进行分类,确定问题程度与解决方案
常见系统指标
准确率与召回率
准确率用来描述推荐系统预测精准程度的指标;即你认为的正样本,有多少猜对了(找的对)
召回率用于描述推荐系统对目标内容的普适程度的指标;正样本有多少被找出来了(找的全)。
以信息流场景为例子
准确率=用户点击的推荐内容数/系统推荐给用户的内容数
召回率=用户点击的推荐内容数/用户实际点击的内容数
覆盖率与基尼系数
覆盖率用于描述系统对平台内容的涉及程度,覆盖率越大,系统对长尾内容的挖掘能力越强
可以通过统计物品在推荐列表中出现的次数分布来衡量
基尼系数将物品按照热门程度进行排序,形成B区域;而剩下的A区域就表征了系统热门物品的差距程度;这在经济学上叫做基尼系数。A越大,平台内容越趋近于头部热门内容,出现这种现象的过程也叫马太效应;推荐系统本身就是通过挖掘长尾内容减缓马太效应。
其实马太效应蕴涵竞争的规律,社会、大自然中到处都是马太效应:有钱人越来越有钱;顶层食物链者难以动摇;强者恒强等等,这就是优胜劣汰的表现,只有好的东西才会存留下来呈现给世人;马太效应本身是没有问题的,但是问题在于头部部分获取最大利益后切断了后续的上升通道是大问题,无法让系统有效运行下去,引起大部分人的不满;这个现象在推荐系统领域可以理解为头部的热门内容吸引了用户大部分注意力,系统也以为这是用户喜欢的从而加强了效应,好的东西无法让用户发现,导致内容千篇一律,平台越大,就越明显越难以处理。所以当前头部平台都会探索解决长尾问题。个人感觉主要在两方面:1、内容首先要各个领域都优质,否则就不能说长尾没人看;2、通过产品设计、算法等解决系统上升通道问题
多样性
在进行推荐排序的过程中,假设用户历史行为中80%是动画片,20%是动作片;那么动画片在它的推荐排序列表中会比较靠前,因为定量得衡量来说,系统角度动画片确实比动作片更令该用户喜欢;这样会导致推荐结果都是动画片,这就是上述马太效应的一个缩影;所以我们需要在系统推荐排序规则中加上”多样性“的先验规则,假设5个推荐位,就应该至少4:1分配,以保证用户推荐列表的多样性
新颖性与惊喜度
顾名思义,让用户感受到出乎意料且还不错的体验~这方面具有代表的是前几年网易云音乐的推荐,有时候让用户充满惊奇,一首完全不搭噶的歌推过来发现哎呦还可以;
信任度
当推荐系统给予用户清晰的解释时,会增加用户点击的概率;
类似”喜欢xx的用户也喜欢xx“;”这些用户跟你有同样的兴趣“等等都给用户决策点去尝试。所以很多时候算法的可解释性也很重要,否则用户容易觉着不明所以。
实时性
实时性主要体现在两个方面
1、新闻等信息流中新内容的即时性,需要将最新的内容及时推荐给对应的用户
2、用户行为过后及时反馈;比如:电商场景中,用户购买了一次手机后,后续推荐不应该给用户推荐之前大量浏览的手机,而是手机配套等
商业目标
在做内容排序的阶段,还需要考虑平台的商业目标;比如最近平台主推的商品或者内容等;