pytorch GIN和GCN按MLP汇总:有什么区别吗?

hfwmuf9z  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(348)

我在this link中看到了GIN的以下过程

GIN层的代码编写如下:

self.conv1 = GINConv(Sequential(Linear(num_node_features,dim_h),
                                    BatchNorm1d(dim_h),ReLU(),
                                    Linear(dim_h,dim_h),ReLU()))

这是Sequential(....)内部的聚合函数还是池函数?

Sequential(Linear(num_node_features,dim_h),
                                        BatchNorm1d(dim_h),ReLU(),
                                        Linear(dim_h,dim_h),ReLU()))

我可以对GCN层执行同样的操作吗?
self.conv1 = GCNConv(连续(线性(节点特征数,尺寸_h),批次归一化1(尺寸_h),ReLU(),线性(尺寸_h,尺寸_h),ReLU()))self.conv2 = GCNConv(连续(线性(尺寸_h,尺寸_h),批次归一化1(尺寸_h),ReLU(),线性(尺寸_h,尺寸_h),ReLU()))
出现以下错误:

---> 15 self.conv1 = GCNConv(Sequential(Linear(num_node_features,dim_h),
     16                                BatchNorm1d(dim_h),ReLU(),
     17                                Linear(dim_h,dim_h),ReLU()))
     18 self.conv2 = GCNConv(Sequential(Linear(dim_h,dim_h),
     19                     BatchNorm1d(dim_h),ReLU(),
     20                     Linear(dim_h,dim_h),ReLU()))
     21 self.conv3 = GCNConv(Sequential(Linear(dim_h,dim_h),
     22                                BatchNorm1d(dim_h),ReLU(),
     23                                Linear(dim_h,dim_h),ReLU()))

TypeError: GCNConv.__init__() missing 1 required positional argument: 'out_channels'
xqk2d5yq

xqk2d5yq1#

您可以在torch_geometric中看到GINConvGCNConv API。

  • GIN转换()
  • 有一个nn参数,例如,由torch.nn.Sequential定义。因此,在上面提到的教程中,可以使用Sequential()方法。
  • GCN转换()
  • 但是GCNConv()没有nn参数。

当您想知道一个您不知道的方法时,在API中搜索该方法是解决问题的一个好方法:)

相关问题