code: def __init__(self):
      super().__init__()
      self.conv1 = GATConv(train_dataset.num_features, 256, heads=4)
      self.lin1 = torch.nn.Linear(train_dataset.num_features, 4 * 256)
      self.conv2 = GATConv(4 * 256, 256, heads=4)
      self.lin2 = torch.nn.Linear(4 * 256, 4 * 256)
      self.conv3 = GATConv(
          4 * 256, train_dataset.num_classes, heads=6, concat=False
      )
      self.lin3 = torch.nn.Linear(4 * 256, train_dataset.num_classes)
  
file_path: pytorch_geometric/examples/ppi.py
imports: import os.path
  import time
  import torch
  import torch.nn.functional
  from sklearn.metrics import f1_score
  from torch_geometric.datasets import PPI
  from torch_geometric.loader import DataLoader
  from torch_geometric.nn import GATConv
label_desc: Use image node_id 1 to create a new Net object from inherited base classes: torch.nn with example: obj = Net()