今日头条推荐机制 – 青瓜传媒 //www.f-o-p.com 全球数字营销运营推广学习平台! Thu, 18 Apr 2019 06:11:29 +0000 zh-CN hourly 1 https://wordpress.org/?v=5.2.20 https://static.opp2.com/wp-content/uploads/2021/04/favicon-1.ico 今日头条推荐机制 – 青瓜传媒 //www.f-o-p.com 32 32 2张图带你看懂今日头条推荐系统 //www.f-o-p.com/128101.html Thu, 18 Apr 2019 06:11:29 +0000 //www.f-o-p.com/?p=128101 今日头条推荐机制

 

推荐系统的“前身”

2016年,腾讯以80亿美元估值投资今日头条,结果大家都知道,张一鸣拒绝了腾讯的投资,现在大家也知道,字节跳动估值750亿美元,这一切,推荐系统功不可没。

因为搜索引擎和推荐系统太相似,相对来说也更简单(勿喷),所以我们先来了解一下搜索引擎。至于搜素引擎是不是推荐系统的前身,我很懒,没有考察。

如上图,搜索引擎分成为离线部分和在线部分,每一部分有不同的使命。

简单来说,搜索引擎的离线部分,专注于内容的搜集和处理。搜索引擎通过网络爬虫抓取网站上的原始内容,并将内容建立索引。这些内容会根据搜索系统的不同要求建立不同的索引体系,比如新闻类型的内容,会建立时效性的索引数据。

搜索引擎的在线部分,负责响应用户的搜索请求,完成内容的筛选和排序,并将最终结果返回给用户。我们举一个例子来说明这个流程:

用户在搜索引擎输入一个关键词NBA,搜索引擎搜索会对关键词进行分析、变换、扩充和纠错等处理,比如发现美职篮与NBA是同义词,就会将其扩充。接下来,搜索引擎会通过多种方式从不同索引数据获得候选集,这个环节叫召回。得到候选集后,搜索引擎通过更精细的计算模型对每一篇候选内容进行分值计算,对候选集的每一项进行排序。这个时候,还不能将结果展示给用户,需要经过规则干预这一过程。这个过程服务于特定的产品目的。假如有这样一条“官方网站保护规则,确保所有品牌搜索词都可以优先返回官网”,则此时就会将官网插入并置顶,最后再将结果展示给用户。此时,搜索引擎的工作还未结束。搜索引擎会根据用户的点击反馈去优化排序模型。比如,大部分用户都没有点击文章10,则文章10后续就不会获得更靠前的展现位置。

对以上两图进行总结就是下图,就是想让你们看的第一张图:

今日头条的推荐系统

通过上“一”张图,我们明白了搜索引擎的原理(无论怎样我都会装作你看懂了),而今日头条的这张图,就是比上图上多了一笔,考虑到这两张图高度相似,我这么懒的人,当然是不会去画的了,你们发挥想象吧。

其实,推荐系统也有离线部分和在线部分。上图(那不是图,是PNG)即是推荐系统的离线部分,与搜索引擎大同小异。

和搜索引擎一样,推荐系统也需要获取内容。推荐系统通过数据库导入、协议同步和用户提交等方式获取推荐内容。区别于搜索引擎,推荐系统获取内容的方式较多,且内容的结构化程度要远胜于搜索引擎爬虫抓取的内容。推荐系统也需要将待推荐的内容进行索引化处理,这一点与搜索引擎较为相似。推荐系统的维度会更多。

接下来,就是推荐系统的在线部分了。天啊,看到上图,发现推荐系统真的和搜索引擎太像了,就多了一笔。

搜索引擎的输入为用户的搜索关键词,推荐系统同样需要输入,只是这个过程用户没有感知,对推荐系统来说,它的输入为场景信息,比如时间、地点和设备等。搜索引擎获得输入后,会进行关键词处理,对于推荐系统来说,会进行用户画像查询。这个案例中,推荐系统了解到,该用户在实体词维度,对NBA感兴趣,在分类维度,对体育和科技感兴趣。查询到用户画像后,推荐系统就进入召回环节。它通过多种方式,根据用户画像查询结果“NBA、体育和科技”,从不同索引数据里获得候选集合。在召回完成后,和搜索引擎一样,推荐系统按照预定预估目标对候选集进行排序。同样,推荐系统也需要经过规则干预步骤后,才会将最终结果展示给用户。对于最后一步,用户的各种动作行为,在搜索引擎里,会持续优化排序模型,在推荐系统里,还会持续改进自身的画像。

对以上两图进行总结就是下图,就是想让你们看的第二张PNG(图):

推荐系统的本质

通过对搜索引擎和推荐系统的两张图,我们大致明白了推荐系统是怎么个一回事。实际上,推荐系统是一个策略行为。对于策略,他有四要素,分别是:

待解决问题输入(影响解决方案的因素)计算逻辑(将输入转换成输出的规则)输出(具体的解决方案)

对于今日头条来说:

它待解决的问题是“从海量的内容中,找到用户喜欢的内容”;

他的输入是“用户画像和内容特征”;

计算逻辑:将这些内容特征按一定规则转化为喜欢度;

输出:将内容按喜欢度从高到低排序。

由于我推荐系统的课程还未结束,先不展开这部分内容了。后面博客会对上文进行展开,有兴趣的同学,欢迎关注。

说明:以上内容来源于个人阅读和付费课程的归纳整理。

 

作者:皮带

来源:皮带

]]>
以头条为例:谈谈推荐策略 //www.f-o-p.com/114340.html Wed, 02 Jan 2019 03:34:03 +0000 //www.f-o-p.com/?p=114340  今日头条推荐机制

 

关于推荐

首先,为了方便读者更好的理解本文,笔者将以今日头条(建议在手机上下好“今日头条”APP,且最好注册一个头条号并登陆到后台)这款产品为例输出一些内容推荐(分发)相关的“干货”。

回到标题,何为推荐?

简言之:“物以类聚,人以群分”。

那何为物,何为人呢?

答:物为内容(文章/图文/视频等),人为用户(刷今日头条的用户)。

那么机器怎么知道内容和人属于什么类别(断物识人)呢?

再答:“内容画像”和“用户画像”的构建,而推荐的过程其实就是完成用户和内容的匹配。

那么什么是“内容画像”和“用户画像”呢?机器是如何对两者进行精准构建和匹配呢?

内容画像

内容画像,简单来说就是内容的特点。如果具象化内容,笔者更倾向于假设是一个内容漏斗(类似于倒三角形用户漏斗,不过所示关系不一定为层级关系,见图1)。第一层通常表示内容的一个垂直领域(大类别)而后面几层可以大致表示为标签/关键词/主题词等小类别。

(图2:百度图片,仅图示忽略文字)

考虑到内容漏斗有很多层,为了便于理解,笔者简单说一下用户可以直观看到的几层。最显眼的可能就是第一层了,在头条(指今日头条)内部通常指的就是垂类(垂直领域),如:科技、娱乐、体育等。

举个栗子:笔者昨天发布的一篇软广,被机器识别成了“科技”领域的文章。那这个内容第一层就是科技,通常为机器标注(涉及NLP技术:文本分类、命名实体识别等)、人工手打(传说中“打tag”的一种主要形式),或PUGC创作者(统称:头条号)在发布内容时进行领域选择,不过,现在发布内容已不需要进行选择。

显然,光知道内容的大类并不能给用户精准的推荐感兴趣的内容。这里再讲一层,其实也是一种打tag的形式(涉及NLP技术:文本主题/关键词抽取),只是平台根据用户的喜好对内容做更进一步的更细化了。还是上面举例的这篇文章,对应的一些细分tag就有vivo、手机、科技等。

当然,这个内容漏斗远不及这两层,细分其实有很多种,比如接着上文举例的文章来说,漏斗可能是这样的:科技->手机->Android->vivo->vivo旗舰机->vivo NEX->vivo NEX双屏版。而细分的惊喜,内容画像也就越清晰,推荐才越精准,当然,技术难度也是同样提高的。

因此,像头条比较强悍的竞品之一,一点资讯号称365万个个性化订阅频道,可想后面支撑的一个推荐算法团队是有多强。

当然,除了内容的特点之外,内容画像还包含内容的质量、热度、原创度、所发布用户的权重等。而这个权重指的就是头条对头条号所发布文章的推荐权重(更多的是内容冷启动推荐数量,以及后续推荐的加成幅度)。

说到推荐权重,就不得不提一下之前平台为了让头条号作者们过新手/评原创有一个量化的指标,即头条号指数(如图6所示),而这个头条号指数其实可以理解为平台对于头条号的一个打分,决定了头条号所发布内容的推荐权重。而头条号指数的评定标准有5大方面(如图7):原创度、垂直度、关注度、健康度、传播度。不过,现在头条号Web端后台已经看不到了,不过手机端还可以看到。

(图7: 2017年6月26日笔者头条号后台)

用户画像

什么是用户画像呢?简而言之就是你(显式&隐式)的基本特征(比如:性别、学历、年龄、常驻位置等)和兴趣爱好(篮球迷、数码控、动漫迷等)所构建出来的一个“属性图”(技术通常称为“知识图谱”)。

举个栗子:我们通常被机器标注成一个数据组合(如图9):科技 | 20%、体育 |10%、娱乐 | 30、养生 | 5%……..

(图9:用户画像实例,来源《内容算法》)

那么问题来了,机器如何知道一个用户的画像呢?

首先,用户分为新用户和老用户两类。针对前者就涉及到了用户画像构建的一个常见且难点(策略产品面试比问)——(用户)冷启动,通常面试官会问你,如何做用户冷启动?

那么笔者告诉大家一个常见的答案:

  • 首先,新用户打开APP会让选择喜欢的领域;
  • 其二,绝对的冷启动并不存在,用户在其他APP的行为其实也会被监督到,比如:你在淘宝看球鞋,打开头条刷新闻就能刷到你刚看的那款球鞋的广告,也就是说在你打开APP那一刻,你的一个比较明显的属性·体育|篮球已经被获取了。
  • 其三,机器通常会给你推荐当前热点内容「比如科技领域 | iPhone发布新品,娱乐领域 | 汪峰上头条等」,通过你在这些内容下的用户行为(点击,点赞,转发,跳出,停留时长等),机器会对屏幕前面的你有一个“初印象”。

通过你在不同领域内容的用户行为,判断你对内容的兴趣度,从而构建你的一个初步用户画像(这是当前常用的一种用户冷启动方式)。比如:打开头条,给你冷启动推送了12条内容(3条NBA+3条娱乐+3条科技+3条美食),然后你点击了3条体育,2条数码,1条娱乐…..。

那么,最开始的用户画像(V1.0)可能为体育 | 30%,数码领域 | 20%,娱乐领域 | 10%,其他领域 | 20%,目测是一名男性,爱好运动,科技宅等。然后,还发现里面2条体育内容都是和科比有关的,那么你大概率是个男性科密数码控。

后来,你变成了老用户,随着你使用头条的次数越多,你产生的用户行为数据越多,背后的模型就会被训练的越“聪明”。随着你“刷”的越多,你的用户画像也会随之发生不断的变化,变得越来越细化,越精准。

如何推荐

最后,关于机器在用户画像和内容画像精准构建出来之后,如何做推荐呢?

事实上,这其实就是一个匹配(match)的操作。当然,简单说匹配笔者认为还是不够恰当,因为除了这2个用户画像和内容画像(相关性特征)之外,机器在训练模型时还会考虑热度特征(全局热度、分类热度等)、协同特征(相似用户、兴趣分类用户等)、环境特征(时间、地理位置等),详见图10。

(图10:来源文章“今日头条算法原理(全)”)

那么,机器学习到了这些如图6的这些特征之后,推荐模型就会被不断的更新(准确的说是模型的参数在发生更新,如:神经网络在做后向传播时会在每一次迭代时发生相关权重参数的变化),最后机器呈现给不同用户的内容也会因为这些特征的不同而不一样,甚至同类型的用户,也就是所谓的“千人千面”(最早用在电商平台)。而作为内容“消费”平台,这里主要指的是内容分发。

那么如何让内容分发变得更加精准呢?

这里不得不提这两个名词,即:召回和排序。这里难讲,简言之,召回比较依赖于内容和用户的标签匹配度,而排序则涉及到一个用户兴趣倾向性,或者是一个更加细粒度的匹配问题上,因为要保证合适的内容放在合适的位置。

比如:笔者是一个数码控,那如果推送12篇内容给我,我更倾向于第一篇是关于数码的而不是娱乐的。而排序也往往能够反映出推荐策略的优秀程度。因为只有让用户最快的触达你感兴趣的内容才会产生更多的留存,才会激活,才能进行转化(才能更便于平台推送广告等商业化操作)。

当然,AI时代,决定模型表现,或者说我们这里的推荐系统(也可以理解为是一种机器学习模型)的表现,除了算法本身,还有算力(指的是计算机运算能力,这方面头条和竞品无法拉开差距,因为这是钱能够解决的问题),还有另外一个关键项就是数据(高质量的数据)。

关于数据的重要性,让我想到了带我做科研的一位博士师兄(目前在Amazon做推荐)说过的一句话:“Garbage in, Garbage out”,而这句话更适用于AI+产品落地上。简言之,数据对于推荐结果(或者说内容分发)的好坏起着十分根本性的作用。

说到这,请大家跟着笔者思考一个问题,头条DAU(日活)据说2.4亿+,而每个用户日均使用时长70min+,假设用户阅读一篇内容(文章/视频)的平均时间是2min,那么用户阅读内容数据得有2.4亿*70/2 = 84亿+(条)!。

所以,回到最开始的问题,为啥说头条推荐如此牛逼呢?

那是因为推荐算法的3个核心壁垒,头条都属于业内前列(甚至可以称得上是国内NO.1)。

One More Thing

以上,皆为笔者粗鄙之见,所讲内容只是今日头条推荐算法里的极少部分,背后的Model和Data十分庞大与强大,纰漏难免,还望谅解并给予批评指正。

另外,笔者认为机器(计算机)再厉害,也是人类所“赋予”的,机器越来越聪明的背后反映的应该是人(如:推荐算法团队| Modeling & Data processing)在不断的进化变强!

 

作者:熊慧超,授权青瓜传媒发布。

来源:不二互联网

]]>