快手核心技术揭秘

11 月 6 日,快手正式披露了招股书,除了商业上的成功,也首次系统化对外展示了快手的技术建设与核心能力。

  • 在 AI 等技术方面有哪些核心的自研成果?
  • 快手在音视频领域有哪些硬核技术?
  • 贡献了哪些世界性的行业标准?
  • 快手 9 年构建了怎样规模的 IT 基础设施?
  • ……

带着这些问题,InfoQ 深入挖掘了快手上市背后的技术秘密,以飨读者。

短视频或许是过去几年的诸多互联网风口里,真正意义上的技术驱动型领域。

5000 名研发员工,24 万台服务器,22 个网络数据中心,半年研发投入 23 亿,研发中心遍布全球各地,下一代国际视频编码标准的主要贡献者之一,CEO 曾经写下 70 万行 C++ 代码,这是快手不为人知的另一面。

无论是内容分发的推荐算法,还是海量视频存储下的大数据技术,亦或是直播热潮下无卡顿低延迟的音视频技术,都是短视频公司修炼的“技术内功”。

国民级短视频社区快手是一家由技术基因驱动的内容公司,CEO、CTO 等几位创始人都是技术出身,对技术的推崇、对极致的追求从创立伊始便印刻在了快手的研发血液里。

拥抱每一种生活背后,是对每一类技术的拥抱。

人工智能:创造内容、理解内容、推荐内容

AI 技术实践过程中的关键一环是如何让用户以更低的成本获取更高的价值。在短视频行业,就是让用户以更低的投入创造出更高质量的短视频。在视频创作环节快手广泛应用了 AI 技术,用科技去赋能普通用户,使他们尽可能接近专业制作视频的水准。

挑战在于,所有这些 AI 技术都要在手机本地实时地进行计算与渲染,而手机机型千差万别,如何让算法在所有机型上流畅运行,对 AI 能力的要求、计算资源的消耗都非常高。为此,快手自研了 YCNN 深度推理学习引擎,解决了 AI 技术运行受限于用户设备计算量的问题。

图片

YCNN 整体架构

主流的 CPU/GPU/NPU,YCNN 都做到了广泛的支持。为了在更大程度上利用手机算力,YCNN 引擎还提供了多种模型,将设备上的最好算力与相应的模型进行匹配,以期达到效果与性能的最佳平衡,给用户带来最好的体验。

理解视频可能是 AI 落地过程中最难的一环。对人脸维度的解析、场景类的解析、音乐类的解析等等,这些都是从单个角度进行建模,但视频需要的是多模态的解析。2016 年,快手将深度学习组改为多媒体理解组(Multimedia understanding,简称 MMU),赶上了人工智能快速应用的高速列车。

得益于 MMU 的多年深耕,快手现在每天可实时分析超 1500 万条视频及上百万小时的直播内容。MMU 开发出的内容分析算法系统可对平台海量数据进行实时多维分析及筛选,同时还可有效过滤非法及侵犯第三方知识产权的内容。根据艾瑞咨询的报告,快手也是中国首家成功大规模应用端到端自动语音识别系统的公司。

推荐内容是与用户最紧密联系的一环,可以说这一环直接决定了短视频 App 的用户粘性。快手内部针对核心场景的 AI 算法引擎部门名为社区科学部,致力于用一整套 AI 解决方案实现核心场景下的算法逻辑。

音视频:左手协议,右手标准

互联网的光鲜亮丽好像都在灯红酒绿的城市之中,然而鲜为人知的是,中国农村网民规模已经突破了 2.25 亿。在这 2 亿多人口的农村网民群体中,低端的千元机型仍是绝对主流。

另一方面,不同地区互联网普及程度不一,网速快慢有别,山区和城市的信号不可相提并论,不同机型在性能、屏幕分辨率等方面都存在大大小小的差异。如何让同一片蓝天下的人群享受到短视频给大家带来的快乐?这背后对技术的要求可能超乎你的想象。

为了解决这些问题,快手音视频技术团队自研了私有传输协议 KTP (Kuaishou Transport Protocol) 和基于流式的直播多码率标准 LAS(Live Adaptive Streaming)

架构实践与基础设施建设

一般来说,成长型企业的基础架构演进是线性的,大的基础架构演进的频率并不会太高,很多单体就能解决的问题一般也不会强行微服务。但对于快速成长型的企业而言,业务的规模化、多样化和海量的数据会倒逼基础架构快速迭代,以兼顾高性能、高可靠、高可用的业务需求。

以快手的春晚红包活动为例:

短视频领域惯用的解决方案是将视频放到内容分发网络(CDN)上,既把视频文件输送到离用户最近的地方,又利用大量 CDN 节点分担用户观看的流量,这是业界成熟的解决方案。但在春晚视频红包的数亿瞬时流量面前,这个方案却是完全顶不住的。春晚主持人口播抢红包的时间节点,预估出来的视频播放瞬时流量会超过中国的 CDN 带宽容量总和,快手预估如果要保证春晚活动的体验,至少需要数百 TB 带宽资源。架构师们需要设计高效的资源预分发策略,并建立准确的带宽预测模型,基础设施建设人员也要做好合理的采买准备。

对于基础架构团队来说,硬件不仅考验公司的采购以及部署能力,从另一个层面上,服务器从十到一百、一千、一万、十万…. 更考验基础设施的架构能力。

业界常说架构要做到高并发、高可用。高并发很好理解,高可用却很难衡量。究竟什么样的高可用设计是行之有效的呢?在此以前,这是一种薛定谔的状态,只有真到出问题的时候,才能得到验证。

全链路压测是应对高并发流量洪峰的“核武器”,所有服务的高并发能力都需要通过压力测试来确定和验证。快手的做法是用混沌工程的理念做故障注入,核心思路是在包括单机、服务在内的所有服务器上随机注入不同级别的故障,去模拟部分机器高负载、高延迟导致服务器宕机或半死不活的状态,从而检测高可用设计是否行之有效。

把一只猴子放进机房,随便你破坏,宕机算我输。

与架构升级配套的,还有基础设施的建设。

  • 人才是 21 世纪最宝贵的“基础设施”。截至 2020 年 6 月 30 日,快手拥有逾 5000 名研发人员,超过 2300 名研发人员拥有硕士或以上学位。
  • 研发投入是验证一家企业对技术的重视程度。2017 年、2018 年、2019 年及截至 2020 年 6 月 30 日,快手研发开支分别为 476.6 百万元、18 亿元、29 亿元及 23 亿元,分别占同期经营开支的 23.1%、26.8%、21.5% 及 13.6%。
  • 研发中心是技术成果产出的关键来源。快手在全球多地建有研发中心,国内在北京、杭州、成都、深圳等多地建有研发中心,海外有总部位于硅谷的快手科技美国研发中心,在西雅图和圣地亚哥都设有研发团队。

图片

斯坦福大学附近的快手硅谷研发中心

  • 网络基础设施是服务稳定性的直接保障。目前快手已有超过 24 万台服务器,分布在全国 22 个网络数据中心,做到了真正意义上的异地多活。今年 6 月,快手和乌兰察布举行仪式,正式布局超大规模数据中心,预计明年将投入使用。

要自研,更要开源

为了追求极致的用户体验,快手利用前沿技术为用户带来消费与互动上的极致体验;利用多模态内容理解,对用户、内容及二者互动做深度理解,应用在内容安全、推荐、广告等环节;利用深度学习、强化学习、图表达学习实现个性化内容推荐,提高用户消费内容的体验和效率。此外,以研发人才、研发投入、数据中心等为代表的 IT 基础设施,成为快手业务快速发展的技术底座。

而这些高精尖技术,很多都是快手技术团队自研并贡献给业界的。

技术圈一直对科技公司“造轮子”这个现象颇有负面评论,有人认为开源解决方案能搞定的事情不应该再去自研一个方案出来。但对快手而言,自研的出发点都是因为业界现有的开源方案无法满足快手短视频、直播场景下的复杂业务需求。在这样的背景下,自研成了唯一出路。

今年以来,快手已先后自研并开源直播多码率自适应标准 LAS、OOM 解决方案 KOOM 等多个解决方案。自研是一家科技公司证明自己技术实力的名片,也能在复杂场景下给具有相似痛点的企业提供新的解题思路。

自研是技术实力,开源是普惠情怀。

受国际环境影响,开源与自研两条腿走路的方案已经被广大中国互联网企业所重视,做好技术创新、技术储备也已经是国内科技企业的共识。快手成立 9 年以来,一直在耕耘技术,在各种不同的业务场景下,想要为用户提供上佳体验,让用户保持新鲜感,就需要企业不断实现技术创新,这是快手内部的一种共识。

正如快手 CTO 陈定佳所言:

“我们希望快手作为一个连接器, 可以更好地连接人与人, 能够消除一点点孤独感, 增加一点点幸福感。快手的使命, 是用有温度的科技提升每个人独特的幸福感。”

随着快手体量的持续扩大,未来还将会有更多来自快手内部的技术实践落地经验成为可供业界参考的解决方案,不论是开源方案还是实现思路都是对中国技术力量的一种正向反馈。

追求技术的极致,制定行业的标准,实现用户的价值,未来假如有更多“快手”出现,我们也终将听到中国技术人的呦呦鹿鸣。

技术服务于内容

从快手来看,CEO、CTO 等几位创始人都是技术出身,对技术的推崇、对极致的追求从创立伊始便印刻在了快手的研发血液里。

推荐内容是与用户最紧密联系的一环,可以说这一环直接决定了短视频 App 的用户粘性。快手内部针对核心场景的 AI 算法引擎部门名为社区科学部,致力于用一整套 AI 解决方案实现核心场景下的算法逻辑。

快手自研了针对短视频 & 直播场景的多任务多目标推荐模型,在触发、粗排、精排到端上重排全链路上,针对快手数十个交互行为进行端到端建模,以留存为最终优化目标融合多个预估目标,实时为几亿用户提供个性化内容推荐。

在图神经网络平台方面,快手自研了图神经网络(KGNN),提供了一套支持超大规模异构动态图推荐模型的标准工具。相比工业界主流方案有以下显著优点:支持规模更大的图模型(比如几十亿节点全用户规模的图);支持动态训练场景,分钟级百万样本的实时训练和图更新。这也使得快手成为短视频行业首批将深度强化学习算法大规模应用于视频推荐的公司之一。

在大规模实时推荐训练平台领域,快手自研了 Kuiba,提供了一套自研流式深度学习模型的训练系统。与国内其他同类型方案相比,Kuiba 可以支持千亿样本万亿特征推荐模型的在线实时并行训练,并且具备优秀的在线预估服务性能。同时 API 接口丰富,与主流平台接口如 TensorFlow、PyTorch 等兼容,模型研发迭代快。此外还支持 GPU 和 FPGA 等各种异构行硬件,线上训练和预估的能效比高。

而在视频的分发逻辑上,快手也有一个非常有意思的现象:快手不希望头部的视频内容占据太多的曝光,希望用经济学上的基尼系数控制平台上用户之间的“贫富差距”。

快手设计的推荐机制,对明星、普通人都一视同仁。

快手成立于 2011 年,其前身是 GIF 快手,定位图片工具应用。第二年,转型做短视频社区。抖音在 2016 年成立,定位音乐短视频社区。相比抖音,快手在流量端略显疲态。在商业化变现上快手还远远没有到达瓶颈期,它还有很多基础设施可以去完善,很多变现路径可尝试,在变现端还有很大的空间。

周林涛: “留给快手的机会不多了。现在留给快手的机会就是,尽快的推进资本化,尽快建设好基础设施,做好商业化变现,在流量略显疲态的情况下,不要流失流量,并将手中的流量做好变现,实现流量与变现的权衡”。

延伸阅读:

《快手上市背后的技术秘密》

那个 CEO 写下 70 万行代码的公司,马上要上市了