class_docstr: NAIS is an attention network, which is capable of distinguishing which historical items
  in a user profile are more important for a prediction. We just implement the model following
  the original author with a pointwise training mode.
  
  Note:
      instead of forming a minibatch as all training instances of a randomly sampled user which is
      mentioned in the original paper, we still train the model by a randomly sampled interactions.
docstr: A simple implementation of loading pretrained parameters.
docstr_tok: ["A","simple","implementation","of","loading","pretrained","parameters","."]
code: def _load_pretrain(self):
      """A simple implementation of loading pretrained parameters."""
      fism = torch.load(self.pretrain_path)["state_dict"]
      self.item_src_embedding.weight.data.copy_(
          fism["item_src_embedding.weight"]
      )
      self.item_dst_embedding.weight.data.copy_(
          fism["item_dst_embedding.weight"]
      )
      for name, parm in self.mlp_layers.named_parameters():
          if name.endswith("weight"):
              xavier_normal_(parm.data)
          elif name.endswith("bias"):
              constant_(parm.data, 0)
  
imports: import torch
  import torch.nn
  from torch.nn.init import constant_, normal_, xavier_normal_
  from recbole.model.abstract_recommender import GeneralRecommender
  from recbole.model.layers import MLPLayers
  from recbole.utils import InputType
label_desc: Use image node_id 3 for calling the NAIS obj's underlying member method code with example usage: obj._load_pretrain() without return types