code: def __init__(
      self,
      models: Sequence[Module],
      classes: Sequence[str],
      features: List[BaseFeature],
      score_func: Optional[Callable] = None,
      use_label_for_attr: bool = True,
  ) -> None:
      self.models = models
      self.classes = classes
      self.features = features
      self.score_func = score_func
      self.use_label_for_attr = use_label_for_attr
      self.baseline_cache: dict = {}
      self.transformed_input_cache: dict = {}
  
file_path: captum/captum/insights/attr_vis/attribution_calculation.py
imports: import inspect
  from collections import namedtuple
  from typing import Callable, cast, Dict, Iterable, List, Optional, Sequence, Tuple, Union
  import torch
  from captum._utils.common import _run_forward, safe_div
  from captum.insights.attr_vis.config import ATTRIBUTION_METHOD_CONFIG, ATTRIBUTION_NAMES_TO_METHODS
  from captum.insights.attr_vis.features import BaseFeature
  from torch import Tensor
  from torch.nn import Module
label_desc: Use image node_id 1 to create a new AttributionCalculation object  with example: obj = AttributionCalculation(models, classes, features, score_func, use_label_for_attr)