蒋杰:价值驱动,拥抱开源,从Angel平台看腾讯大数据打法

sasac 2019-12-31

机器之心原创

作者:一鸣

大数据作为一个技术浪潮已经历了多年的时间。腾讯作为国内流量最大的互联网企业,对于大数据技术有着巨大的业务需求。在大数据平台的建设上,腾讯走出了一条「价值驱动,拥抱开源」的发展路径。

蒋杰:价值驱动,拥抱开源,从Angel平台看腾讯大数据打法


近日,腾讯在 2017 年开源的 Angel 机器学习平台从 Linux 基金会旗下的 LF AI 顺利「毕业」,成为国内第一个成功毕业的开源项目,这无疑是为 10 年来腾讯大数据业务发展画下的重要一笔。说起腾讯的大数据业务,乃至其全栈机器学习平台,很多人可能还并不熟悉。而腾讯在发展这一平台的路径上也有着自己独特的考量。

在 Angel 平台毕业后,机器之心采访了腾讯数据平台部总经理、AMS 平台总经理、智慧零售战略合作部总经理 蒋杰 博士。蒋博士为机器之心介绍了腾讯大数据在发展上的思路,以及面对业务增长变化、大数据产业中的新变化和开源社区兴起等因素影响下腾讯大数据的发展方向。

腾讯大数据的发展:为业务而生

据蒋杰介绍,腾讯大数据的发展,经历了三个阶段:离线计算(2009-2012)、实时计算(2012-2015),以及机器学习(2015 年至今)。在 2012 年去掉 Oracle 之后,腾讯选择用 Hadoop 构建起初具规模的离线计算集群。而随着广告、推荐等方面的需求增长,业务对计算结果的实时性要求越来越高。因此在第二个阶段,腾讯选择 Spark 和 Storm,以此建立了满足实时性要求的大数据体系。保证在广告、新闻、金融等方面满足要求。

而近来业务中对用户维度的增长和用户群体挖掘等方面有了更高的要求,因此腾讯转向了研发并开源 Angel 机器学习平台。在 2015 年后,腾讯的大数据业务迈向了机器学习这一新阶段。

Angel 平台:满足业务形态

Angel 是腾讯的首个 AI 开源项目,于 2015 年联合北大开始研发,2016 年底推出、

2017 年开源

。作为面向机器学习的第三代高性能计算平台,Angel 致力于解决稀疏数据大模型训练以及大规模图数据分析问题。

相比于 TensorFlow, PyTorch 和 Spark 等同类平台,Angel 具有如下特点:

  • Angel 是一个基于 Parameter Server(PS)理念开发的平台。良好的横向扩展能力让 Angel 能高效处理千亿级别的模型;
  • Angel 具有专门为处理高维稀疏特征特别优化的数学库;
  • Angel 擅长推荐模型和图网络模型相关领域(如社交网络分析),在稀疏数据和高维模型方面的处理能力更强。

蒋杰:价值驱动,拥抱开源,从Angel平台看腾讯大数据打法

「腾讯技术发展的逻辑是服务产品。」蒋杰在采访中表示。腾讯的心态是开放的,对各自的业务越匹配、越有用、研发投入越少、效率越高,是用技术服务好业务最高的追求。

Angel 的各项技术能力,正是为了满足腾讯业务中的需求而生的。

以广告精准推荐需求为例,十亿级用户的特征维度都是稀疏的,在处理这样的稀疏矩阵时,传统的深度学习框架在性能上就会相对不足。因此,面对自身业务的特点,腾讯开发 Angel 平台的首要意图便是为了满足自身的技术需求。

这样一来,腾讯形态各异的业务便可以通过一套统一的大数据平台进行计算,为每项业务都提供相应的技术方案。Angel 平台包含了传统的机器学习算法和深度学习算法,也有图方面的算法,这些都可以在腾讯的实际业务中找到应用场景与价值。

例如,图计算能力便是针对用户特征、人群画像和社交关系链的,而简单的逻辑回归算法也可以进行用户画像的刻画。神经网络,如 DNN 则对应人群特征挖掘,CNN 用于特征管理等。

蒋杰:价值驱动,拥抱开源,从Angel平台看腾讯大数据打法

Angel 平台支持的图计算体系架构。

蒋杰表示,Angel 平台的作用是一个综合性的机器学习平台,和 TensorFlow、PyTorch 等不在一个维度。事实上,为了满足内部的使用需求,Angel 平台封装了 PyTorch、TensorFlow、Spark 等框架,开发人员可以根据业务需求进行灵活的选择使用。

价值驱动,务实演进

这样看来,似乎 Angel 机器学习平台的特点不明显?恰恰相反,对技术演进非常务实,集中力量应对业务中的需求是 Angel 平台发展中最大的特点。

为什么对新技术的采用如此保守和低调,这正是腾讯在发展 Angel 平台过程中谨慎的态度。据蒋杰介绍,腾讯大数据目前面对的挑战是在业务增长的情况下保证:

  • 成本持续降低;
  • 性能与效率提升,故障率降低;
  • 闲置资源的最大化利用等。

这就需要在很多地方持续对整个体系进行优化,包括数据压缩的比例、网络传输的效率、精细化运营的效果等。这些远远不是简单的在平台上增加新算法,或者提升现有算法准确率就能够实现的。

当然,在 Angel 平台的发展过程中,除了已有的问题外,大数据业务中出现了一些新的问题,这些都对腾讯大数据发展带来了新的挑战。

数据隐私越发重要,Angel 平台如何应对

在采访中,蒋杰博士认为,当前遇到的最大困难就是「数据墙」问题。具体来说,在一个公司内部,各个业务和部门之间都会拥有自己的数据。在数据为王的时代,这些数据无疑是最有价值的资产。

面对强大的数据壁垒,如何进一步提升数据价值而又不触碰数据隐私红线,腾讯大数据考虑了多种方法进行应对。这将是未来 Angel 平台将会引领的重要方向。

用统一的大数据平台打通部门数据壁垒

在腾讯内部,为了减少数据壁垒带来的障碍,腾讯近年来采用了平台组件开源、多团队协同共建的方式。通过打造内部统一的大数据平台体系,让这一平台在各个业务部门中间实现功能复用、从而提升数据开发和应用效率。这样可以弥补因数据壁垒带来的成本损失,整体上降低开发和运营的成本。

例如,腾讯内部的天穹大数据平台是这一思路下的案例。这一平台使用开源共建的方式,让内部业务部门以开源协同的方式参与研发工作,让平台在满足业务需求的同时打通成为统一的底层基础支撑。

联邦学习:让数据计算变得可信

在外部解决数据信任问题也尤为关键。联邦学习因此进入了腾讯的视线。

联邦学习可以被定义为一种新的机器学习算法。由于自身数据的局限性,模型需要更多的数据进行计算,提升其效果。而由于用户数据隐私的问题多个参与方之间直接共享数据不太现实,而联邦学习通过参与方共享数据特征或模型梯度的方式,让所有的参与方在不泄露自身数据的情况下获得效果更佳的模型。

联邦学习无疑是 Angel 平台正在考虑的发展方向。腾讯需要保护用户数据,同时腾讯的合作方如金融机构等,也需要确保数据隐私和安全,因此联邦学习成为未来发展的必然选择。

蒋杰:价值驱动,拥抱开源,从Angel平台看腾讯大数据打法


当然,联邦学习的发展也会有一些困难。如在数据加密后是否会带来数据大小膨胀的问题,这就需要合适的加密算法。此外,在技术之外,能够推动客户和监管方认可联邦学习保护数据安全和隐私的能力,这也需要时间。最终,应用这样的技术和算法需要多少额外的成本和技术投入也需要纳入考量。比如在《欧洲数据保护条例》生效后,腾讯需要根据监管的要求,在业务上进行相应的技术调整,部署额外的数据保护措施。

ABC 融合:通过混合云提供技术服务

另一个发展的趋势便是继续推动 ABC 融合,即人工智能(AI)、大数据(Big Data)和云计算(Cloud)的融合,并采用混合云的方式为业务和合作部门提供服务。在这一体系中,云计算作为基础设施,包括公有云和私有云的融合,保护关键数据的安全。而大数据进行数据收集、处理、分析等,提供计算支持,最后使用人工智能,进一步挖掘数据中的价值。

蒋杰认为,数据壁垒的「墙」是很厚的,需要多种方式共同解决。在联邦学习方面,腾讯会和客户、合作方共同进行联合数据建模。在云计算方面,则通过客户的私有云和腾讯的公有云进行混合部署。同时,腾讯计划在漂移计算等新技术方面进行投入,逐步打破数据壁垒。

面对数据隐私安全带来的新挑战,腾讯无疑已做好了准备。而很多人忽略了的另一个重要的发展思路,则是腾讯对开源的开放态度。从 Angel 平台的开源来看,腾讯大数据在接下来的发展中将会和开源社区结合得更加紧密。

拥抱开源,Angel 平台可见一斑

早在 2017 年,Angel 平台便在 GitHub 上开源。截止目前,Angel 在 GitHub 上已经获得了 5600 Star、1400 Fork,这些数据说明了社区对 Angel 优秀表现的认可。

而腾讯不满足于仅仅只是「公开」这一项目。同年,腾讯将这一项目托管给了 LF AI 基金会。蒋杰表示,这一举措有着对项目深层次的考量。首先,LF AI 基金会对托管的项目有很高的要求(如代码规模、质量等)。将项目托管,说明基金会也对这一项目的进行了认可。

另一方面,基金会托管的项目可以更好地获得社区的关注和使用,并得到基金会本身的监督和促进。相比在 GitHub 上开源后缺乏用户而渐渐无人问津,或因开发者/开发商缺乏后续维护和改进的动力而渐渐死去的项目,通过外部管理的方式能够更好地促进 Angel 的发展,让这一项目暴露在更多使用者前,发现问题并继续改进。

最后,LF AI 基金会对于获准「毕业」的项目也有着严格的标准。通过了考核便获得了开源社区正式的认可,这对于大规模推广 Angel 的使用,提升其能力非常重要。

采访中,蒋杰博士表示,腾讯大数据会继续开源更多的项目给 Linux 基金会和 Apache 基金会等,通过开源的方式让项目和业界标准接轨,促进与技术社区的交流。

除了算法方面,腾讯也披露了其他方面的开源计划,如云计算、边缘计算等领域,甚至包括微信小程序等方面的开源也会在明年有进一步动作。

面对开源所带来的开放和竞争的关系,腾讯则有着自己的思考。蒋杰博士认为,开源社区中,大企业和社区实际上是相互依赖的关系,不存在一家独大的情况。当体量变大、平台变大后,技术才能面对很多实际业务中碰不到、想不到的问题,因此才能更好的进步。

这样的思路,也是腾讯大数据在保持低调务实的同时,积极推进开源的原因吧。

相关推荐