前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >腾讯开源全栈机器学习平台 Angel 3.0,支持三大类型图计算算法

腾讯开源全栈机器学习平台 Angel 3.0,支持三大类型图计算算法

作者头像
新智元
发布2019-10-23 22:24:09
2K0
发布2019-10-23 22:24:09
举报
文章被收录于专栏:新智元新智元

AI WORLD 2019 世界人工智能峰会精彩重放!

10 月 18 日,2019 中关村论坛平行论坛 ——AI WORLD 2019 世界人工智能峰会在北京启幕。新智元杨静、科大讯飞胡郁、微软王永东、华为王成录、英特尔宋继强、旷视及智源学者孙剑、滴滴叶杰平、AWS 张峥、依图颜水成、地平线黄畅、autowise.ai 黄超等重磅嘉宾中关村论剑,重启充满创新活力的 AI 未来。峰会现场,新智元揭晓 AI Era 创新大奖,并重磅发布 AI 开放创新平台和献礼新书《智周万物:人工智能改变中国》。回放链接:

【腾讯科技】

客户端:https://view.inews.qq.com/a/TEC2019101600718500

PC 端:http://v.qq.com/live/p/topic/74606/preview.html

【海淀融媒】

https://m.toutiaoimg.cn/i6748195040323062540

【新浪科技】

http://video.sina.com.cn/l/p/1728577.html 新智元报道

来源:腾讯大数据团队

【新智元导读】腾讯开源自研机器学习框架Angel,在稀疏数据高维模型的训练上具有独特优势,擅长推荐模型和图网络模型相关领域。

腾讯大数据推动了腾讯从Oracle数据库到自研大数据平台的迁移, 如今已能实现秒级的采集、监控和报表;开源自研机器学习框架Angel,它由腾讯与北京大学联合研发,兼顾了工业界的高可用性和学术界的创新性。

作为面向机器学习的第三代高性能计算平台,腾讯Angel在稀疏数据高维模型的训练上具有独特优势,擅长推荐模型和图网络模型相关领域。当前业界主流的大规模图计算系统主要有Facebook的Big Graph、Power graph、Data bricks的 Spark GraphX等,但这些系统并不都支持图挖掘、图表示学习、图神经网络的三大类型算法。

近日,腾讯大数据团队分享了Angel在图计算领域应用。

Angel:https://github.com/Angel-ML/angel

Angel专注图计算场景

图(Graph)是一个表达能力非常强的结构, 几乎无处不在。图计算就是研究在大规模图数据下,如何高效计算,存储和管理图数据。如微信、QQ是社交网络的图,支付是红包网络、面对面网络、转帐网络等支付网络的图。图计算在QQ上的典型应用则是好友推荐,依据共同好友个数进行判断,共同好友越多,更有可能成为好友。

目前业界的大规模图计算系统主要有Facebook的Big Graph, Power graph, Data bricks的 Spark GraphX, Gemini, 以及阿里的Euler,但这些系统并不都支持三大类型算法,例如图挖掘、图表示学习、图神经网络。

在此行业背景之下,专注于复杂图计算场景的腾讯Angel应运而生。Angel是腾讯开源的大规模分布式机器学习平台,专注于稀疏数据高维模型的训练。从性能上来看,Angel优于现有图计算系统,能够支持十亿级节点、千亿级边的传统图挖掘算法,以及百亿边的图神经网络算法需求。Angel可运行于多任务集群以及公有云环境,具备高效容错恢复机制,能够进行端到端的训练,新算法容易支持,同时,Angel能够支持图挖掘、图表示、图神经网络算法,具备图学习的能力。

Angel的PS是针对高维稀疏模型设计的, 而大图是非常高维、有多达十亿的节点,也是稀疏的, 因此PS架构也适合处理图数据。图算法有多种类型,如图挖掘算法、图表示学习、图神经网络。由于Angel的PS有自定义接口, 可以灵活地应对这几类算法,整个平台不需要改动,只要实现所需接口即可。关于可靠性问题,Angel从一开始就是针对共享集群、公有云环境设计的, 并与Spark的结合. Spark也具有很强的稳定性。易用性主要指与上下游是否完整配套。Spark On Angel可以与大数据处理结合,PyTorch On Angel可以跟深度学习结合,将把大数据计算、深度学习统一起来,用户不用借助第三方平台就能完成整个流程, 易用性好。

Angel可以运行在Yarn/Kubernetes环境上,它上面现在支持三类算法

  • 图挖掘: PageRank、Kcore、Closeness,共同好友、三角结构、社团发现、其他;
  • 图神经网络: GCN、GraphSage、DGI等神经网络算法;
  • 图表示学习: LINE、Node2Vec算法。

Angel的架构,最上面是一个参数服务器,下面分别是PyTorch on Angel和Spark on Angel。图计算前期有繁锁的预处理,用户偏好Spark或者GraphX。Angel将PS和Spark结合,整合Spark大数据能力和PS服务器能力,统一了图计算流程。PyTorch on Angel是为图神经网络而设计的,运行在Spark on Angel之上。图神经网络最近发展迅速, 但大规模的图神经网络会遇到大数据问题,也会遇到机器学习问题. 将Angel和PyTorch结合起来,就可以同时应对大数据与机器学习问题. 右边是PyTorch on Angel的架构。上面是所支持的算法,包括GCN、GraphSage、R-GCN和一些无监督算法。

从平台的易用性角度考虑。图计算任务的执行流程复杂,通常包括数据预处理, 如去除重复边、过滤异常点,图划分等。在某些场景下还会计算节点的特征、计算结点或边的权重/测度,如PageRank。另一些场景需要对图做拼接、生成等。最后才是图神经网络的训练。在做图神经网络训练时,训练只是其中很小的一部分,需要在上下游花费比较多的精力。其他图计算引擎,只是关心图计算这一个核心步骤; 而Angel将整个流程整合在一套系统里,一个任务把这个事情都做完,避免这些任务之间衔接的开销,也不用中间结果落地。这是Angel跟大数据生态、深度学习生态结合带来的好处。

从可靠性的角度,图算法对错误的容忍度较低,不应该发生错误。但因为节点多,维度高, 大规模图计算容错成本很高。Spark有一套容错机制,任务如果挂掉,可以重起。Angel PS也有一套容错机制,即写checkpoint。在图算法里,不同的数据结构的使用或访问方式不一样,有些数据是不变的, 如图结构, 但有些数据会改变, 比如模型、消息。对于不同的数据,Angel采取不同的容错方法。对于图神经网络与图表示学习,可以稍微的容忍它出现一些错误。但图挖掘算法,可能错误容忍度比较低,需要一些高的容错。

Angel 中的图计算算法

图算法比较多,先将这些算法分类,每一类采取不同的优化方式去实现和优化。

第一类是三角结构类,数三角形。这类算法是暴力算法, 没有捷径可走。例如共同好友就是三角结构。基于三角结构可以实现一系列算法, 如Cluster Rank, Clustering coefficient, Ego Network.

第二类算法是连通分量,有WCC和SCC。这类算法核心的思想是要做图的折叠或者图的压缩。这类算法有一定的捷径可走,发现连通结点后,就可以进行合并,迭代时图在会不断变小,就可以加快迭代速度。

第三类算法是节点的排序。比如PageRank、KCore、Closeness,这类算法的迭代轮数较多,可能好几百轮。有一些方法加速它,主要有两种,一种是有没有办法让它的迭代变得少一点,另一种是有没有办法让它每一轮迭代越来越快。

第四类算法是图表示学习的算法, 也是没有捷径可走, 主要考虑一些图的划分策略。像GNN,也归为一类

最后一类算法是图神经网络。图有很多节点,每个节点都有自己的特征。经过一层层的图卷积,每个节点上的特征就输出一个表示,再经过一层图卷积,又输出另外一层表示,不断的改变图每一个节点的表示,最后根据任务类型需求,对每一个节点的表示把它都加起来,再做softmax,对全图做分类。对任何两个节点,算他们俩俩相交,计算它们的概率,预测它们俩是不是有边。它的核心是一个图,一层卷积,两层卷积,然后输出。图神经网络的问题是图数据规模比较大,需要做深度学习。

Angel 图计算性能

效果对比,跟GraphX做了对比,也与其他系统做过对比。

PageRank性能是GraphX的8倍左右

(数据集:8亿节点120亿网络;机器配置:E5-2680v4*2/16G*16/4T*12/10GE*2)

图神经网络/图表示学习性能对比:

(数据集:8亿节点120亿网络;机器配置:E5-2680v4*2/16G*16/4T*12/10GE*2)

雅虎有一篇论文,按照论文实现了一遍,性能不好,优化后性能大概提升了5-6倍。图神经网络,用Angel,跟阿里的Euler系统对比,在比较小的网络,(1亿边),性能差距还是比较大的,如果在100亿的图,因为它消耗的资源比较多,就没有跑出来,Angel每一轮都跑出来了。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 新智元 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档