diff --git a/autogl/module/model/encoders/_dgl/_gat.py b/autogl/module/model/encoders/_dgl/_gat.py index 58916c6..4185103 100644 --- a/autogl/module/model/encoders/_dgl/_gat.py +++ b/autogl/module/model/encoders/_dgl/_gat.py @@ -52,8 +52,6 @@ class GAT(torch.nn.Module): def forward( self, graph: dgl.DGLGraph, *__args, **__kwargs ) -> _typing.Iterable[torch.Tensor]: - graph = dgl.remove_self_loop(graph) - graph = dgl.add_self_loop(graph) num_layers = len(self.__convolutions) x: torch.Tensor = graph.ndata['feat'] results = [x] diff --git a/autogl/module/model/encoders/_dgl/_gcn.py b/autogl/module/model/encoders/_dgl/_gcn.py index 098723f..6b7c2f9 100644 --- a/autogl/module/model/encoders/_dgl/_gcn.py +++ b/autogl/module/model/encoders/_dgl/_gcn.py @@ -26,8 +26,6 @@ class _GCN(torch.nn.Module): self._dropout: _typing.Optional[float] = dropout def forward(self, graph: dgl.DGLGraph, *__args, **__kwargs): - graph = dgl.remove_self_loop(graph) - graph = dgl.add_self_loop(graph) x: torch.Tensor = graph.ndata['feat'] results: _typing.MutableSequence[torch.Tensor] = [] for _layer in range(len(self.__convolution_layers)): diff --git a/test/performance/node_classification/dgl/helper.py b/test/performance/node_classification/dgl/helper.py index f957dd7..512da7a 100644 --- a/test/performance/node_classification/dgl/helper.py +++ b/test/performance/node_classification/dgl/helper.py @@ -15,7 +15,7 @@ def get_encoder_decoder_hp(model='gin', decoder=None): "hidden": [8], "heads": 8, "dropout": 0.6, - "act": "elu", + "act": "relu", } elif model == 'gcn': model_hp = { diff --git a/test/performance/node_classification/dgl/model.py b/test/performance/node_classification/dgl/model.py index d4b3792..16bd61e 100644 --- a/test/performance/node_classification/dgl/model.py +++ b/test/performance/node_classification/dgl/model.py @@ -82,8 +82,8 @@ if __name__ == '__main__': if args.model == 'gat': model = AutoGAT( - num_features=num_features, - num_classes=num_classes, + input_dimension=num_features, + output_dimension=num_classes, device=args.device ).from_hyper_parameter({ # hp from model @@ -96,8 +96,8 @@ if __name__ == '__main__': }).model elif args.model == 'gcn': model = AutoGCN( - num_features=num_features, - num_classes=num_classes, + input_dimension=num_features, + output_dimension=num_classes, device=args.device ).from_hyper_parameter({ "num_layers": 2, @@ -107,8 +107,8 @@ if __name__ == '__main__': }).model elif args.model == 'sage': model = AutoSAGE( - num_features=num_features, - num_classes=num_classes, + input_dimension=num_features, + output_dimension=num_classes, device=args.device ).from_hyper_parameter({ "num_layers": 2, diff --git a/test/performance/node_classification/pyg/helper.py b/test/performance/node_classification/pyg/helper.py index 985e950..a3dcfa1 100644 --- a/test/performance/node_classification/pyg/helper.py +++ b/test/performance/node_classification/pyg/helper.py @@ -1,9 +1,9 @@ -def get_encoder_decoder_hp(model='gin', decoder=None): +def get_encoder_decoder_hp(model='gin', decoder=None, decoupled=False): if model == 'gin': model_hp = { # hp from model - "num_layers": 5, - "hidden": [64,64,64,64], + "num_layers": 2, + "hidden": [64], "dropout": 0.5, "act": "relu", "eps": "False", @@ -11,14 +11,23 @@ def get_encoder_decoder_hp(model='gin', decoder=None): } if model == 'gat': - model_hp = { - "num_layers": 2, - "hidden": [8], - "num_hidden_heads": 8, - "num_output_heads": 8, - "dropout": 0.6, - "act": "elu" - } + if decoupled: + model_hp = { + "num_layers": 2, + "hidden": [8], + "num_hidden_heads": 8, + "num_output_heads": 1, + "dropout": 0.6, + "act": "elu" + } + else: + model_hp = { + "num_layers": 2, + "hidden": [8], + "heads": 8, + "dropout": 0.6, + "act": "elu" + } elif model == 'gcn': model_hp = { "num_layers": 2, diff --git a/test/performance/node_classification/pyg/model_decouple.py b/test/performance/node_classification/pyg/model_decouple.py index d2b299c..d30afde 100644 --- a/test/performance/node_classification/pyg/model_decouple.py +++ b/test/performance/node_classification/pyg/model_decouple.py @@ -87,7 +87,7 @@ if __name__ == '__main__': accs = [] - model_hp, decoder_hp = get_encoder_decoder_hp(args.model) + model_hp, decoder_hp = get_encoder_decoder_hp(args.model, decoupled=True) for seed in tqdm(range(args.repeat)): set_seed(seed) diff --git a/test/performance/node_classification/pyg/solver.py b/test/performance/node_classification/pyg/solver.py index 5648d1c..3f1223b 100644 --- a/test/performance/node_classification/pyg/solver.py +++ b/test/performance/node_classification/pyg/solver.py @@ -42,7 +42,7 @@ if __name__ == '__main__': label = dataset[0].nodes.data['y'][dataset[0].nodes.data['test_mask']].numpy() accs = [] - model_hp, decoder_hp = get_encoder_decoder_hp(args.model) + model_hp, decoder_hp = get_encoder_decoder_hp(args.model, decoupled=True) for seed in tqdm(range(args.repeat)): diff --git a/test/performance/node_classification/pyg/trainer.py b/test/performance/node_classification/pyg/trainer.py index eeb04ed..bd0751c 100644 --- a/test/performance/node_classification/pyg/trainer.py +++ b/test/performance/node_classification/pyg/trainer.py @@ -40,12 +40,10 @@ if __name__ == '__main__': accs = [] - model_hp, decoder_hp = get_encoder_decoder_hp(args.model) + model_hp, decoder_hp = get_encoder_decoder_hp(args.model, decoupled=True) for seed in tqdm(range(args.repeat)): set_seed(seed) - model_hp, decoder_hp = get_encoder_decoder_hp(args.model) - trainer = NodeClassificationFullTrainer( model=args.model, num_features=num_features, diff --git a/test/performance/node_classification/pyg/trainer_dataset.py b/test/performance/node_classification/pyg/trainer_dataset.py index 69c4958..e7d01d0 100644 --- a/test/performance/node_classification/pyg/trainer_dataset.py +++ b/test/performance/node_classification/pyg/trainer_dataset.py @@ -40,7 +40,7 @@ if __name__ == '__main__': accs = [] - model_hp, decoder_hp = get_encoder_decoder_hp(args.model) + model_hp, decoder_hp = get_encoder_decoder_hp(args.model, decoupled=True) for seed in tqdm(range(args.repeat)): set_seed(seed)