DeepMind开源图深度学习(GraphDL)工具包,基于Tensorflow和Sonnet

【导读】DeepMind在Github上开源了基于Tensorflow和Sonnet的图深度学习(GraphDL)工具包。近期,DeepMind、Google大脑、MIT等各大研究机构相继发表了一系列的关于图深度学习的论文,包括关系性RNN、关系性深度强化学习、图卷积神经网络等,是目前AI算法研究的热点之一。 


图深度学习(GraphDL)


关于图深度学习,我们以前写过一篇较为详细的公众号做了介绍:《图深度学习(GraphDL),下一个人工智能算法热点?一文了解最新GDL相关文章》(链接:https://mp.weixin.qq.com/s/w5ldyp00CqkX8Kp-8Aw0nQ)


DeepMind开源的图深度学习工具包Graph Nets


DeepMind开源了图深度学习工具包Graph Nets,引起了不少人的关注。自两天前正式开源以来,已经获得了500+的star:

目前最火的GCN(图卷积网络)的作者Thomas Kipf也在Twitter上转发了Graph Nets项目:


Graph Nets能做什么


图神经网络的输入包含了边的集合、点的集合以及全局属性,图神经网络的输出与输入具有同样的结构,但是属性却得到了更新,这就是Graph Nets的功能。


Graph Nets的安装


Graph Nets目前支持Linux/Mac OS,对Python版本的要求是2.7或3.4+,目前官网中没有提到对Windows的支持。直接使用pip就可以完成安装:

pip install graph_nets


Graph Nets的使用


Graph Nets官网给出了一段示例代码,从这段代码来看,Graph Nets在内部封装了对图处理的逻辑,使用者只要提供图的结构,以及对边、点、全局信息进行处理的神经网络的结构,就可以训练图神经网络:

import graph_nets as gn
import sonnet as snt

# Provide your own functions to generate graph-structured data.
input_graphs = get_graphs()

# Create the graph network.
graph_net_module = gn.modules.GraphNetwork(
   edge_model_fn=lambda: snt.nets.MLP([32, 32]),
   
node_model_fn=lambda: snt.nets.MLP([32, 32]),
   
global_model_fn=lambda: snt.nets.MLP([32, 32]))

# Pass the input graphs to the graph network, and return the output graphs.
output_graphs = graph_net_module(input_graphs)


Graph Nets示例


Graph Nets提供了几个示例,包括:

最短路径:

https://colab.research.google.com/github/deepmind/graph_nets/blob/master/graph_nets/demos/shortest_path.ipynb


排序:

https://colab.research.google.com/github/deepmind/graph_nets/blob/master/graph_nets/demos/sort.ipynb


状态预测(物理):

https://colab.research.google.com/github/deepmind/graph_nets/blob/master/graph_nets/demos/physics.ipynb


END-

专 · 知


人工智能领域26个主题知识资料全集获取与加入专知人工智能服务群: 欢迎微信扫一扫加入专知人工智能知识星球群,获取专业知识教程视频资料和与专家交流咨询!


请PC登录www.zhuanzhi.ai或者点击阅读原文,注册登录专知,获取更多AI知识资料!


请加专知小助手微信(扫一扫如下二维码添加),加入专知主题群(请备注主题类型:AI、NLP、CV、 KG等)交流~

 AI 项目技术 & 商务合作:bd@zhuanzhi.ai, 或扫描上面二维码联系!

请关注专知公众号,获取人工智能的专业知识!

点击“阅读原文”,使用专知

展开全文
Top
微信扫码咨询专知VIP会员