基于 TensorFlow 的图神经网络框架 TF-GNN

码农软件 · 软件分类 · 神经网络/人工智能 · 2019-10-14 07:57:19

软件介绍

TF-GNN是基于TensorFlow的图神经网络框架,包含了图卷积网络(GCN)和图注意力网络(GAT)等常见的深度图神经网络。框架内部使用了稀疏矩阵等解决了图神经网络的计算效率和规模问题。

项目内容:

图神经网络(如GCN、GAT等)的工程化一直是一个大问题,在数据预处理、网络构建、性能优化等方面都需要细致的考虑。TF-GNN基于TensorFLow,为图神经网络提供了下面的功能:

  • 图神经网络数据集的构建,包括将图神经网络存储格式、图数据的读取、训练测试划分等

  • 基于稀疏矩阵的数据结构大大提升了框架的性能,在CPU上也可以轻松地运行图神经网络

  • 提供了GCN和GAT层,可以直接构建GCN和GAT

数据集:

内置了下面的已经格式化的数据集:

  • DBLP(论文引用数据集)

  • M10(论文引用数据集)

示例:

图卷积网络示例(Graph Convolutional Networks):

# coding=utf-8
from gnn.data.dataset import GraphDataset, WhiteSpaceTokenizer
from gnn.data.example import load_M10, load_cora, load_dblp
from gnn.model.gcn import GCN, GCNTrainer
import tensorflow as tf

# eager mode must be enabled
from tensorflow.contrib.eager.python import tfe

import os
os.environ["CUDA_VISIBLE_DEVICES"] = "0"

tfe.enable_eager_execution()

# read graph dataset: data/M10 data/dblp
# dataset = GraphDataset("data/dblp", ignore_featureless_node=True)
dataset = load_M10("data/M10", ignore_featureless_node=True)

adj = dataset.adj_matrix(sparse=True)
feature_matrix, feature_masks = dataset.feature_matrix(bag_of_words=True, sparse=True)
labels, label_masks = dataset.label_list_or_matrix(one_hot=False)

train_node_indices, test_node_indices, train_masks, test_masks = dataset.split_train_and_test(training_rate=0.3)

gcn_model = GCN([16, dataset.num_classes()])
gcn_trainer = GCNTrainer(gcn_model)
gcn_trainer.train(adj, feature_matrix, labels, train_masks, test_masks, learning_rate=1e-3, l2_coe=1e-3)

本文地址:https://codercto.com/soft/d/16716.html

C++程序设计语言

C++程序设计语言

Bjarne Stroustrup / 裘宗燕 / 机械工业出版社 / 2010-3-1 / 99.00元

本书是在C++语言和程序设计领域具有深远影响、畅销不衰的著作,由C++语言的设计者编写,对C++语言进行了最全面、最权威的论述,覆盖标准C++以及由C++所支持的关键性编程技术和设计技术。本书英文原版一经面世,即引起业内人士的高度评价和热烈欢迎,先后被翻译成德、希、匈、西、荷、法、日、俄、中、韩等近20种语言,数以百万计的程序员从中获益,是无可取代的C++经典力作。 在本书英文原版面世10年......一起来看看 《C++程序设计语言》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试