class_docstr: A GNN prediction head for node-level prediction tasks.
  
  Args:
      dim_in (int): The input feature dimension.
      dim_out (int): The output feature dimension.
class_docstr_tok: ["A","GNN","prediction","head","for","node-level","prediction","tasks",".","Args",":","dim_in","(","int",")",":","The","input","feature","dimension",".","dim_out","(","int",")",":","The","output","feature","dimension","."]
code: def __init__(self, dim_in: int, dim_out: int):
      super().__init__()
      self.layer_post_mp = MLP(
          new_layer_config(
              dim_in,
              dim_out,
              cfg.gnn.layers_post_mp,
              has_act=False,
              has_bias=True,
              cfg=cfg,
          )
      )
  
imports: import torch
  import torch_geometric.graphgym.register
  from torch_geometric.graphgym.config import cfg
  from torch_geometric.graphgym.models.layer import MLP, new_layer_config
  from torch_geometric.graphgym.register import register_head
label_desc: Use image node_id 1 to create a new GNNNodeHead object from inherited base classes: torch.nn with example: obj = GNNNodeHead(dim_in, dim_out)