写点什么

“AI 新贵”图神经网络算法及平台在阿里的大规模实践

  • 2019-07-08
  • 本文字数:4243 字

    阅读完需:约 14 分钟

“AI新贵”图神经网络算法及平台在阿里的大规模实践

图神经网络是 2019 年当之无愧的“AI 新贵”,但由于图神经网络训练固有的复杂性,支持高效、可扩展的并行计算非常困难,GNN 平台目前也成为了各大科技公司重点关注的领域。


今年 3 月,阿里巴巴在阿里云峰会北京站上发布了大规模图神经网络平台 AliGraph,InfoQ 第一时间对 AliGraph 的论文进行了详细解读,引起业界广泛关注。


近日,InfoQ 有幸采访到了 AliGraph 项目的作者之一、阿里达摩院智能计算实验室的杨红霞博士,进一步探讨了 AliGraph 的架构设计原则、AliGraph 项目在阿里巴巴的落地应用和图神经网络目前面临的挑战。


“结合了深度学习的图计算,以及增加深度学习可解释性的生成模型 Scalable Bayesian DL 会是未来 3 到 5 年的重点方向。此外,更加重要的是,算法模型的结果需要和使用者产生互动。例如,只推荐商品是很难真正改变消费者认知,但如果通过 embedding 结果的聚合,抽象地学习用户群体的兴趣点,反映到对应的商品,并通过文本、图片和视频生成等显性的表达,与消费者产生互动,就能够取得比较成功的深远影响。”

AliGraph 因什么而生?

AliGraph 平台从 2018 年 6 月份左右开始构建,它想要解决的问题都源自阿里自身在海量数据业务中遇到的挑战,其中对数据和模型挑战最大的部门就是搜索推荐和广告部门,AliGraph 有相当多需求是从搜索推荐和广告业务中剥离出来的痛点。但同时,AliGraph 也是跨部门合作的成果,其开发人员来自达摩院智能计算、计算平台 PAI 团队等不同团队,成果也服务于阿里巴巴集团的许多部门,如搜索推荐、广告、安全部、大文娱等。


绝大多数与现实商业场景相关的图数据表现出四个特点,即大规模、异构、属性化和动态。例如,现在的电商的图通常包含数十亿个顶点和边,这些顶点和边具有各种类型和丰富的属性,并且会随着时间的推移快速演变。这些特性为嵌入和表征图数据带来了巨大的挑战,可以总结为以下四个问题:


  1. 如何提高大规模图上 GNN 的时间和空间效率?

  2. 如何将异构信息优雅地集成到一个统一的嵌入结果中?

  3. 如何统一保存和定义拓扑结构信息和非结构属性信息?

  4. 如何设计动态的有效增量 GNN 方法?


原先已有的 GNN 方法大多只能解决上述问题中的 1-2 项,然而,现实世界中的商业数据通常面临更多的挑战,AliGraph 正是为了缓解这种情况而生。它是一个全面而系统的 GNN 解决方案,提供了一套对应的系统和算法来解决更实际的问题,可以更好地支持各种 GNN 方法和应用。


AliGraph 的系统组件由存储层、采样层和操作层组成,其中存储层可以存储大规模的原始数据以满足高级操作和算法的快速数据访问要求;采样层优化了 GNN 方法中的关键采样操作;操作层提供了 GNN 算法中两个常用的应用操作的优化实现,可以加速计算过程。另外,AliGraph 系统提供了一个灵活的接口来设计 GNN 算法,现有的 GNN 方法都可以很容易地在 AliGraph 上实现。


据介绍,AliGraph 平台的架构设计主要遵循两条核心原则:一是算法和系统紧密结合,首先从业务上剥离出了很多有挑战性的问题,研发了一些非常重要的方向的基础模型,同时对系统提出需求,进行平台的研发;二是从阿里的实际业务出发,更全面地考虑算法模型问题。


目前 AliGraph 已经在阿里巴巴的业务系统中实际部署,同时也已经上线阿里 PAI 平台,集团内部和外部用户均能基于 AliGraph 定制自己的算法模型解决问题。

AliGraph 在阿里巴巴的落地应用

淘宝电商的商品推荐场景是目前 AliGraph 在实际业务中应用的一个典型案例。其中图神经网络主要应用于用户兴趣点的挖掘和聚合、兴趣点的表示和推荐的可解释性两大方面。AliGraph 的开发团队结合图神经网络和文本自动生成在推荐的业务云主题下做了初步尝试,不仅可以进行用户兴趣点的挖掘和推理,而且增加了模型的可解释性,在实际业务中也取得了较为显著的提升,相关指标如发现性、疲劳度、每千次展示支付等,分别增加5%-90%不等


杨红霞表示,下一代推荐系统不会再是单品推荐这样的形式,而一定是通过各种内容(文本、图片、视频等)对消费者进行全方位影响,真正做到理解和影响消费者认知,云主题就是搜索推荐产品在打造的这样一个场景。在通过图嵌入对用户的兴趣进行聚合之后,形成个性化群体的会场,从单品推荐向群体会场、培育心智升级,通过多种形式影响消费者的心智,包括单品推荐、推荐理由、攻略、知识卡片、基于场景广告嵌入、视频推荐等。


机器学习的可解释性正变得越来越重要,如果能使机器学习算法做到可解释,就可以帮助决策者决定是否信任机器学习的结果。在推荐这个场景下,所谓可解释的推荐就是在给出推荐结果的同时,给出对结果的支持论据(即解释)。最常见的一种流程是后处理(Post-hoc),后处理的方法是在推荐结果已经给出后再进行解释,解释内容不受推荐系统的影响,即使换了一个推荐系统,只要给定同一个用户和物品,解释都是一样的。后处理方法主要研究解释文本的生成,分为三种方法:基于规则;基于检索;基于生成式模型。基于规则和基于检索的方法在生成解释文本时,都需要模板,可能会让用户觉得千篇一律、缺乏惊喜。研发团队通过卖家提供的文案和被展示商品的点击率,利用改进的序列生成技术自动写出文本,从数据中不断学习,进一步提高了解释的多样性和说服力。


对于 GNN 模型的选择,经过大量的线上线下实验,研发团队最终选择了 GraphSage,并给予复杂场景的需求做了通用的延伸,包括 multi-edge、sampling、heterogeneous、multi-modal 等模块。



最终 GNN 模型应用于手淘全量月活用户和精品池,数据规模超数十亿节点、超百亿边,是阿里集团目前最大规模的 heterogeneous attributed graph embedding 模型。基于学习到的 user/item embedding 进行聚合,可以方便地识别用户的兴趣点并召回相关商品。



AliGraph 目前还在如下业务指标实现了一些突破:


  • 百亿级别分钟级别构图完成

  • 200 个节点每秒钟上亿点采样性能

  • Semi-GCN 性能大幅提升,2 跳的性能提升 6 倍,3 跳性能提升 50 倍

  • 基于 SparseKernel 的 GCN 算法无损性能提升 3 倍

  • 百亿边(200worker, 20ps)规模,训练性能无损失,节省 SQL 时间 3-10 小时,节省存储 300T 左右

  • 模型指标,如发现性、疲劳度、每千次展示支付等,增加 5%-90%不等

图神经网络的前景和挑战

杨红霞认为,可以将人工智能 1.0 约等于深度学习模型。这几年深度学习确实在很多领域都得到了非常显著的成果,但它也存在比较大的局限性,其中最广受诟病的两大瓶颈分别是可推理和可解释性。这几年学术界和工业界都在探索新的方向,最近也有一些学者,如谷歌的 DeepMind 和清华大学的张钹院士在主推所谓的人工智能 2.0。这至少说明了深度学习之后,我们还应该做一些其他的尝试。而现在业界普遍认为,图神经网络结合了图计算和深度学习,可能恰好可以弥补前面提到的深度学习无法解决的两个缺陷。


在工业界,尤其是拥有大量数据的 IT 公司,一直以来可能更关心的是做预测,因为有流量红利在,只要数据流量足够大,算法的预测效果就不会太差。但现在已经有很多平台参与到流量竞争中,比如无数 APP 都在分割消费者的有效时间,消费者的流量红利已经比较有限了。如果在这种情况下,企业还是只是做预测这件事情,是远远不够的。所以越来越多人开始尝试做更多因果的分析和推理,比如在淘宝推荐商品的时候,推理用户为什么需要买这件商品,然后把推荐理由和商品同时推给用户,从而优化用户的使用体验。这是未来算法发展的重要方向之一。


图神经网络在预测和因果推理上都有很大的应用潜力,但不局限于此。同时,因果推理也可以用其他方式去做,比如统计方法会用得比较多,但统计会有比较大的假设的要求。那么在大数据且假设不能满足的前提下,我们到底该怎么做,GNN 是其中一个解决方案,但要真正在因果推理上落地,还有比较多的工作需要做。


但总体而言,图神经网络的表达能力非常强,只要是可以应用深度学习模型的场景,图神经网络就能派上用场。


当然,正如深度学习非常依赖海量数据,GNN 同样需要大量数据。GNN 本身算法复杂度更高,对数据要求也更高,不过现在业界并不缺数据。当数据非常多且类型也各不相同的时候,算法模型的表达能力是否可以匹配上如此复杂的数据,才是当下最有挑战的一件事情。


当前构建大规模图神经网络面临的比较大的挑战,杨红霞认为主要来自对系统的高要求。在早前的小数据时代,算法只要放到单机上就可以运行,后来大数据时代来临之后,涌现了很多分布式算法。但图对系统的要求不太一样,原来的分布式算法模型会将样本做随机切分,然后 send 到不同的 worker 中进行分布式算法的运算,而图不适合做简单的随机切分,因为这样可能会把相邻节点 send 到另外一个 worker 里。


对于 GNN 来说,对相邻节点的信息做聚合是非常重要且必不可少的一步,我们需要把相邻节点的信息聚合到目标节点,进行信息的增量更新,如果做了随机切分,可能就会把这些相邻节点散布到其他的 worker,导致 IO 通信量非常高。数据量本身根本不是问题,现在阿里解决的经常是拥有超大数据量的场景问题,可能图中包含近百亿节点、超千亿条边,如果采用随机切分,系统根本无法处理如此巨大的 IO 消耗,这是一个很大的挑战。正是由于图神经网络对于系统的要求非常高,近来谷歌、亚马逊、微软都在推自己的图神经网络相关的系统。


除此之外,构建大规模图神经网络的另一个挑战来自算法。如何将业务场景中的问题剥离出来,针对性地设计对应算法的解法,然后跟系统结合,都不是简单的事情。


目前业界已经推出的图神经网络平台上算法模型仍比较基础,AliGraph 在异构图、属性信息和超大规模图方面已经有了一些成果,但动态图、时序图方面依然在探索中。因为动态图和时序数据计算复杂度非常高,就会导致计算耗时长,但工业界对于时延的要求又很高,二者难兼备,所以目前动态图的 GNN 还没有特别好的企业级落地案例。


在杨红霞看来,现在的图神经网络有点像 4 年前的深度学习,已经开始发挥作用并得到了越来越多关注,其未来的潜力也已经得到肯定。但只有将计算复杂度降低到一定程度之后,才可能在工业界得到更好的推广


据了解,AliGraph 现在依然在紧张的开发过程中,开发团队正在进行各方面优化,包括性能和算法的优化、稀疏内核的优化和硬件层面的优化,上层 API 的开发也在进行中。杨红霞向 AI 前线透露,经过阿里实际业务场景的锤炼之后,AliGraph 计划在今年的 12 月份对外开源

采访嘉宾介绍

杨红霞,达摩院智能计算实验室资深算法专家,杜克大学博士。拥有顶级论文 40 余篇。曾任 IBM Watson 研究员、Yahoo!主任数据科学家等职。目前致力于研发新一代结合超大规模知识图谱和图计算的推理系统。



2019-07-08 11:5510810
用户头像
蔡芳芳 InfoQ主编

发布了 798 篇内容, 共 546.0 次阅读, 收获喜欢 2787 次。

关注

评论

发布
暂无评论
发现更多内容

不可思议!阿里大佬熬夜9天整理出749的HotSpot VM源码笔记

Java 架构 面试 程序人生 编程语言

看一遍就理解:MVCC原理详解

Java MySQL 架构 面试 后端

细节理解!阿里内部Java高并发系统设计全彩手册曝光!霸榜GitHub

进击的王小二

Java 架构 高并发 Java性能调优

高并发中的 限流、熔断、降级、预热、背压!

进击的王小二

高并发 java

直播回顾 | 云和恩墨范计杰:Oracle DBA的SQL编写技能提升宝典(含SQL资源)

墨天轮

oracle sql 函数

第 13 章 -《Linux 一学就会》- Linux文件系统结构

学神来啦

Linux 运维 linux学习

什么是激光雷达的“发动机技术”?一文讲透行业技术壁垒 (一)

SOA开发者

什么是激光雷达的“发动机技术”?一文讲透行业技术壁垒(二)

SOA开发者

模块八:设计消息队列存储消息数据的MYSQL表格

kk

架构训练营

Vue进阶(幺贰捌):Vue插槽:slot、slot-scope与指令v-slot应用讲解

No Silver Bullet

Vue 插槽 10月月更

系统召回太慢?上 Milvus × PaddleRec 双剑合璧大法!

Zilliz

数据库 推荐算法 召回 向量检索

211本+985硕+计算机专业投面百度,坐等一周迎来三面,已拿offer

Java 程序员 架构 编程语言

语音翻译器 Tech Support

凌天一击

“云智一体”系列白皮书智能视频篇来了!

百度大脑

人工智能

爱奇艺数据质量监控的探索和实践

爱奇艺技术产品团队

监控 数据治理 pingback

9. python 入门教程快速复习,序列,数值类型,字符串方法,列表、集合、字典方法,文件操作,解析式

梦想橡皮擦

10月月更

想了解Xtrabackup备份原理和常见问题分析,看这篇就够了

华为云开发者联盟

MySQL 数据库 华为云 备份 XtraBackup

聊一聊物联网嵌入式芯片的内容结构

华为云开发者联盟

物联网 内存 存储 嵌入式 芯片

上汽零束汽车智能应用创意大赛,初赛作品评选将启动!

SOA开发者平台

华为云GaussDB(for openGauss) 同城双集群高可用方案正式发布

华为云数据库小助手

GaussDB GaussDB(for openGauss) 华为云数据库

盘点后端领域的点点滴滴 | 引航计划|后端

xcbeyond

后端 引航计划 内容合集 技术专题合集

Superior Scheduler:带你了解FusionInsight MRS的超级调度器

华为云开发者联盟

大数据 hadoop 开源 调度器 FusionInsight MRS

OBServer启动恢复解析

OceanBase 数据库

oceanbase OceanBase 开源 OceanBase 数据库大赛

在GitHub标星86k+霸榜的某宝Redis核心原理深度实践PDF限时开源!

Java 架构 面试 程序人生 编程语言

汽车域控制器分类(下):自动驾驶域控制器、车身域控制器

SOA开发者

华为技术官珍藏版:SpringBoot全优笔记,面面俱到,实在太全面了

Java 架构 面试 微服务 后端

架构实战营 毕业设计项目

蔸蔸

上汽零束汽车智能应用创意大赛,初赛作品评选将启动!

SOA开发者

汽车域控制器(上):动力域控制器、底盘域控制器、智能座舱域控制器

SOA开发者

深度解读 | 《2021年中国企业级 SaaS 行业研究报告》趋势剖析

万事ONES

SaaS 研发管理工具 ONES

腾讯面试聊到的几种存储虚拟化

hanaper

“AI新贵”图神经网络算法及平台在阿里的大规模实践_AI&大模型_蔡芳芳_InfoQ精选文章