class_docstr: Plugin metric for the Average Mean Class Accuracy (AMCA).
  
  The AMCA is tracked for the classes and streams defined in the constructor.
  
  In addition, by default, the results obtained through the periodic
  evaluation (mid-training validation) mechanism are ignored.
class_docstr_tok: ["Plugin","metric","for","the","Average","Mean","Class","Accuracy","(","AMCA",")",".","The","AMCA","is","tracked","for","the","classes","and","streams","defined","in","the","constructor",".","In","addition",",","by","default",",","the","results","obtained","through","the","periodic","evaluation","(","mid-training","validation",")","mechanism","are","ignored","."]
docstr: Instantiates the AMCA plugin metric.
  
  :param classes: The classes to track. Refer to :class:`MultiStreamAMCA`
      for more details.
  :param streams: The streams to track. Defaults to None, which means that
      all streams will be considered. Beware that, when creating instances
      of this class using the :func:`amca_metrics` helper, the resulting
      metric will only track the "test" stream by default.
  :param ignore_validation: Defaults to True, which means that periodic
      evaluations will be ignored (recommended).
docstr_tok: ["Instantiates","the","AMCA","plugin","metric",".",":","param","classes",":","The","classes","to","track",".","Refer","to",":","class",":","`","MultiStreamAMCA","`","for","more","details",".",":","param","streams",":","The","streams","to","track",".","Defaults","to","None",",","which","means","that","all","streams","will","be","considered",".","Beware","that",",","when","creating","instances","of","this","class","using","the",":","func",":","`","amca_metrics","`","helper",",","the","resulting","metric","will","only","track","the","``","test","''","stream","by","default",".",":","param","ignore_validation",":","Defaults","to","True",",","which","means","that","periodic","evaluations","will","be","ignored","(","recommended",")","."]
code: def __init__(
      self, classes=None, streams=None, ignore_validation=True
  ):
      """
      Instantiates the AMCA plugin metric.
  
      :param classes: The classes to track. Refer to :class:`MultiStreamAMCA`
          for more details.
      :param streams: The streams to track. Defaults to None, which means that
          all streams will be considered. Beware that, when creating instances
          of this class using the :func:`amca_metrics` helper, the resulting
          metric will only track the "test" stream by default.
      :param ignore_validation: Defaults to True, which means that periodic
          evaluations will be ignored (recommended).
      """
      self._ms_amca = MultiStreamAMCA(classes=classes, streams=streams)
      self._ignore_validation = ignore_validation
  
      self._is_training = False
      super().__init__(
          self._ms_amca, reset_at="never", emit_at="stream", mode="eval"
      )
  
imports: from typing import Callable, Dict, Iterable, List, Union, TYPE_CHECKING, Optional, Sequence, Set
  from collections import defaultdict, OrderedDict
  import torch
  from torch import Tensor
  from avalanche.evaluation import Metric, PluginMetric, _ExtendedGenericPluginMetric, _ExtendedPluginMetricValue
  from avalanche.evaluation.metric_utils import generic_get_metric_name
  from avalanche.evaluation.metrics.class_accuracy import ClassAccuracy, TrackedClassesType
label_desc: Use image node_id 1 to create a new AMCAPluginMetric object from inherited base classes: _ExtendedGenericPluginMetric with example: obj = AMCAPluginMetric(classes, streams, ignore_validation)