code: def __init__(
      self,
      in_dim,
      out_dim,
      hid_dim=16,
      num_layers=2,
      num_heads=1,
      residual=False,
  ):
      super(GeniePath, self).__init__()
      self.hid_dim = hid_dim
      self.linear1 = nn.Linear(in_dim, hid_dim)
      self.linear2 = nn.Linear(hid_dim, out_dim)
      self.layers = nn.ModuleList()
      for i in range(num_layers):
          self.layers.append(
              GeniePathConv(
                  hid_dim,
                  hid_dim,
                  hid_dim,
                  num_heads=num_heads,
                  residual=residual,
              )
          )
  
file_path: dgl/examples/pytorch/geniepath/model.py
imports: import torch
  import torch.nn
  from dgl.nn import GATConv
  from torch.nn import LSTM
label_desc: Use image node_id 1 to create a new GeniePath object from inherited base classes: nn with example: obj = GeniePath(in_dim, out_dim, hid_dim, num_layers, num_heads, residual)