论文地址:https://arxiv.org/abs/1911.06455
实现代码地址:https://github.com/ seongjunyun/Graph_Transformer_Networks
看分享之前可以把论文读一遍,代码看一看,这样必定会事半功倍!

### 论文目的是通过构造GTN(Graph Transformer Networks),来学习到异构网络中有效的节点表示。

### 其他现有方法(GNNs)的缺点:

1. 对于异构图,由于GNN只用于处理同构图,因此效果不好。

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125733747-960185554.png)

2. 一种简单的处理方法就是忽略类型,缺点就是无法获取到类型信息。

3. 手动设计一个meta-path,例如![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125733992-1510873301.png),将异构图转化由meta-path定义的同构图,然后使用GNN进行操作。方法的缺点是:对于每一个问题都需要单独的手工设计meta-path;并且最终效果受到选择meta-path的影响;meta-path的选择需要对应领域知识。

### 整体框架

1. meta-path的表示:

一条路径:![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125734233-779406818.png),则![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125734433-1593186190.png)= ![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125734617-1222163259.png)*![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125734810-596595059.png)

#### 卷积层

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125735076-1449969793.png)

代码:

A 的size:![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125735301-918259361.png)

W的size:![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125735499-300814642.png)

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125736040-400755517.png)

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125736289-29485225.png)

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125736474-351259532.png)

#### GT层

在GT层中,使用了类似于stack的结构

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125736970-37475547.png)

代码

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125738868-1955849713.png)

解决meta-path长度随层数的增加而增加问题:![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125739391-972820468.png)

### GTN

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125739955-1353487658.png)

代码

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125740438-944463192.png)

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125741887-2065348801.png)

gcn_conv:

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125742427-1495904961.png)

#### 实验

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125743197-21888419.png)

将模型生成的meta-path同预定义的meta-path相比较:

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125743829-1002567197.png)

meta-path有效性

![](https://img2018.cnblogs.com/blog/1277792/202001/1277792-20200118125745951-831401986.png)

### 本文的亮点

1. 不需要领域知识,不需要手动设置meta-path,GTN通过候选邻接矩阵来定义有效的meta-paths。
2. 可扩展性强。

Graph Transformer Networks 论文分享的更多相关文章

  1. 论文解读(DAGNN)《Towards Deeper Graph Neural Networks》

    论文信息 论文标题:Towards Deeper Graph Neural Networks论文作者:Meng Liu, Hongyang Gao, Shuiwang Ji论文来源:2020, KDD ...

  2. 论文解读(LA-GNN)《Local Augmentation for Graph Neural Networks》

    论文信息 论文标题:Local Augmentation for Graph Neural Networks论文作者:Songtao Liu, Hanze Dong, Lanqing Li, Ting ...

  3. 论文解读(GraphSMOTE)《GraphSMOTE: Imbalanced Node Classification on Graphs with Graph Neural Networks》

    论文信息 论文标题:GraphSMOTE: Imbalanced Node Classification on Graphs with Graph Neural Networks论文作者:Tianxi ...

  4. 论文解读(KP-GNN)《How Powerful are K-hop Message Passing Graph Neural Networks》

    论文信息 论文标题:How Powerful are K-hop Message Passing Graph Neural Networks论文作者:Jiarui Feng, Yixin Chen, ...

  5. 论文解读(soft-mask GNN)《Soft-mask: Adaptive Substructure Extractions for Graph Neural Networks》

    论文信息 论文标题:Soft-mask: Adaptive Substructure Extractions for Graph Neural Networks论文作者:Mingqi Yang, Ya ...

  6. 论文解读(ChebyGIN)《Understanding Attention and Generalization in Graph Neural Networks》

    论文信息 论文标题:Understanding Attention and Generalization in Graph Neural Networks论文作者:Boris Knyazev, Gra ...

  7. 论文解读(GATv2)《How Attentive are Graph Attention Networks?》

    论文信息 论文标题:How Attentive are Graph Attention Networks?论文作者:Shaked Brody, Uri Alon, Eran Yahav论文来源:202 ...

  8. 谣言检测(ClaHi-GAT)《Rumor Detection on Twitter with Claim-Guided Hierarchical Graph Attention Networks》

    论文信息 论文标题:Rumor Detection on Twitter with Claim-Guided Hierarchical Graph Attention Networks论文作者:Erx ...

  9. [论文理解] Spatial Transformer Networks

    Spatial Transformer Networks 简介 本文提出了能够学习feature仿射变换的一种结构,并且该结构不需要给其他额外的监督信息,网络自己就能学习到对预测结果有用的仿射变换.因 ...

随机推荐

  1. pytorch BiLSTM+CRF代码详解 重点

    一. BILSTM + CRF介绍 https://www.jianshu.com/p/97cb3b6db573 1.介绍 基于神经网络的方法,在命名实体识别任务中非常流行和普遍. 如果你不知道Bi- ...

  2. HDU 5971"Wrestling Match"(二分图染色)

    传送门 •题意 给出 n 个人,m 场比赛: 这 m 场比赛,每一场比赛中的对决的两人,一个属于 "good player" 另一个属于 "bad player" ...

  3. POJ 2763"Housewife Wind"(DFS序+树状数组+LCA)

    传送门 •题意 一对夫妇居住在 xx村庄,给村庄有 $n$ 个小屋: 这 $n$ 个小屋之间有双向可达的道路,不会出现环,即所构成的图是个树: 从 $a_i$ 小屋到 $b_i$ 小屋需要花费 $w_ ...

  4. js(一) 三大事件 实现注册验证

    ps:小声比比,为什么一周多没更,因为js真的好难啊. 上一周做了一整周的jsp+sevlet+mysql做了一个MVC模式的最基本的新闻系统源码会有空搞出来的 好累 好多的. 三大事件 (鼠标事件. ...

  5. java 泛型的嵌套(map例子)

    package july7; //泛型加Map的输出! import java.util.Iterator; import java.util.Map; import java.util.Map.En ...

  6. UVa 1152 -4 Values whose Sum is 0—[哈希表实现]

    The SUM problem can be formulated as follows: given four lists A, B, C, D of integer values, compute ...

  7. linux tasklet工作队列

    工作队列是, 表面上看, 类似于 taskets; 它们允许内核代码来请求在将来某个时间调用 一个函数. 但是, 有几个显著的不同在这 2 个之间, 包括: tasklet 在软件中断上下文中运行的结 ...

  8. Qt和c/c++connect函数冲突解决方法

    在使用c/c++的connect函数时在前面写::connect()这样就可以解决了

  9. c#链接redis用户名密码

    方法一 使用:ServiceStack.Redis 在ip:port前面加上@用来表示密码,比如password@ip:port <add key="RedisServer" ...

  10. Spring Cloud的核心成员、以及架构实现详细介绍

    什么是微服务 微服务的概念源于Martin Fowler所写的一篇文章“Microservices”. 微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调.互相配合,为 ...