字节跳动;OKR;管理模式;推荐系统;限流算法;用户画像;技术预见;第二曲线

公司简介

北京字节跳动科技有限公司,成立于2012年3月,是最早将人工智能应用于移动互联网场景的科技企业之一,是中国北京的一家信息科技公司,地址位于北京市海淀区知春路甲48号 。公司以建设“全球创作与交流平台”为愿景。字节跳动的全球化布局始于2015年,“技术出海”是字节跳动全球化发展的核心战略,其旗下产品有今日头条,西瓜视频,抖音,火山小视频,皮皮虾,懂车帝,悟空问答等。

字节跳动人工智能实验室成立于2016年,旨在针对人工智能相关领域的长期性和开放性问题进行探索,帮助公司实现对未来发展的构想 。其独立研发的“今日头条”客户端,通过海量信息采集、深度数据挖掘和用户行为分析,为用户智能推荐个性化信息,从而开创了一种全新的新闻阅读模式 。

旗下产品

今日头条,西瓜视频,抖音,火山小视频,皮皮虾,懂车帝,GoGoKid英语,飞书,番茄小说,悟空问答,FaceU激萌,轻颜相机等。

字节跳动 - 图1

管理模式

“无为”管理

OKR(Objectives and Key Results)管理

OKR是“目标”和“关键结果”的英文缩写,这种管理工具起源于Intel,发扬于Google,现在主要在互联网高科技公司中推行。所谓“真正的管理不是由管理者,而是由目标来管理”,即MBO,Management By Objective。OKR即是通过很明确目标牵引着员工激发自动能,而非每日无所事事。

去等级化的公司文化

在字节,大家都不准叫什么总、什么老师,而是直呼其名;现如今很多公司都在努力从称谓、头衔上着手,来改变一个公司的管理文化和管理结构。如阿里巴巴用花名代替等级头衔,增加了趣味性,拉近了人与人的距离。字节跳动则选择了更加极端的平等、去头衔化、去等级化的文化。

Context,not Control

什么是context

企业管理模式有两种,第一种:CEO做战略设计,提出战略计划,逐层分解之后执行,执行的过程中如果遇到情况,会再往上汇报,CEO汇总信息,再次定出工作任务,这个过程中有审批、有流程,有很多的管理机制。过去很多企业都是采取这样的方式,主要包括:建构战略和控制流程。

第二种:有更多的人参与决策,让更多的想法自下往上涌现出来,而不是一个从上到下的战略分解,这个过程中需要更多人基于上下文Context做出判断,而不是根据指令来执行。

具体来讲,Context是指决策所需要的信息集合,包括原理是什么,市场环境如何,整个行业格局如何,优先级是什么,需要做到什么程度,以及业务数据和财务数据等等。

Control则包括了委员会、指令、分解和汇总、流程、审批等等。

Context的好处
  • 让更多的人参与决策,利用集体的智慧
  • 更快速的执行和响应,无需层层汇总
  • 充分的外部信息输入,让更多同事、主管面向行业,而非靠CEO作为对外接口
  • 参与感激发创造力,员工知其然相比只知道指令做起来会更有意思
  • 可规模化,Context的建设,表现形式可能是内部的系统,可能是知识共享文档,这些都是可以复用的,是可规模化的
与Control的结合
  • 紧急情况和重点项目,重大PR危机或竞争对手已经逼近的重点项目
  • 创新业务和新部门的早期,新高管上任的磨合期、创新业务需要更多支持配备资源的早期
  • 不匹配的职位安排,某岗位的人跟公司理念差距巨大时

隐性能力和资源下的隐性业务

字节跳动的内部管理软件“飞书”在2017年7月上线,在内部推广使用,2019年6月,飞书正式成为一款产品,在资本市场乘风破浪。类似的情况在字节内部并不唯一,至于为什么一个内部使用的软件能实现商业化,其在于我们要谈到的隐形能力下的隐形业务。

隐性能力与隐性业务

每个人可能有一些隐性能力,这种能力由于没有用于交易,所以它就变不成一种业务;它的首创成本很低,但是它的最终效用可能很高。当然,也有可能它就淹没在那了,如果没有场景、没有应用,它就没有任何经济价值。例如伯纳斯李发明万维网,只是“随手”做了两个小小的改进:

  1. 将所有的局域网互相连接,这个局域网里头的某一台计算机能够自由地跟另外一个局域网的某一台计算机连接,他把它命名为World Wide Web,缩写就是WWW;
  2. 超文本传输协议,同样也是要解决局域网之间的个体终端自由切换的问题,其实就是自由地浏览,超文本传输协议的缩写就是Http。

类似的,全球的云产业现在有三大巨头AAA,即亚马逊(Amazon)、阿里巴巴(Alibaba)、微软(Microsoft)(微软的云叫Azure cloud)。

阿里巴巴为什么能够做阿里云?在相当程度上,它做云所需要的能力和资源,在它没想到做云之前已经开始做了,而且已经初见成效。在类似于双十一的交易高峰,为保证稳定,其整个后台支持网络必须要非常强大,但过了峰值以后,该项资源和能力变得有些闲置,而多余出来的资源和能力,就有可能形成某种市场进行交易。

事实上,支付宝和阿里云都是为了解决内部问题应运而生的,但是这种精益求精的隐性业务在增长到一定体量时,向市场公开化,无异于王者般降临。这种隐性能力、隐性资源作为种子能力、种子资源,需要花很大的精力去播种、去培育、浇水、施肥,这样隐性业务才能变成一种真正在别人看来节外生枝突然冒出来的业务。

微软现任的CEO萨提亚在他的自传里说:“云业务让我得到了一系列以后要谨记在心的教训,其中最重要的一条是,领导者必须同时看到外部的机会和内部的能力与文化,以及它们之间的所有联系,并在这种洞察变得众所周知之前率先反应,抢占先机。”

隐性业务与第二曲线

许多企业在试图打造”第二曲线“:

字节跳动 - 图2

企业打造的第二曲线可能存在两个问题:

  1. 它所谓的第二曲线是一种众所周知的洞察,其实已经不能叫洞察了。看到有机会了,我再开始打造这个业务,这个时候你一切都是从零开始,也很可能永远实现不了零的突破。
  2. 最致命的是,很多公司开始所谓的培植第二曲线,都是在公司现有的业务不行、已经开始走衰的情况下,想着再开辟一条新的业务

隐性业务的特点是:它就在你从事核心业务,想把它做到极致的时候,你无意当中就已经具备了那些资源和能力。探索型的经营方式,用贝佐斯的话说叫彷徨型的战略。它对一个东西、一个业务是怀着试错的态度,尽最大的努力,哪怕是获得比较小的回报,甚至长时间不盈利,只要能够保持公司的运行,也要坚持下去。

推迟满足感

《少有人走的路》提出的推迟满足感包含两个方面。

  1. 你可以得到的好处,你不急于去获取,你是有节制地使用你的优势和好处;
  2. 不是马上有回报、有好处的,你也要去做。

在刚刚创立不久,字节就已经显示出很强的增长性,有人下大注来投资但遭到了张一鸣的拒绝。他认为一个公司最重要的是让可能性保持得足够大,然后现实性,也就是变现的东西,要尽可能地节制,尽量地少。尽量地暗中积累家当,谨慎节制地变现的经营哲学,概括起来其实就是推迟满足感。

正是这种推迟满足感的经营哲学,能够保证这家公司更多地关注我拥有什么样的能力,而不是急于把这个家当变现成好处。也正是这样一种态度,能够保证一个公司拥有持续地产生隐性业务的机制,从而能保证这家公司的经营曲线上不断地长出新的曲线出来。

抖音的系统逻辑

限流:漏桶与令牌桶算法

漏桶算法:以将访问请求加入桶中,并以恒定速率处理这些请求。当桶满时发生溢出,拒绝响应后续请求。

字节跳动 - 图3

令牌桶:系统以恒定速率向桶中加入令牌,访问请求到达后,消耗一个令牌,系统处理该请求;若桶中无令牌则拒绝。

字节跳动 - 图4

漏桶算法保证了系统以恒定速率进行需求响应,限制了数据的平均传输速率;令牌桶算法则能处理一定程度突发的大量访问。

推荐系统:四重推荐

字节跳动 - 图5

  • 视频审核:分为机器与人工审核两阶段,此处不再详述。
  • 冷启动与数据加权:分配初始流量池,从200~300到1000不等,根据账号分值(是否认证、资料完整度)及视频分值(点赞率、完播率等)进行综合打分,选取前10%的视频再增加10000次曝光。
  • 加大推荐与精品推荐:强化人群标签分发,即根据视频的内容标签推送至具有相匹配标签的用户。再次评估打分后,将优秀作品送进精品推荐池,弱化人群标签进行大规模投放。
  • 二次推荐:指古早视频再次获得热度。一方面是在垂直领域做得足够好,获得了较精确的标签,优质内容+精准用户;另一方面是用户的某个新视频爆火,使得其他用户点进主页观看旧视频。此时系统会将这些视频重新加入推荐池。

用户画像

用户画像的若干组成部分:

  • 基础属性:性别、年龄、地域、位置
  • 观看兴趣:用户浏览内容、点赞评论收藏等,分行业/品牌广告浏览,各类型达人偏好行为定向
  • 环境终端:WIFI/移动网络,运营商,设备品牌,手机型号
  • 互动行为:线上行为(转评赞等),线下行为(用户行动轨迹)
  • 品牌自定义人群:品牌第一方人群,品牌广告高互动人群

今日头条的推荐系统

系统概览

推荐系统本质上是解决用户,环境和资讯的匹配,y = F(Xi ,Xu ,Xc)。如果用形式化的方式去描述实际上是拟合一个用户对内容满意度的函数,这个函数需要输入三个维度的变量。第一个维度是内容。头条现在已经是一个综合内容平台,图文、视频、UGC小视频、问答、微头条,每种内容有很多自己的特征,需要考虑怎样提取不同内容类型的特征做好推荐。第二个维度是用户特征。包括各种兴趣标签,职业、年龄、性别等,还有很多模型刻划出的隐式用户兴趣等。第三个维度是环境特征。这是移动互联网时代推荐的特点,用户随时随地移动,在工作场合、通勤、旅游等不同的场景,信息偏好有所偏移。

此外还有一些无法直接衡量的目标,如广告频控、低俗内容、标题党与低质作品打压、重要新闻置顶加权、低级别账号内容降权等。

推荐模型

前面提到的公式y = F(Xi ,Xu ,Xc),是一个很经典的监督学习问题。可实现的方法有很多,比如传统的协同过滤模型,监督学习算法Logistic Regression模型,基于深度学习的模型,Factorization Machine和GBDT等。

一个优秀的工业级推荐系统需要非常灵活的算法实验平台,可以支持多种算法组合,包括模型结构调整。因为很难有一套通用的模型架构适用于所有的推荐场景。现在很流行将LR和DNN结合,前几年Facebook也将LR和GBDT算法做结合。今日头条旗下几款产品都在沿用同一套强大的算法推荐系统,但根据业务场景不同,模型架构会有所调整。

典型特征

第一类是相关性特征,就是评估内容的属性和与用户是否匹配。显性的匹配包括关键词匹配、分类匹配、来源匹配、主题匹配等。像FM模型中也有一些隐性匹配,从用户向量与内容向量的距离可以得出。

第二类是环境特征,包括地理位置、时间。这些既是bias特征,也能以此构建一些匹配特征。

第三类是热度特征。包括全局热度、分类热度,主题热度,以及关键词热度等。内容热度信息在大的推荐系统特别在用户冷启动的时候非常有效。

第四类是协同特征,它可以在部分程度上帮助解决所谓算法越推越窄的问题。协同特征并非考虑用户已有历史。而是通过用户行为分析不同用户间相似性,比如点击相似、兴趣分类相似、主题相似、兴趣词相似,甚至向量相似,从而扩展模型的探索能力。

模型训练

字节跳动 - 图6

模型的训练上,头条系大部分推荐产品采用实时训练。实时训练省资源并且反馈快,这对信息流产品非常重要。用户需要行为信息可以被模型快速捕捉并反馈至下一刷的推荐效果。我们线上目前基于storm集群实时处理样本数据,包括点击、展现、收藏、分享等动作类型。模型参数服务器是内部开发的一套高性能的系统,因为头条数据规模增长太快,类似的开源系统稳定性和性能无法满足,而我们自研的系统底层做了很多针对性的优化,提供了完善运维工具,更适配现有的业务场景。

目前,头条的推荐算法模型在世界范围内也是比较大的,包含几百亿原始特征和数十亿向量特征。整体的训练过程是线上服务器记录实时特征,导入到Kafka文件队列中,然后进一步导入Storm集群消费Kafka数据,客户端回传推荐的label构造训练样本,随后根据最新样本进行在线训练更新模型参数,最终线上模型得到更新。这个过程中主要的延迟在用户的动作反馈延时,因为文章推荐后用户不一定马上看,不考虑这部分时间,整个系统是几乎实时的。

召回策略

字节跳动 - 图7

召回策略种类有很多,头条主要用的是倒排的思路。离线维护一个倒排,这个倒排的key可以是分类,topic,实体,来源等,排序考虑热度、新鲜度、动作等。线上召回可以迅速从倒排中根据用户兴趣标签对内容做截断,高效的从很大的内容库中筛选比较靠谱的一小部分内容。

参考文献

  1. 字节跳动 (bytedance.com)
  2. 张一鸣:“Context,not Control”,做CEO要避免理性的自负 | 投中网 (chinaventure.com.cn)
  3. 字节跳动的管理哲学 | 人人都是产品经理 (woshipm.com)
  4. 图解抖音推荐算法 - 推荐系统-炼数成金-Dataguru专业数据分析社区
  5. 漏桶算法和令牌桶算法的区别m0_37477061的博客-CSDN博客令牌桶算法和漏桶算法
  6. 【推荐算法】今日头条推荐系统原理zkq_1986的博客-CSDN博客今日头条推荐系统