GCNNorm

class dgl.transforms.GCNNorm(eweight_name='w')[source]

基类: BaseTransform

将对称邻接归一化应用于输入图,并保存结果边权重,如《利用图卷积网络进行半监督分类》中所述。

对于异构图,这仅适用于对称规范边类型,其源节点类型和目标节点类型相同。

参数:

eweight_name (str, 可选) – edata 中用于获取和存储边权重的名称。边权重是可选的。

示例

>>> import dgl
>>> import torch
>>> from dgl import GCNNorm
>>> transform = GCNNorm()
>>> g = dgl.graph(([0, 1, 2], [0, 0, 1]))

示例 1:转换一个无权重图

>>> g = transform(g)
>>> print(g.edata['w'])
tensor([0.5000, 0.7071, 0.0000])

示例 2:转换一个有权重图

>>> g.edata['w'] = torch.tensor([0.1, 0.2, 0.3])
>>> g = transform(g)
>>> print(g.edata['w'])
tensor([0.3333, 0.6667, 0.0000])