class_docstr: Expected Calibration Error (ECE)
  
  Args:
      n_cls (int): number of existing target classes
      n_bins (int): number of bins to discretize the uncertainty.
  
  References:
      https://arxiv.org/pdf/1706.04599.pdf
class_docstr_tok: ["Expected","Calibration","Error","(","ECE",")","Args",":","n_cls","(","int",")",":","number","of","existing","target","classes","n_bins","(","int",")",":","number","of","bins","to","discretize","the","uncertainty",".","References",":","https",":","\/\/arxiv.org\/pdf\/1706.04599.pdf"]
code: def _acc(self):
      accuracy_per_class = np.zeros(
          [self.n_cls, self.n_bins], dtype=float
      )
      for cls in range(self.n_cls):
          accuracy_per_class[cls, :] = self.tp[cls, :] / np.maximum(
              1, self.samples[cls, :]
          )
      return accuracy_per_class
  
imports: import dataclasses
  import math
  import warnings
  from collections import defaultdict
  import numpy
  import torch
  from sklearn.metrics import confusion_matrix, auc
  from baal.utils.array_utils import to_prob
label_desc: Use image node_id 3 for calling the ECE_PerCLs obj's underlying member method code with example usage: obj._acc() and returns: accuracy_per_class