图学习领域风头正劲,百度飞桨PGL加入战团

  • 来源: 互联网   2019-11-22/16:38 访问量:
  • 近日,在「WAVE Summit+」2019 深度学习开发者秋季峰会上,百度对外发布基于飞桨的图学习框架Paddle Graph Learning (PGL)。

    近几年来,深度神经网络的成功推动了人工智能的发展,然而,在实际场景中,有大量的数据是在非欧式空间的,这限制了深度神经网络的应用。而图神经网络在非结构化数据上有着出色的处理能力,使得最近一段时间图神经网络在学界与工业界上大放光彩。

    百度顺应潮流发布的PGL充分利用飞桨独有的Lod Tensor特性,实现了高度并行的图神经网络消息传递机制,在性能上超越了DGL等现有图学习框架13倍。依托于飞桨核心框架以及自研的分布式图引擎,PGL可支持十亿节点百亿边的巨图训练。此外,PGL原生支持异构图Meta Path采样以及Message Passing双模式,预置了13种业界主流图学习算法,方便开发者熟悉和使用图神经网络领域模型。下面我们逐一揭秘PGL的技术特色。

    1. 高效:通用消息聚合性能超越业内主流框架DGL 13倍

    图神经网络模型的独特优势在于充分捕捉数据中的结构信息。PGL采用消息传递范式(Message Passing)构建图神经网络的接口,用户只需要简单地编写send和recv函数就能够轻松的实现一个简单的GCN网络:其中send函数被定义在节点之间的边上,负责将消息从源点发送到目标节点;recv函数则负责将这些消息聚合起来。

    目前,PGL提供两套聚合方式,一套是Scatter-Gather用于解决常见如求和聚合的方式,而另外一套则是基于飞桨Lod Tensor特性实现的并行通用的消息聚合方法。

    如下图左所示,为了适配用户通用聚合函数,其他主流框架如DGL是串行地进行消息聚合,效率较慢;而下图右所示的PGL则将消息队列看作一组变长的序列Lod Tensor,然后利用飞桨的Lod Tensor Layers进行快速并行的消息聚合。

    下表为使用LSTM作为聚合函数下GraphSAGE性能对比,得益于并行的消息聚合能力,PGL的速度能够达到DGL的13倍

    2. 规模:支持十亿节点百亿边的超大规模图训练

    依托于分布式图引擎以及大规模参数服务器Paddle Fleet,PGL可以轻松在MPI集群上搭建分布式超大规模图学习算法。

    如上图所示,超大规模图会以切分形式在分布式图引擎中存储,此外还提供诸如图信息访问、子图采样、游走等操作算子。在此之上则是PGL构建的分布式图训练模块,该模块会与参数服务器Paddle Fleet进行联动训练,满足用户数十亿节点Embedding学习需求。

    3. 易用:轻松搭建异构图学习算法

    在工业应用中,许多的图网络是异构。PGL针对异构图包含多种节点类型和多种边类型的特点进行建模,旨在为用户提供方便易用的异构图框架,让用户可以快速构建自定义的异构图模型。目前,PGL支持异构图的Meta Path采样以及异构图的Message Passing机制。

    Meta Path采样

    上图展示了“用户与商品”的异构图——节点和边存在不同的类型。PGL为用户提供了简单易用的元路径采样接口来处理这样的异构图,如指定路径为UPU(user-product-user),PGL即可采样出类似图中右边的采样序列。

    Message Passing消息传递

    异构图存在不同类型的节点和边,为了融入Message Passing机制,PGL可以在异构图中分别对不同类型的边进行消息传递。最后将同一个节点在不同边类型的表示融合在一起。下图展示了PGL异构图Message Passing的过程。

    4. 丰富:预置13种业界主流图学习模型

    为了便于用户熟悉和使用图神经网络领域的模型,PGL预置了13种主流的图学习模型。这些模型涵盖了同构与异构、图表示学习与图神经网络、分布式训练等样例,可以赋能推荐系统、知识图谱、用户画像、金融风控、智能地图等多个场景。用户可以方便地根据自己的需要选择不同的样例进行复现、修改、上线等。

    综合来看,图学习框架PGL依托于飞桨,在高效、规模、易用、丰富等方面具有独特优势。基于此,PGL已在百度内部与外部企业落地多个项目,赋能各行各业,为人工智能产业化大生产贡献力量。

    ---------------------------------------------------------

    免责声明:

    1.本文援引自互联网,旨在传递更多网络信息,仅代表作者本人观点,与本网站无关。

    2.本文仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。


    赞(0)

    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多