深度学习之上,图神经网络(GNN )崛起

简介: 由于深度学习在可推理和可解释性方面存在比较大的局限性,结合了图计算和深度学习的图神经网络(GNNs)成为近期学术界和工业界研究热度颇高的新方向之一。业界普遍认为,GNN 恰好可以弥补前面提到的深度学习无法解决的两个缺陷。近一年 GNN 在越来越多应用场景上取得了成功,但它也仍面临着许多挑战。

由于深度学习在可推理和可解释性方面存在比较大的局限性,结合了图计算和深度学习的图神经网络(GNNs)成为近期学术界和工业界研究热度颇高的新方向之一。业界普遍认为,GNN 恰好可以弥补前面提到的深度学习无法解决的两个缺陷。近一年 GNN 在越来越多应用场景上取得了成功,但它也仍面临着许多挑战。

蚂蚁金服在今年的数据挖掘研究领域顶级年会 KDD 2019 上召开了以“图神经网络研究及实际应用”为主题的研讨会。InfoQ记者有幸采访到了蚂蚁金服人工智能部研究员宋乐,聊聊深度学习和 GNN 在大型工业级场景的应用和实践、目前面临的难点挑战,以及未来技术前进的可能方向。

1.jpg
宋乐老师在 KDD 2019

GNN已成“AI新贵”

除了传统的深度学习方法,图神经网络(GNN)在近两年也是公认的“AI 新贵”。由于图结构的强大表现力,用机器学习 / 深度学习方法分析图的研究越来越受重视。而图神经网络(GNN)由于较好的性能和可解释性,已经成为一种广泛应用的图分析方法,更有不少人将它看作“深度学习的新一代技术”。近一年来,学界和工业界陆续推出了 GNN 的相关框架和工具,进一步促进了这一领域的蓬勃发展。

GNN 提供了图表征学习(Graph representation learning)或图嵌入技术(Graph embedding)的框架,可以用于各种图数据上的监督,半监督及强化学习。GNN将图上的元素,如节点,连接或者子图表达成为一个向量,而不同元素所对应的向量之间的距离保存了它们在原图上的相似关系。这样将拓扑关系表达为特征空间中的向量的做法,本质上是一种基于拓扑信息的特征提取过程,其结果是沟通了传统的图分析和各种传统机器学习或数据挖掘方法,在推荐系统、知识图谱构建及推理等领域都有许多应用。比如说,可以通过引入了图卷积操作构造了一个适用于图数据的半监督学习框架,用于提取更精确的特征表达或直接进行分类操作,并可以结合图像分割、视频理解、交通预测等许多领域开始探索其应用价值。无论对于图分析还是深度学习,GNN 都是一个极有价值的的演化。

GNN 的出现解决了传统深度学习方法难以应用到非规则形态数据上的痛点,大大扩展了神经网络的应用空间,并在一些问题上改进了模型的可解释性。对于许多建立在非规则形态数据基础之上的业务场景,诸如推荐、消歧、反欺诈等,GNN 都有极大的应用潜力。以蚂蚁金服为例,GNN 已经广泛部署于普惠金融业务的推荐和风控中。

宋乐还列举了两个比较有趣的新应用:

一个是 GNN 在知识图谱上推理的应用。知识图谱是蚂蚁金服非常重要的研发方向之一,借助知识图谱可以把中国所有注册企业都联系起来,图谱里每个节点可能就是一个注册的商家,这个节点数量可能会达到几千万。这些商家之间可能有一些是供应商关系,有一些是同行竞争对手的关系,有一些可能是存在法律诉讼的关系。如果想根据这个图来做一些预测和推测,用于普惠金融业务的推荐和风控,就可以借助 GNN。

另一个是动态图的应用。本质上,所有金融交易问题都是动态的,谁在什么时间买了什么东西,都是有一个对应的时间戳的,随着新的交易发生、新的账号产生,整个图应该是在不断变化的。如何把时间和图的结构一起考虑进去做表征,这个也是比较有挑战性的前沿问题。目前蚂蚁金服正在贷款准入模型中尝试应用动态图。

除此之外,据宋乐保守估计,GNN 目前至少已在阿里巴巴数十个业务场景落地。不过这只是 GNN 发展乐观的一面。

从业界整体落地情况来看,GNN 仍然处于发展初期。从 2018 年 10 月,由 DeepMind、谷歌大脑、麻省理工等近 30 名学者联名在 ArXiv 上传的论文《Relational inductive biases, deep learning, and graph networks》将 GNN 相关工作推到一个新的高度以来,GNN 火热发展还未到一年,很多本质问题尚未突破。与工业级深度学习应用面临的问题类似,GNN 要真正做到在工业界大规模落地,在底层系统架构方面仍需要做大量工作。

如何大规模落地 GNN 仍面临挑战

在宋乐看来,目前 GNN 在工业界大规模落地面临的挑战主要在于大规模图网络的训练和线上更新预测两方面。未来互联网公司只要涉及 GNN 相关应用工作,几乎都逃不开大规模图网络。

首先,工业级业务场景,尤其是互联网公司的业务场景,图网络规模通常都很大,至少包含亿级,甚至是十亿级、百亿级的图节点和边。要计算这么大规模的图神经网络,通常一台机器是无法达到想要的效果的,这时就需要一个专门的分布式图计算平台。如果没有一个平台能够支撑 GNN 所需的海量计算,就很难把 GNN 做好。但目前就业界来说,GNN 平台的进展仍然比较慢。还没有哪个企业能够推出一个足够好的开源 GNN 平台,并且能自信地表示可以很好地支持亿级节点的图网络。

在对GNN 模型进行训练时,算法需要与分布式图存储平台进行高效交互,这也是非常有挑战性的一项工作。在模型训练时,算法需要不断随机查询节点、节点的邻居和邻居的邻居,取出数据放到内存中做深度学习模型的前向 Inference 和后向的回传,这在大规模图上其实是很难做好的。对于 GNN 平台来说,做深度学习以及和数据库打交道这两个环节常常是导致速度慢最大的瓶颈。在过去两年,蚂蚁金服在分布式图存储这个方向上做了很多努力,目前已经开发出了一个高效的分布式图存储平台,以及可以跟这个图存储平台比较高效地交互的图训练平台。从数据上看,原来需要几天时间的亿级图网络训练已经可以缩短到一个小时以内。

大规模图神经网络在线上的预测也是难点之一。GNN 的 Embedding 并非实时的,以金融交易场景为例,每次出现一笔新的交易,图网络就会多一条边,图就会发生变化,如果想做好实时预测,就需要用最新的边根据这个 GNN 的参数,算出它的表征来进行预测。但是通常在线上环境中,要在非常短的响应时间内构一个图,把 GNN 计算好非常困难,特别是在交易量很大的情况下,通常都存在一定的滞后。如何让GNN 能够在线上高效地直接做这个运算,这个挑战还没有完全解决,需要和底层的系统架构做一些合作。

宋乐坦言,即使没有 GNN,图计算本身在工业界就是一个比较困难的问题。因为图和图像、文本有所不同,图的每个节点连接的邻居个数可能不一样、节点类型不一样、边的类型不一样,就制造了很多不规则的运算,每个节点需要运算的程度不一样。而计算机特别适合规则运算,却天生不适合不规则运算,图的计算就属于不规则运算,以前传统的图算法也有各种各样的研究,但都不能很好地解决问题,再加上 GNN 引入了深度学习这一层,导致复杂度陡增,难度就更大了。因此,如何在很短的时间内得到 GNN 的训练结果和预测结果,都存在很大的挑战。如果这一问题能够得到解决,使 GNN 的训练和预测都做到足够快,那么算法工程师在建模的时候,就可以很快地尝试 GNN 的效果以及各种不同网络结构下 GNN 的效果,进一步修改提高 GNN 的结果。

不管在学术界还是工业界,目前这都还是一个比较前沿的问题,同时这也是当前 GNN 领域的瓶颈之一。虽然 Google、Facebook 等业内大公司都在推动 GNN 平台的开发工作,但目前还没有一个能够真正做好大规模分布式图网络计算的主流开源平台。

相关文章
|
9天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)及其应用
【9月更文挑战第24天】本文将深入探讨深度学习中的一种重要模型——卷积神经网络(CNN)。我们将通过简单的代码示例,了解CNN的工作原理和应用场景。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的信息。
29 1
|
9天前
|
机器学习/深度学习 人工智能 算法
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
文本分类识别系统。本系统使用Python作为主要开发语言,首先收集了10种中文文本数据集("体育类", "财经类", "房产类", "家居类", "教育类", "科技类", "时尚类", "时政类", "游戏类", "娱乐类"),然后基于TensorFlow搭建CNN卷积神经网络算法模型。通过对数据集进行多轮迭代训练,最后得到一个识别精度较高的模型,并保存为本地的h5格式。然后使用Django开发Web网页端操作界面,实现用户上传一段文本识别其所属的类别。
22 1
【新闻文本分类识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
|
1天前
|
存储 安全 网络安全
探索未来网络:量子互联网的崛起
本文旨在探讨量子互联网这一新兴技术的概念、原理以及其对未来通信和网络安全的影响。通过介绍量子纠缠、量子叠加等核心概念,分析量子互联网相较于传统互联网的优势,如更高的安全性和传输效率。同时,讨论当前量子互联网的技术挑战及潜在解决方案,以期为相关领域的研究和实践提供参考。
|
2天前
|
机器学习/深度学习 人工智能 算法框架/工具
深度学习中的卷积神经网络(CNN)及其在图像识别中的应用
【9月更文挑战第31天】本文旨在通过浅显易懂的语言和直观的比喻,为初学者揭开深度学习中卷积神经网络(CNN)的神秘面纱。我们将从CNN的基本原理出发,逐步深入到其在图像识别领域的实际应用,并通过一个简单的代码示例,展示如何利用CNN进行图像分类。无论你是编程新手还是深度学习的初学者,这篇文章都将为你打开一扇通往人工智能世界的大门。
|
4天前
|
机器学习/深度学习 人工智能 算法
深度学习中的对抗性生成网络
本文将深入探讨深度学习中的对抗性生成网络,通过通俗易懂的语言解释其工作原理及应用。我们将从基本原理入手,逐步解析对抗性生成网络的组成部分和训练过程,并结合具体实例展示其在图像生成和风格转换等领域的应用。同时,文章也将讨论在实际应用中可能面临的挑战及未来发展方向。
|
6天前
|
机器学习/深度学习 数据采集 网络安全
使用Python实现深度学习模型:智能网络安全威胁检测
使用Python实现深度学习模型:智能网络安全威胁检测
26 5
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN)入门与实践
【8月更文挑战第62天】本文以浅显易懂的方式介绍了深度学习领域中的核心技术之一——卷积神经网络(CNN)。文章通过生动的比喻和直观的图示,逐步揭示了CNN的工作原理和应用场景。同时,结合具体的代码示例,引导读者从零开始构建一个简单的CNN模型,实现对图像数据的分类任务。无论你是深度学习的初学者还是希望巩固理解的开发者,这篇文章都将为你打开一扇通往深度学习世界的大门。
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习的奥秘:探索神经网络背后的原理与实践
【9月更文挑战第29天】本文将带你深入理解深度学习的核心概念,从基础理论到实际应用,逐步揭示其神秘面纱。我们将探讨神经网络的工作原理,并通过实际代码示例,展示如何构建和训练一个简单的深度学习模型。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供宝贵的知识和技能。
13 2
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习与神经网络:探索复杂数据的表示
【9月更文挑战第26天】深度学习作为人工智能领域的明珠,通过神经网络自动从大数据中提取高级特征,实现分类、回归等任务。本文介绍深度学习的基础、张量表示、非线性变换、反向传播及梯度下降算法,并探讨其在计算机视觉、自然语言处理等领域的应用与挑战。未来,深度学习将更加智能化,揭示数据背后的奥秘。
|
9天前
|
机器学习/深度学习 人工智能 算法
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台。果蔬识别系统,本系统使用Python作为主要开发语言,通过收集了12种常见的水果和蔬菜('土豆', '圣女果', '大白菜', '大葱', '梨', '胡萝卜', '芒果', '苹果', '西红柿', '韭菜', '香蕉', '黄瓜'),然后基于TensorFlow库搭建CNN卷积神经网络算法模型,然后对数据集进行训练,最后得到一个识别精度较高的算法模型,然后将其保存为h5格式的本地文件方便后期调用。再使用Django框架搭建Web网页平台操作界面,实现用户上传一张果蔬图片识别其名称。
28 0
【果蔬识别系统】Python+卷积神经网络算法+人工智能+深度学习+计算机毕设项目+Django网页界面平台
下一篇
无影云桌面