class_docstr: Interface for wrappers that augment the input and reduce the analysis.
  
  This class is an interface for wrappers that:
  * augment the input to the analyzer by creating new samples.
  * reduce the returned analysis to match the initial input shapes.
  
  :param subanalyzer: The analyzer to be wrapped.
  :param augment_by_n: Number of samples to create.
docstr: Reduce input Xs by reshaping and taking the mean along
  the axis of augmentation.
docstr_tok: ["Reduce","input","Xs","by","reshaping","and","taking","the","mean","along","the","axis","of","augmentation","."]
code: def _reduce(self, Xs: OptionalList[Tensor]) -> list[Tensor]:
      """Reduce input Xs by reshaping and taking the mean along
      the axis of augmentation."""
      reshape = ilayers.AugmentationFromBatchAxis(self._augment_by_n)
      reduce = ilayers.ReduceMean()
      means = [reduce(reshape(X)) for X in ibackend.to_list(Xs)]
      return means
  
imports: from __future__ import annotations
  import numpy
  import tensorflow.keras.backend
  import tensorflow.keras.layers
  import tensorflow.keras.models
  import innvestigate.backend
  import innvestigate.layers
  from innvestigate.analyzer.base import AnalyzerBase
  from innvestigate.analyzer.network_base import AnalyzerNetworkBase
  from innvestigate.backend.types import OptionalList, Tensor
label_desc: Use image node_id 6 for calling the AugmentReduceBase obj's underlying member method code with example usage: obj._reduce(Xs) and returns: means