您的位置  娱乐资讯

精准推荐的场景和实践

  • 来源:互联网
  • |
  • 2019-12-21
  • |
  • 0 条评论
  • |
  • |
  • T小字 T大字


以下内容根据神策数据架构师房东雨在神策 2018 数据驱动大会现场,题为《推荐的场景与实践》演讲内容整理所得。

本文主要内容包括:

推荐的概念与主要场景

推荐的流程

推荐的方法

推荐在很早之前就已经开始应用,场景非常广泛。近些年推荐也在发展,我的分享主要围绕常用和前沿的推荐方法,以及不同推荐方法之间的优缺点等内容。

一、推荐的概念与主要场景

推荐本质是让人们在海量信息找到他们需要的方法,它是信息爆炸时代下的产物。推荐与搜索不同,搜索是用户带着意愿,推荐则与之相反:我(用户)不知道要什么,此时你推荐的内容出现的话,我(用户)会眼前一亮。

推荐有三个作用,包括降低信息过载、发掘长尾、提高转化率。推荐分为个性化推荐和非个性化推荐。值得强调的是,个性化推荐只是推荐一种,是千人千面,精准到个人一面;非个性化推荐包括热门推荐、编辑精选、相似推荐等。只有当个性化推荐与个性化配合,才能达到比较好的效果。

这是知乎的两个主要的推荐场景,内容类主要是以这两个类型为主流。图 1 是用户登录后看到的内容,这些内容和用户查看的历史内容相类似。图 2 中的“相关问题”,这些内容和用户在读的文章内容是有关联的,这属于非个性化推荐。


图 1 知乎登录首页,来自于知乎


图 2 知乎相关问题,来自于知乎

场景一:Feed


图 3 Feed 推荐

这类是以信息流( Feed 流)的形式进行推荐。今日头条是最典型的代表,内容足够多也足够优质,推荐很好地提升了用户的使用时长。它的特点是,Feed 流会占据 APP 的主要空间,当用户浏览到最底端的时候,下面会持续出现 Feed,当用户进来后可以持续消费内容。

场景二:猜你喜欢


图 4 猜你喜欢

这是“猜你喜欢”场景,它和 Feed 推荐最核心的区别在于:“猜你喜欢”一般是占用页面的一部分,希望实现的是用户行为的延伸操作。

场景三:相关推荐


图 5 相关推荐

以上是“相关推荐”。比如用户浏览一个手机后,下面推荐了“相关手机”,阅读一篇文章后,下面推荐了“相关文章”,看了一部电影后,下面有“相关电影”,推荐内容和我们关注的内容相关。

二、推荐的流程

推荐目的之一是要建立人与物以及物物之间的关系,推荐的流程分为几步。

第一步:确定业务场景

要根据你的产品形态、现有数据、业务目标、产品运营方向来确定你做推荐所需要的数据源。这些数据源包括:

1、要推荐物品或内容的元数据,例如 ID、关键字、描述等;

2、系统用户的基本信息,例如 ID、性别、年龄等;

用户需要唯一识别的 ID,推荐系统有一个难点是 Web 端的统一用户识别,因为在手机端我们可以相对容易的来确定用户 ID,但在 Web 端,由于存在浏览器等各种差异,会导致用户 ID 差异。在此基础上,如果有性别、年龄等信息,那么用户画像会更加清晰,更方便做个性化推荐。

3、用户对物品或者信息的偏好,包括显式的用户反馈、隐式的用户反馈、负反馈。显式的用户反馈例如用户对物品的评分,或者对物品的评论;隐式的用户反馈,例如用户购买了某物品,用户查看了某物品的信息等。负反馈,例如用户点击不喜欢, 或展现了物品信息但是用户没有点击。

负反馈是大家容易忽略的,在机器学习系统里面如果只有正例,没有负例是不能工作的。那我们如何采集负例?比如用户点击了一个叫“我不喜欢”的按钮,这是用户的负反馈。这种负反馈的缺点往往是量级不够大,所以为了保证负反馈的足够量级,神策通常采集负反馈的方式之一是,当我展示十个物品时,用户点了第三个,可能因为不太喜欢第一、第二个物品,因而没有点击,那么前两个物品就是用户的负反馈,第三个商品就是用户的正反馈。

4、访问时的上下文信息,例如时间、请求页面的其他信息等。

比如,用户在公交车上与躺床上看的视频可能是不一样的,导致差异的因素可能是时间,也可能是网络环境等;家里的电视,虽然是同一个 ID,但是爸爸、妈妈、孩子观看的内容差异很大,如何在这种情况下做推荐?我们会尝试引入时间维度,因为小朋友看电视的时间比较固定,妈妈看连续剧的时间也相对固定,引入时间维度在一定程度上能缓解这件事情,这个尝试是很重要的。

第二步:建立评价体系

建立推荐系统之前,要想好如何进行评估。评价体系的方法包括离线评估和在线评估两种方式。

离线评估包括人工评估、AUC、DCG。人工评估很好理解,比如我们评估一个用户很喜欢动画片,并进行一些推荐,我们可以直接去观察所推荐的内容中用户播放动画片的比例是否比较大;同时 AUC、DCG 也是常用的模型离线评价指标,但是这些数据指标可能会存在比较大的偏差,所以我们一般不会拿此指标来直接评价效果,而只是将它作为参照指标。在线评估的标准,包括 CTR、平均阅读时长、转化率、留存等。

要进行科学的评估,可以重点注意以下几个问题:

第一,通过 A/B Test 进行评估;大家应该非常了解 A/B Test,我要强调的是,分组的用户应该是正交的,如果分组是安卓渠道和 iOS 渠道,那这两组用户本身的行为就会存在偏差,因为两个渠道是有各自的特点的,这样做并不是科学的方式。

第二,使用对比指标而不是绝对值指标;如果你关注 CTR 指标,追求的目标并非将目标达到 5% 就 OK,我们关注的指标应该是相对值,也就是对比基线策略提升了多少。因为绝对值会被产品形态和具体业务场景影响,比如产品首页上只有这一个按钮肯定点击率很高。也就是说,在所有因子不变的情况下,只修改策略和方法后的对比指标才有意义。

第三,不管是机器学习还是推荐系统,追求的都是整体效果提升,而无法具体到优化每个个体的效果。推荐系统能优化的也是整体效果,是无法优化到个人,对个人优化时,我们一般只会处理那些 Bad Case。

第三步:选择 Feature 与 Label

这个过程包括特征选取、数据清洗、特征工程、正例与负例。

第四步:模型训练和工程化

这个过程包括数据流建立、训练和优化模型、推荐服务。

第五步:实验与迭代

综上所述,推荐系统是一个流程:海量 Item

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186
友荐云推荐
热网推荐更多>>