InfoQ 编辑部出品——2021年度技术盘点与展望 了解详情
写点什么

TensorFlow 这下更牛了,现已支持图神经网络

  • 2021 年 11 月 23 日
  • 本文字数:1411 字

    阅读完需:约 5 分钟

TensorFlow 这下更牛了,现已支持图神经网络

18 日,TensorFlow 项目组发布了图神经网络(GNN)库,使开发者可以通过 TensorFlow 轻松处理图结构化数据。从 2019 年开始,图神经网络就被视作 AI 领域的核心研究方向,但从 2019 - 2021,该领域的主要动态集中在论文层面,在 TensorFlow GNN 发布前,工业环境还未出现大规模支持。此外,一直有许多开发者研究基于 TensorFlow 的 GNN 实现,这次发布也相当于正式给出官方答案。

TensorFlow GNN 基本信息


TensorFlow GNN 主要提供了几类主要服务:

 

  1. 建模 API;

  2. 基于张量的图形数据结构;

  3. 数据处理管道;

  4. 实例模型。

 

其工作流程及组件示意如下:



TF-GNN项目组在官方博客上详细列举了初始版本的程序和功能,包括:

 

  • 用于创建可轻松与其他类型模型组合的 GNN 模型的高级 Keras 样式 API。GNN 通常与排序、深度检索(双编码器)结合使用或与其他类型的模型(图像、文本等)混合使用;

  • 用于异构图的 GNN API。我们在 Google 和现实世界中处理的许多图问题都包含不同类型的节点和边。因此,我们选择提供一种简单的方法来对此进行建模;

  • 一个定义良好的模式来声明一个图的拓扑结构,以及验证它的工具。该模式描述了其训练数据的形状,并用于指导其他工具;

  • 一种 GraphTensor 复合张量类型,它保存图形数据,可以批处理,并具有可用的图形操作例程;

  • GraphTensor 结构上的操作库:

  • 节点和边上的各种高效广播和池化操作,以及相关工具。

  • 标准烘焙卷积库,机器学习工程师/研究人员可以轻松扩展。

  • 产品工程师可以快速构建 GNN 模型而不必担心其细节的高级 API。

  • 磁盘上图形训练数据的编码,以及用于将此数据解析为数据结构的库,您的模型可以从中提取各种特征。

图数据逐渐成为主流

 

图包含四大类基本信息:节点、边、全局信息(节点数等)、连通性(两个节点间是否是连通的)。要把图的信息以矩阵的形式输入机器学习模型是非常复杂的,具体可以通过下图体验下:



而图神经网络,就是对图的所有属性(节点、边、全局上下文)进行的可优化转换,同时保留对称性。一般认为 GNN 可以分为图卷积网络(Graph Convolution Networks,GCN)、 图注意力网络(Graph Attention Networks)、图自编码器( Graph Autoencoders)、图生成网络( Graph Generative Networks) 和图时空网络(Graph Spatial-temporal Networks)等几大类。

 

不仅是 GNN,“Graph(图)”这个词,本身在 IT 圈的出现频率也越来越高。比如图数据库,使用图形化的模型进行查询的数据库,通过节点、边和属性等方式来表示和存储数据,支持增删改查(CRUD)等操作。图数据库的相关产品有Nebula Graph、Neo4j、Janus、HugeGraph 等,不但社区内关注度很高,资本的投入也越来越大。

 

以开源的 Nebula Graph 为例,在腾讯、微信、美团都有大规模的应用。在腾讯,图数据库被用于安全、知识图谱等业务场景;在微信,则被用于解决大数据集存储、秒级回滚等问题。

 

图数据在交通预测、舆情勘测、疾病传播建模、物理模拟等领域都有比较广泛的应用。举个例子,今年 8 月 8 日,康奈尔大学的专家发表了一篇论文,用循环图神经网络实现对在线论坛的谣言预测,GitHub 代码:https://github.com/google-research/social_cascades

 

当我们要表达真实世界对象与对象间的数据关系时,图数据更加自然。在接下来的几年,与图数据有关的处理和存储软件,可能也会越来越多。

 

参考链接:

https://blog.tensorflow.org/2021/11/introducing-tensorflow-gnn.html

https://distill.pub/2021/gnn-intro/

https://arxiv.org/abs/2108.03548

2021 年 11 月 23 日 20:452634

评论

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

如何通过 Serverless 轻松识别验证码?

Serverless Devs

人工智能 Serverless 云原生

限时!字节Java程序性能优化宝典开源,原来这才叫性能优化

996小迁

程序员 面试 性能优化 笔记

微服务架构思考 - 理清楚,管起来

jorden wang

面试必问的 Redis:主从复制

Java架构师迁哥

高空立体云防控系统搭建,智能化平安小区建设方案

t13823115967

平安小区 智慧平安社区建设

一线大厂开源三份JDK+Spring+Mybatis源码笔记

Java架构追梦

Java spring 源码 jdk mybatis

周立齐出任电动车联合创始人:网红经济背后的病态消费心理

石头IT视角

Demo分享丨看ModelArts与HiLens是如何让车自己跑起来的

华为云开发者社区

人工智能 智能车 hilens

没能进入大数据领域

escray

面试 面经

区块链溯源平台优势,区块链溯源系统解决方案

13530558032

2021 云原生走向何处?

云原生实验室

一个企业用电有多浪费?90后开发者大显身手,让每度电从此更“聪明”!

华为云开发者社区

AI 物联网 智慧园区

如何基于 SDK 快速开发一款IoT App 控制智能灯(iOS 版)

IoT云工坊

ios App 物联网 IoT sdk

为什么说rollup比webpack更适合打包库

fengxianqi

大前端 Rollup webpack

应急指挥中心平台搭建,移动可视化指挥解决方案

t13823115967

可视化数据分析搭建 应急指挥

Flash Player终将成为历史,HTML5正站在舞台的中央

Geek_Willie

Spring知识点总结!已整理成142页离线文档(源码笔记+思维导图)

Crud的程序员

spring 程序员

速来围观!阿里P8大牛写出的JDK源码剖析及大型网站技术架构与业务架构融合之道

Java架构之路

Java 程序员 架构 面试 编程语言

盘点 2020 | 10 天开发前台系统技术系列

老魚

CSS 大前端 全栈 js 盘点2020

智慧社区综合管理平台搭建,智慧平安城市建设

13530558032

APICloud AVM 多端开发 |外卖 app 开发案例源码教程(上)

APICloud

Vue 大前端 Web Worker 移动终端

加密猫MIMI系统APP开发|加密猫MIMI软件开发

系统开发

软件测试必须掌握的http网络协议知识

测试人生路

软件测试

移动生态盘点与HMS生态解析

华章IT

华为 Android Studio 移动开发 HMS

扒开 SqlSession 的外衣

田维常

mybatis

为什么香港云服务器更适合放新网站

德胜网络-阳

PostgreSQL 13 RPM中有哪些新功能?

PostgreSQLChina

数据库 postgresql 开源

抢先体验全新升级版Eternal Wallet!

Geek_c610c0

数字货币 数字货币钱包开发

字节二面跪拜“Redis源码”后,面试官直接推荐这份笔记!真是NB

比伯

Java 编程 架构 面试 程序人生

用一把吃鸡的时间,免费上云搭建网站应用

华为云开发者社区

服务 建站

云上可靠性测试:让我们一起给开发找点事儿

华为云开发者社区

安全 云服务 可靠性

TensorFlow 这下更牛了,现已支持图神经网络-InfoQ