class_docstr: Extends LayerDeepLift and DeepLiftShap algorithms and approximates SHAP
  values for given input `layer`.
  For each input sample - baseline pair it computes DeepLift attributions
  with respect to inputs or outputs of given `layer` averages
  resulting attributions across baselines. Whether to compute the attributions
  with respect to the inputs or outputs of the layer is defined by the
  input flag `attribute_to_layer_input`.
  More details about the algorithm can be found here:
  
  http://papers.nips.cc/paper/7062-a-unified-approach-to-interpreting-model-predictions.pdf
  
  Note that the explanation model:
      1. Assumes that input features are independent of one another
      2. Is linear, meaning that the explanations are modeled through
          the additive composition of feature effects.
  Although, it assumes a linear model for each explanation, the overall
  model across multiple explanations can be complex and non-linear.
docstr: Args:
  
      model (torch.nn.Module):  The reference to PyTorch model instance.
      layer (torch.nn.Module): Layer for which attributions are computed.
                    The size and dimensionality of the attributions
                    corresponds to the size and dimensionality of the layer's
                    input or output depending on whether we attribute to the
                    inputs or outputs of the layer.
docstr_tok: ["Args",":","model","(","torch.nn.Module",")",":","The","reference","to","PyTorch","model","instance",".","layer","(","torch.nn.Module",")",":","Layer","for","which","attributions","are","computed",".","The","size","and","dimensionality","of","the","attributions","corresponds","to","the","size","and","dimensionality","of","the","layer's","input","or","output","depending","on","whether","we","attribute","to","the","inputs","or","outputs","of","the","layer","."]
code: def __init__(self, model: Module, layer: Module) -> None:
      r"""
      Args:
  
          model (torch.nn.Module):  The reference to PyTorch model instance.
          layer (torch.nn.Module): Layer for which attributions are computed.
                        The size and dimensionality of the attributions
                        corresponds to the size and dimensionality of the layer's
                        input or output depending on whether we attribute to the
                        inputs or outputs of the layer.
      """
      LayerDeepLift.__init__(self, model, layer)
      DeepLiftShap.__init__(self, model)
  
imports: import typing
  from typing import Any, Callable, Sequence, Tuple, Union, cast
  import torch
  from torch import Tensor
  from torch.nn import Module
  from .deep_lift import DeepLift, DeepLiftShap
  from captum.attr._utils.attribution import LayerAttribution
  from captum.attr._utils.common import ExpansionTypes, _call_custom_attribution_func, _compute_conv_delta_and_format_attrs, _expand_additional_forward_args, _expand_target, _format_additional_forward_args, _format_baseline, _format_callable_baseline, _format_input, _tensorize_baseline, _validate_input
  from captum.attr._utils.gradient import apply_gradient_requirements, compute_layer_gradients_and_eval, undo_gradient_requirements
  from captum.attr._utils.typing import BaselineType, Literal, TargetType, TensorOrTupleOfTensorsGeneric
label_desc: Use image node_id 1 to create a new LayerDeepLiftShap object from inherited base classes: LayerDeepLift, DeepLiftShap with example: obj = LayerDeepLiftShap(model, layer)