人脸识别(6)GCN代码分析

0.简单的跑通代码

0.1 运行环境

 tensorflow (>0.12)
 networkx

0.2 运行方法

cd gcn
python train.py

1. 数据

1.1 使用自己的数据

为了使用自己的数据,必须提供:
(1)一个NN的邻接矩阵(N是节点的数量);an N by N adjacency matrix (N is the number of nodes),
(2)一个N
D的特征矩阵(D是每个节点特征的数量);an N by D feature matrix (D is the number of features per node),
(3)一个N*E的二进制标签矩阵(E是类的数量);an N by E binary label matrix (E is the number of classes).

1.2 使用作者提供的数据(作为跑通代码的一个实例)

utils.py文件中 load_data() 函数用来读取数据。在这个例子中,我们加载文献引用网络数据(Cora, Citeseer or Pubmed)。原始数据集下载地址: http://linqs.cs.umd.edu/projects/projects/lbc/;在开源代码的版本中(代码目录data文件夹下),代码使用 https://github.com/kimiyoung/planetoid 提供的分割之后的数据集。
You can specify a dataset as follows:
可以用以下的方式特定的使用一个数据集:

python train.py --dataset citeseer
(或者编辑 train.py文件)

2.函数

3.逻辑

参考资料

[1] GCN代码分析
[2] 【GCN+AE代码逐行学习】参考资料记录
[3] Keras版GCN源码解析
[4] Semi-Supervised 图卷积

[6] Cora数据集介绍+python读取
[7] 数据集Cora、Citeseer、DBLP

函数

[1] Python scipy中的dia_matrix详解
[2] SciPy教程 - 稀疏矩阵库scipy.sparse
[3] python稀疏矩阵的存储与表示

代码

[1] LINQS STATISTICAL RELATIONAL LEARNING GROUP
[2] tkipf/gcn
[3] kimiyoung/planetoid

论文

[1] (Zhilin Yang, William W. Cohen, Ruslan Salakhutdinov, Revisiting Semi-Supervised Learning with Graph Embeddings, ICML 2016)
[2] Semi-Supervised Classification with Graph Convolutional Networks
[3] GRAPH CONVOLUTIONAL NETWORKS THOMAS KIPF, 30 SEPTEMBER 2016

你可能感兴趣的:(人脸识别(6)GCN代码分析)