全世界的TikTok:揭秘它背后强大的算法系统


点击上方“掌上编程”,选择“置顶或者星标” 程序员

优质文章第一时间送达!web

导读:抖音在全球范围内火爆起来了。根据Sensor Tower的报道,这个短视频应用程序在AppStore和Google Play的下载量已经超过了20亿次。这款风靡世界的应用程序背后究竟有怎样的魔力,让用户如此着迷?通过研究,咱们将答案锁定在它应用的算法程序上。本文来自Medium,做者Catherine Wang,原文标题“Why TikTok made its user so obsessive? The AI Algorithm that got you hooked”.算法

图片来自tenor编程

「划重点:」后端

  • 抖音的介绍。
  • 抖音的系统模型(数据、功能、算法、学习系统)。
  • 抖音的推荐流程。

「病毒式传播」让咱们开诚布公地说吧,有谁会不喜欢滑稽小狗或者小奶猫的视频呢?尤为是在全球因疫情陷入困境的今天,这样的小视频多多少少能让人逃离现实。浏览器

可是宠物小视频仅仅是抖音爆火的一小部分缘由。在不到两年的时间里,这款来自中国的APP就在全球范围内拥有了8亿个活跃用户。2020年,在抖音上,含有“新冠病毒”的视频被观看过530亿次。缓存

2020年1月,抖音成了下载量最高的APP|图片来自 SensorTower微信

抖音在全球范围内的下载量|图片来自 SensorTowerapp

抖音以生产洗脑神曲和有趣的视频故事而闻名。它在全球到底有多火爆?一般,人们在抖音上花费的时间为52分钟,相比之下,人们在Snapchat、Instagram和Facebook上花费的时间仅为26分钟、29分钟和37分钟。框架

图片来自Oberlo

此外,在这款应用中,用户能够尽情上传60秒内的视频,几乎不限内容。视频能够包含有情节的故事、喜剧、舞蹈表演和其余才艺展现。对观看的用户来讲,不须要搜索本身想看的内容,只要划一划,看几个视频,程序就会自动锁定你喜欢看的内容,而后为你推送相似的视频。

这种能够得到不间断的快乐和刺激的视频应用程序很难不让人上瘾,用户在不知不觉中就刷抖音刷了几个小时。有人将抖音称为“业余时间的终极杀手”,而且认为它会改变人们对时间的认识:“抖音上的5分钟等于现实世界中的1小时”。

「推荐系统是抖音的秘密武器」今天,咱们将要在这篇文章中讨论抖音如何利用机器学习技术,经过用户和手机的人机交互过程来分析用户的兴趣爱好。

在数字时代, 推荐系统(recommendation engine) 对咱们来讲并非一个陌生的概念。有一些人甚至将它类比为“旧时代的AI系统”。比起将来的人工智能,推荐系统缺乏不少使人眼花缭乱的特效,好比图像识别或者语音系统。可是推荐系统依旧很是实用和强大,如今咱们熟悉的各大平台都在使用这一系统。

好比,Youtube的相关视频推荐,Amazon的类似商品推荐邮件,Kindle电子书店里的“你可能还喜欢这些书籍”板块,这些咱们熟悉的内容都是推荐系统的“杰做”。

另外,在Uber和Netflix的产品负责人尼尔·亨特(Neil Hunt)的一篇论文中,他提到说算法系统让Netflix每一年省下超过10亿美圆的费用。另外,80%的用户都会在“推荐列表”里观看视频。

咱们如今就来探究一下,抖音是如何利用这种推荐系统的。

推荐系统的介绍

(对于已经熟悉推荐系统的人来讲,能够跳过这一段内容)

事实上,如今已经有不少关于推荐系统的介绍文章了,你们能够自行搜索,补充最基本的知识。在这一部分中,我将介绍推荐系统是如何变得产业化的。它的背后须要一个强大的设计和运行后端。下面是一个简单的例子:

推荐系统示意图|图片来自Medium,创做者Catherine Wang

实时推荐系统须要强大的数据做支撑(包括数据的收集和储存),用以支持相对抽象的层面(包括算法层面、服务层面和应用程序层面),从而解决业务方面的问题。

抖音推荐系统的设计原型

抖音的推荐系统,简单来讲就是“以用户为中心”(User-Centric Design)。换句话说,抖音只会推荐用户喜欢的内容,从刚刚上手的用户到活跃的用户都是如此——固然,用户越是活跃,推荐的内容也就更加精准。

若是你刷舞蹈视频,那么推荐系统就会根据这个现象为你定制娱乐类的视频,而且根据你后期的表现进一步分析你的喜爱,而且更加精准地锁定你喜欢什么类的舞蹈视频。

如下是其工做流程:

流程包含三个部分|图片来自Medium,创做者Catherine Wang

在抖音的工做系统中,有三个主要的板块:(1)用户标记内容(2)建立用户的肖像及使用场景(3)训练机器学习算法。

数据和功能

首先咱们来讲说数据(Data)。若是咱们想要推荐功能更加准确,数据将是一项必不可少的基础。数据包含三个部分:

  • 内容数据。用户在使用抖音的过程当中留下了大量的内容数据,这些数据能够被用来分类、归类,方便往后更加精准的推荐。
  • 用户数据。这种数据包括用户在抖音上留下的各类标签、职业、年龄、性别等。
  • 场景数据。这一类数据是关于用户使用场景的数据。好比,在上下班、旅行的时候,用户分别喜欢看哪一类的视频。

一旦搜集好了数据,接下来就是将数据应用在不一样的功能中。

  • 关联功能。这类功能包括根据标签推荐、关键词搜索、标签分类、资源搜索、主题标签等等。
  • 用户-场景重现功能。这类功能是基于场景数据(包括用户的地理坐标、时间表、事件的标签)等重现用户观看视频的场景。
  • 协同功能。简单来讲,这类功能不只会分析单个用户留下的数据,还会分析类似的用户组的数据(包括点击的内容、兴趣、关键词、主题)。

经过上述模型,这款应用程序将预测某些视频在某些具体的场景中是否适合某位用户。

没法度量的目标

在推荐系统模型中,点击率、观看视频的时间、点赞数量、评论等都是能够量化的目标。系统能够根据这些量化的目标做出预测。

可是也有一些目标不可度量、没法察觉,难以用这种可量化的指标去评估。

举个例子,为了维护抖音社区的纯净,必须剔除内容含有色情暴力、欺骗消费者的内容或者谣言的视频。在这种状况下,就须要在可量化的学习框架以外再搭建一个控制边界的框架,也就是咱们常说的内容审核系统。

算法

推荐系统的成长过程能够被视为机器学习的典型例子。而后经过算法(包括过滤模型、回归模型等)将整个推荐机制加以完善。

产业化的推荐系统须要灵活且能够拓展的ML平台,能够容许多种模型叠加起来,时时刻刻为用户服务。

除了主要算法以外,抖音的推荐系统还要根据用户肖像制定特殊的算法,具体的算法系统有层级分类。

学习机制

抖音的系统中包含实时学习的机制。经过捕捉和分析用户留下的数据,它能够快速提供反馈。好比,当用户点击某一种视频后,抖音会根据这一信息快速更新该用户的“喜爱库”,而后根据这一改变立马推荐类似的视频。

线上学习机制(简化版)|制图Catherine Wang,图片来自Medium

抖音的推荐流程

抖音从未向外界公布它的核心算法。可是基于公司发布的零散的信息,以及工程师们捕捉到的相关总计,我得出了如下结论(免责声明:如下内容来自我的解释与推断,可能与抖音的实际算法有出入):

图片来自Medium|制图Catherine Wang

步骤一:双重审核Duo-Audit模型

在抖音上,天天都有数百万的用户上传本身的视频。有一些不符合规定的视频极可能会逃过单一的审核系统。在这种状况下,仅靠人工审核显然是不现实的,因此双重审核系统是抖音筛选内容的一个基础。

图片来自Medium|制图Catherine Wang

通常来讲,Duo-Audit模型能够识别视频图像和关键字。它主要有两个功能:(1)检查视频中是否有违法违规的内容(包括图像和文案),一旦有相关内容,系统会将该条视频标注成黄色和红色,留到后期再由人工审核(2)经过提取视频中的关键帧,能够将其与存档内容进行对比,减小审核时所消耗的流量,同时减小引擎的负担。

步骤二:启动(cold-start)

当上传的内容在双重审核下经过以后,它将被放入到启动池中。好比,当你的新视频经过审核以后,抖音会分给你200-300个活跃帐户做为初始流量,你的视频由此能够得到几千次的展现机会。在这种机制下,新创做者和大V得以竞争,由于他们的起点都是同样的。

步骤三:量化评估

投放进流量池后,视频能够得到数千次观看,和视频相关的数据也会被收集和分析。好比获赞数量、观看数量、完整的观看数量、评论、关注者数量、转发数量、分享数量等等。而后,推荐引擎将根据这些数据对你的帐户进行评估,给内容进行打分。若是你的得分比较高,那么你产出内容的10%左右将会收获额外的1万-10万不等的曝光率。

步骤四:放大器

通过上一个步骤,用户的反馈将成为一条视频是否能够得到更多曝光的标准。在第四个步骤中,咱们将介绍一个用户肖像放大机制。换句话说,优秀的视频内容将在特定的用户组(好比球迷、时尚爱好者)中获得更多的曝光。这是一种相似于“猜您喜欢什么”的概念。经过用户留下的各种数据,抖音能够创建用户的我的资料库,从而在内容和用户间进行更好的搭配。

图片来自Medium|制图Catherine Wang

步骤五:趋势池

在上述步骤重复一段时间后,抖音将筛选出少于1%的优秀内容投放到趋势池(Trending Pool)中。在这个区域,内容的曝光率将会比其余区域的曝光率都要高,由于这些被认为是优质内容的视频会被无差异地推荐给全部用户。举个例子,无论你喜欢足球、时尚仍是电影,你都有可能看到最火爆的“美国反对警察暴力的游行”这段视频。

其余步骤:延迟曝光

用户会注意到,有一些视频在刚开始发布时反响平平,可是在发布数周以后却忽然得到了巨大的影响力。这种现象是基于如下两个缘由:

  • 抖音有一个叫gravedigger的算法,能够回顾旧的视频内容,从中挑选并曝光高质量的视频。在这种算法的曝光下,一些优秀内容最终会被发掘出来。

  • 潮流效应:若是你的某条内容得到了数百万的观看率,那么它就会固定在你的我的页面上。好比若是你专门发猫猫的视频,其中一条的观看率尤为高,那么这一条就会固定在你的我的页面上,而省去了其余类似的、关注度不那么高的视频。

曝光是有时效性的

根据研究,一条视频的曝光时间很短,有时候只有一周左右的时间。在一周以后,这条内容和这些帐户的关注度就会变低。这是由于抖音但愿用户收到的推荐不局限在一样的主题里,同时确保新的内容、新的用户有机会加入时尚大潮。

译者:Michiko
来源:神译局/36kr

更多推荐内容
↓↓↓
程序员简历的8个建议
华为与高通和解
Spring 为啥默认把 bean 设计成单例的?
最赏识王小川的,仍是马化腾
关于当前中美关系,至今写得最好的文章
大白话让你理解浏览器的缓存机制
掌上博客
若是你喜欢本文
请长按二维码,关注掌上编程

转发 朋友圈 ,是对我最大的支持哟
上,即是今天的分享,但愿你们喜欢,以为内容不错的,欢迎「 分享 或者点击「 在看 」支持,谢谢各位。


本文分享自微信公众号 - 掌上编程(ThePalmJava)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。