序言

对于当下的互联网产品,无论是主流或非主流,处处都能看到推荐系统的应用场景。比如,当你在淘宝下单购买了一台iPhone 11,购买完成页下方立刻就会给你推荐诸如「全新AirPods Pro」、「Apple Watch 5」等相关商品;再比如,当你在豆瓣上标记了想看热门悬疑网剧《隐秘的角落》,在厕所刷抖音的时候,可能就会看到《无证之罪》、《轮到你了》、《白夜追凶》等等相似剧集的精彩片段。推荐系统这只无形的「大手」已经把我们安排的明明白白了。

想给用户做推荐?先收下这份「推荐系统」评估指南

△ @alienking2000 from unsplash.com

推荐系统的强大毋庸置疑,而且我们经常会把它看作是一个神秘的黑箱子,会将其与多种复杂的技术术语相关联,比如「大数据」、「人工智能」、「机器学习」等等,进而认为推荐系统的好坏,就是对用户偏好预测的精准与否。然而,不久前完成的一个研究课题,打破了这个认知误区。

推荐系统的本质

面对这个课题,首先需要回答的就是:如何定义推荐系统的好坏?其实,这个问题有一种最符合直觉的答案,即越能精准预测用户需求的推荐系统就是好的。乍一看,这个答案几乎没什么问题,然而,精准预测只是一个好的推荐系统的必要条件,那究竟什么才是「好」?要回答这个问题,我们需要先了解推荐系统的本质。

推荐系统(Recommend System)的研究由来已久,这一概念初次被提及,是在1990年哥伦比亚大学研究者Jussi Karlgren的著作中,直到1994年才成为一个相对独立的研究领域,虽然这一领域已经有30年的研究沉淀,但业内对推荐系统的定义仍未达成一致,不过密歇根大学的研究者Resnick和Varian在1997年提出了一个较为公认的定义:「推荐系统是利用电子商务网站向顾客提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程」。

想给用户做推荐?先收下这份「推荐系统」评估指南

△ @linkedinsalesnavigator from unsplash.com

以上这段描述反映了推荐系统最本质的三个问题:第一,如何精准的预测用户的需求?第二,如何全面细致地描述网站上的信息?第三,如何给用户推荐最适合的信息?

「预测用户」&「描述信息」主要是依赖技术团队的算法,而且业内在该方面的研究相对比较成熟,目前常用的预测技术包括:基于内容的推荐、协同过滤推荐、基于知识的推荐、基于网络结构的推荐、组合推荐及其他推荐等等,由于技术难度较硬核,在此不做展开;在确保预测精准及全面描述的基础上,便是「推荐」最合适的信息给用户了,但什么是最合适的?这个评判的标尺就拿捏在用户的手上。

推荐系统的评估维度

接下来就是关于如何评估推荐系统的好坏,业内普遍认为,推荐系统的评估涉及两大范畴的维度:准确度(Accuracy)和可用性(Usefulness)。其中,准确度表示推荐系统预测用户行为的能力,主要根据离线实验的方式来评估;可用性更多反映的是用户的主观体验,常见的评估指标包括多样性(Diversity)、新颖性(Novelty)、惊喜度(Serendipity)、信任度(Trust)及实时性(Utility)等。

1. 多样性(Diversity)

多样性是指每条推荐信息的两两不相似程度,如果推荐结果过于单一,势必会让用户失去不断浏览的兴趣,而单纯的增加多样性并不算难,挑战主要在于如何增加推荐信息多样化的同时,又可以保证结果符合用户的「口味」;

想给用户做推荐?先收下这份「推荐系统」评估指南

△ @nate_dumlao from unsplash.com

2. 新颖性(Novelty)

新颖性是指推荐结果中出现的用户以往没看到的信息,提升新颖性最常用的办法是根据平均流行度来推荐,把流行度较低的信息提供给用户,会增加其新颖性感知,但是,一味提升新颖性也未必会增加用户满意度,同样需要在确保精准性的前提下进行;

3. 惊喜度(Serendipity)

之所以会把惊喜度作为一个指标,纳入推荐系统评估的体系中,是为了衡量推荐系统解决如下问题的能力:用户面对之前他们已经遇到的推荐结果,他们变得越来越厌烦,推荐系统需要提供让用户感到既新奇又有吸引力的信息。

「惊喜」与「新颖」在中文语境中有些相似,但在此处并不相同,笔者通过以下示例来做说明:比如,你平时会用网易云音乐来听歌,比较喜欢周杰伦、林俊杰这类R&B歌手,几乎听遍了他们专辑中的所有歌曲,如果系统给你推荐了《夏天的风》这首歌,而且你之前没听过,但是当你看了这首歌的封面,发现是周杰伦创作的,充其量也就会感觉还比较新颖,但未必会有惊喜的感觉;如果系统给你推荐了一首从创作、演唱到曲风完全不同于以往听过的R&B的歌曲,但你听完之后发现很喜欢,那这时候你就不只觉得新颖,更会有一种惊喜的感觉。

想给用户做推荐?先收下这份「推荐系统」评估指南

△ @jmuniz from unsplash.com

4. 信任度(Trust)

信任度也是衡量推荐系统好坏的重要维度,顾名思义,信任度指的就是用户对推荐系统的信任程度,信任度高的推荐系统更易引导用户产生交互行为,影响信任度的不只包括推荐的内容,也包括推荐的样式,目前提升信任度的方式主要包括增加推荐系统的可解释性(Explanation,即推荐理由),或者引入社交网络信息(熟人推荐易提升信任度)。

想给用户做推荐?先收下这份「推荐系统」评估指南

微信「看一看」展示的部分信息,即外露了社交关系相关的推荐理由

5. 实时性(Utility)

该指标主要指,当用户与推荐系统发生交互行为后,推荐信息列表是否及时的发生变化,如果用户产生若干信息检索行为后,系统推荐的信息依然不变,显然该推荐系统未能实时学习用户的需求偏好,尤其对于信息具有较强时效性的产品,该指标显得更为重要,比如新闻资讯类、部分生活服务类平台。

推荐系统评估案例

下面就以笔者近期接到的一个需求为例,说明推荐系统体验评估的操作方法。

1. 需求背景

58同城平台上,提供了包括招聘、房产、二手车、本地服务等多种生活服务类信息,每类信息都有相应的个性化推荐系统,虽然推荐系统在不断优化,但更多的是针对算法层面的提升,而推荐系统在用户主观体验方面的研究尚属空白,因此需要通过专项调研了解推荐系统现状及优化方向。

2. 评估方法选择

在做推荐系统评估时,以往多会采用一种叫做「Case by Case」的方式,即让用户针对推荐结果逐条进行「Yes or No」的评价,这种评估方式的优点是:评估是实时性的,指向明确,颗粒度较细;但缺点也很明显,样本选择不具有代表性,缺乏统计学意义,而且评价过于简单,仅能反应用户主观准确性。因此,为了能使评估结果有更好的代表性,包括更全面的评估维度,我们选择采用定量问卷的方式。

3. 评估业务选择

在正式开始实施评估前,还需要明确一个问题:是针对58全业务进行评估,还是针对不同业务线分别评估?由于58各业务独立性较强,且用户多会进入对应业务的专属频道进行查找,因此,我们与需求方沟通后,决定针对不同业务线单独评估,并且决定先以租房业务线为试点进行,跑通后再复用至其他业务线。

4. 评估场景选择

即使仅针对单一业务线来进行评估,推荐系统的落地场景仍不止一处,如何选择具体的评估场景,可以依据该场景的曝光量及用户状态来选择,针对58租房业务线,推荐系统主要会在App首页Feed流、租房频道首页Feed流、信息列表页及房源详情页底部推荐4处呈现给用户,但首页Feed流中会混杂其他业务信息,较难仅针对租房进行评估,进入信息列表页的用户多属目的性较强的用户,并非推荐系统目标用户,因此,本次需要评估的页面场景确定为租房频道首页Feed流(如下图)。

想给用户做推荐?先收下这份「推荐系统」评估指南

58租房推荐评估入口,选择了以Banner的方式常驻于租房首页Feed中

5. 评估结果

通过以上评估方案,我们可以获取到不同时间段内,不同用户对租房推荐系统在精准性、多样性、新颖性、惊喜度、信任度以及实时性方面的主观满意度数据,利用这些原始数据,我们建立一套推荐系统体验监测日更报表(如下图),可以在BI看板中实时浏览,便于相关方及时了解当前推荐系统的短板及异常情况。此外,当数值出现异常时,还可以抽取出低分用户进行专项调研,挖掘用户体验不佳的原因,从而及时反馈给推荐团队进行优化。

想给用户做推荐?先收下这份「推荐系统」评估指南

△ 以上仅列出部分BI看板数据指标

反思

通过本次调研,虽然迈出了推荐系统体验评估的第一步,但依然存在不足之处:

1. 评估颗粒度较粗

本次评估是针对推荐系统整体条目来进行的,虽然在评估维度上划分了若干子维度,但由于推荐信息展示规则的复杂性,很难定位出具体哪些条目存在问题,即使量化了用户的主观感受,也是一种笼统性的诊断,对于较明显的缺陷(例如缺乏推荐理由)尚可探查,但对于涉及算法层面的调优,指导意义则相对较弱;

2. 用户回忆门槛高

用户在填答评估问卷时,需要回忆推荐列表中曾经出现过的信息条目,但不同用户的浏览习惯差异较大,有些用户会逐条仔细浏览,有些用户会跳跃式的浏览,这种干扰因素较难在线上进行控制,结果是用户填答问卷时,可能会出现对之前浏览过的信息无法回忆的情况,进而会影响到最终的评估结果。针对该问题,可考虑选择实时性更高的填答方式,例如,在用户进入评估页面后,为用户实时呈现真实算法展示的信息条目,也可以确保用户会逐条阅读推荐信息并进行评估。

进入淘宝首页推荐系统调研页面后,用户会进入一个评估问卷中,但评估的条目会根据用户的喜好来个性化呈现,用户直接针对不同条目进行评估即可,无需回忆

以上便是笔者近期关于推荐系统评估的若干实践与反思,希望能给对该主题感兴趣的朋友们带来一些启发。

参考文献

  • [1] 王国霞,刘贺平.个性化推荐系统综述[J]. 计算机工程与应用,2012,48(7):66-76.
  • [2] Paul Resnick, Hal R. Varian. Recommender Systems[J]. Communications of the ACM, 1997,40(3): 56-58.
  • [3] 项亮. 推荐系统实践[M]. 北京:人民邮电出版社, 2012.

欢迎关注「58UXD」的微信公众号:

想给用户做推荐?先收下这份「推荐系统」评估指南

收藏 16
点赞 2

复制本文链接 文章为作者独立观点不代表优设网立场,未经允许不得转载。