DenseChebConv
- class dgl.nn.pytorch.conv.DenseChebConv(in_feats, out_feats, k, bias=True)[source]
基类:
Module
来自 Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering 论文的切比雪夫谱图卷积层
建议在密集图上应用 ChebConv 时使用此模块。
- 参数:
示例
>>> import dgl >>> import numpy as np >>> import torch as th >>> from dgl.nn import DenseChebConv >>> >>> feat = th.ones(6, 10) >>> adj = th.tensor([[0., 0., 1., 0., 0., 0.], ... [1., 0., 0., 0., 0., 0.], ... [0., 1., 0., 0., 0., 0.], ... [0., 0., 1., 0., 0., 1.], ... [0., 0., 0., 1., 0., 0.], ... [0., 0., 0., 0., 0., 0.]]) >>> conv = DenseChebConv(10, 2, 2) >>> res = conv(adj, feat) >>> res tensor([[-3.3516, -2.4797], [-3.3516, -2.4797], [-3.3516, -2.4797], [-4.5192, -3.0835], [-2.5259, -2.0527], [-0.5327, -1.0219]], grad_fn=<AddBackward0>)
另见
- forward(adj, feat, lambda_max=None)[source]
计算(密集)切比雪夫谱图卷积层
- 参数:
adj (torch.Tensor) – 要应用图卷积的图的邻接矩阵,形状应为 \((N, N)\),其中行表示目标节点,列表示源节点。
feat (torch.Tensor) – 输入特征,形状为 \((N, D_{in})\),其中 \(D_{in}\) 是输入特征的大小,\(N\) 是节点数。
lambda_max (float 或 None, 可选) – 一个浮点值,表示给定图的最大特征值。默认为:None。
- 返回:
输出特征,形状为 \((N, D_{out})\),其中 \(D_{out}\) 是输出特征的大小。
- 返回类型:
torch.Tensor