class_docstr_tok: []
code: def __init__(
      self,
      degree=True,
      onehot_maxdeg=0,
      AK=1,
      centrality=False,
      remove_edges="none",
      edge_noises_add=0,
      edge_noises_delete=0,
      group_degree=0,
  ):
      super(FeatureExpander, self).__init__("add", "source_to_target")
  
      self.degree = degree
      self.onehot_maxdeg = onehot_maxdeg
      self.AK = AK
      self.centrality = centrality
      self.remove_edges = remove_edges
      self.edge_noises_add = edge_noises_add
      self.edge_noises_delete = edge_noises_delete
      self.group_degree = group_degree
  
      # edge norm is used, and set A diag to it
      self.edge_norm_diag = 1e-8
  
imports: import torch
  import torch.nn
  import torch.nn.functional
  from torch_geometric.nn.conv import MessagePassing
  from torch_geometric.utils import degree, remove_self_loops, add_self_loops
label_desc: Use image node_id 1 to create a new FeatureExpander object from inherited base classes: MessagePassing with example: obj = FeatureExpander(degree, onehot_maxdeg, AK, centrality, remove_edges, edge_noises_add, edge_noises_delete, group_degree)