class_docstr: PNN calculate inner and outer product of feature embedding.
  You can choose the product option with the parameter of use_inner and use_outer
class_docstr_tok: ["PNN","calculate","inner","and","outer","product","of","feature","embedding",".","You","can","choose","the","product","option","with","the","parameter","of","use_inner","and","use_outer"]
code: def _init_weights(self, module):
      if isinstance(module, nn.Embedding):
          xavier_normal_(module.weight.data)
      elif isinstance(module, nn.Linear):
          xavier_normal_(module.weight.data)
          if module.bias is not None:
              constant_(module.bias.data, 0)
  
imports: import torch
  import torch.nn
  from torch.nn.init import xavier_normal_, constant_
  from recbole.model.abstract_recommender import ContextRecommender
  from recbole.model.layers import MLPLayers
label_desc: Use image node_id 3 for calling the PNN obj's underlying member method code with example usage: obj._init_weights(module) without return types