class_docstr: Build `DistMult
  <https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/ICLR2015_updated.pdf>`_ factorization
  as GripNet decoder in PoSE dataset.
  Copy-paste with slight modifications from https://github.com/NYXFLOWER/GripNet.
  
  Args:
      in_channels (int): the dimension of input feature.
      num_edge_type (int): the number of edge types.
code: def reset_parameters(self):
      self.weight.data.normal_(std=1 / np.sqrt(self.in_channels))
  
imports: from typing import List, Tuple
  import numpy
  import pytorch_lightning
  import torch
  import torch.nn
  import torch.nn.functional
  from kale.embed.gripnet import GripNet
  from kale.evaluate.metrics import auprc_auroc_ap
  from kale.prepdata.graph_negative_sampling import typed_negative_sampling
  from kale.prepdata.supergraph_construct import SuperGraph
  from kale.utils.initialize_nn import bias_init, xavier_init
label_desc: Use image node_id 3 for calling the DistMultDecoder obj's underlying member method code with example usage: obj.reset_parameters() without return types