class_docstr: PGExplainer from `Parameterized Explainer for Graph Neural Network
  <https://arxiv.org/pdf/2011.04573>`
  
  PGExplainer adopts a deep neural network (explanation network) to
  parameterize the generation process of explanations, which enables it to
  explain multiple instances collectively. PGExplainer models the underlying
  structure as edge distributions, from which the explanatory graph is
  sampled.
  
  Parameters
  ----------
  model : nn.Module
      The GNN model to explain that tackles multiclass graph classification
  
      * Its forward function must have the form
        :attr:`forward(self, graph, nfeat, embed, edge_weight)`.
      * The output of its forward function is the logits if embed=False else
        the intermediate node embeddings.
  num_features : int
      Node embedding size used by :attr:`model`.
  num_hops : int, optional
      The number of hops for GNN information aggregation, which must match the
      number of message passing layers employed by the GNN to be explained.
  explain_graph : bool, optional
      Whether to initialize the model for graph-level or node-level predictions.
  coff_budget : float, optional
      Size regularization to constrain the explanation size. Default: 0.01.
  coff_connect : float, optional
      Entropy regularization to constrain the connectivity of explanation. Default: 5e-4.
  sample_bias : float, optional
      Some members of a population are systematically more likely to be selected
      in a sample than others. Default: 0.0.
class_docstr_tok: ["PGExplainer","from","`","Parameterized","Explainer","for","Graph","Neural","Network","<","https",":","\/\/arxiv.org\/pdf\/2011.04573",">","`","PGExplainer","adopts","a","deep","neural","network","(","explanation","network",")","to","parameterize","the","generation","process","of","explanations",",","which","enables","it","to","explain","multiple","instances","collectively",".","PGExplainer","models","the","underlying","structure","as","edge","distributions",",","from","which","the","explanatory","graph","is","sampled",".","Parameters","--","--","--","--","--","model",":","nn.Module","The","GNN","model","to","explain","that","tackles","multiclass","graph","classification","*","Its","forward","function","must","have","the","form",":","attr",":","`","forward","(","self",",","graph",",","nfeat",",","embed",",","edge_weight",")","`",".","*","The","output","of","its","forward","function","is","the","logits","if","embed=False","else","the","intermediate","node","embeddings",".","num_features",":","int","Node","embedding","size","used","by",":","attr",":","`","model","`",".","num_hops",":","int",",","optional","The","number","of","hops","for","GNN","information","aggregation",",","which","must","match","the","number","of","message","passing","layers","employed","by","the","GNN","to","be","explained",".","explain_graph",":","bool",",","optional","Whether","to","initialize","the","model","for","graph-level","or","node-level","predictions",".","coff_budget",":","float",",","optional","Size","regularization","to","constrain","the","explanation","size",".","Default",":","0.01.","coff_connect",":","float",",","optional","Entropy","regularization","to","constrain","the","connectivity","of","explanation",".","Default",":","5e-4",".","sample_bias",":","float",",","optional","Some","members","of","a","population","are","systematically","more","likely","to","be","selected","in","a","sample","than","others",".","Default",":","0.0","."]
docstr: Returns an iterator over the `Parameter` objects of the `nn.Linear`
  layers in the `self.elayers` sequential module. Each `Parameter`
  object contains the weight and bias parameters of an `nn.Linear`
  layer, as learned during training.
  
  Returns
  -------
  iterator
      An iterator over the `Parameter` objects of the `nn.Linear`
      layers in the `self.elayers` sequential module.
docstr_tok: ["Returns","an","iterator","over","the","`","Parameter","`","objects","of","the","`","nn.Linear","`","layers","in","the","`","self.elayers","`","sequential","module",".","Each","`","Parameter","`","object","contains","the","weight","and","bias","parameters","of","an","`","nn.Linear","`","layer",",","as","learned","during","training",".","Returns","--","--","--","-","iterator","An","iterator","over","the","`","Parameter","`","objects","of","the","`","nn.Linear","`","layers","in","the","`","self.elayers","`","sequential","module","."]
code: def parameters(self):
      r"""
      Returns an iterator over the `Parameter` objects of the `nn.Linear`
      layers in the `self.elayers` sequential module. Each `Parameter`
      object contains the weight and bias parameters of an `nn.Linear`
      layer, as learned during training.
  
      Returns
      -------
      iterator
          An iterator over the `Parameter` objects of the `nn.Linear`
          layers in the `self.elayers` sequential module.
      """
      return self.elayers.parameters()
  
imports: import math
  import torch
  import torch.nn
  import torch.nn.functional
  from ....None import batch, ETYPE, khop_in_subgraph, NID, to_homogeneous
label_desc: Use image node_id 4 for calling the PGExplainer obj's underlying member method code with example usage: obj.parameters() and returns: self