code: def __init__(
      self,
      num_features,
      eps=1e-5,
      momentum=0.1,
      affine=True,
      track_running_stats=True,
      complex_axis=1,
  ):
      super(ComplexBatchNorm, self).__init__()
      self.num_features = num_features // 2
      self.eps = eps
      self.momentum = momentum
      self.affine = affine
      self.track_running_stats = track_running_stats
  
      self.complex_axis = complex_axis
  
      if self.affine:
          self.Wrr = torch.nn.Parameter(torch.Tensor(self.num_features))
          self.Wri = torch.nn.Parameter(torch.Tensor(self.num_features))
          self.Wii = torch.nn.Parameter(torch.Tensor(self.num_features))
          self.Br = torch.nn.Parameter(torch.Tensor(self.num_features))
          self.Bi = torch.nn.Parameter(torch.Tensor(self.num_features))
      else:
          self.register_parameter("Wrr", None)
          self.register_parameter("Wri", None)
          self.register_parameter("Wii", None)
          self.register_parameter("Br", None)
          self.register_parameter("Bi", None)
  
      if self.track_running_stats:
          self.register_buffer("RMr", torch.zeros(self.num_features))
          self.register_buffer("RMi", torch.zeros(self.num_features))
          self.register_buffer("RVrr", torch.ones(self.num_features))
          self.register_buffer("RVri", torch.zeros(self.num_features))
          self.register_buffer("RVii", torch.ones(self.num_features))
          self.register_buffer(
              "num_batches_tracked", torch.tensor(0, dtype=torch.long)
          )
      else:
          self.register_parameter("RMr", None)
          self.register_parameter("RMi", None)
          self.register_parameter("RVrr", None)
          self.register_parameter("RVri", None)
          self.register_parameter("RVii", None)
          self.register_parameter("num_batches_tracked", None)
      self.reset_parameters()
  
imports: import torch
  import torch.nn
  import torch.nn.functional
label_desc: Use image node_id 1 to create a new ComplexBatchNorm object from inherited base classes: torch.nn with example: obj = ComplexBatchNorm(num_features, eps, momentum, affine, track_running_stats, complex_axis)