class_docstr: Computes attribution using deconvolution. Deconvolution
  computes the gradient of the target output with respect to the input,
  but gradients of ReLU functions are overridden so that the gradient
  of the ReLU input is simply computed taking ReLU of the output gradient,
  essentially only propagating non-negative gradients (without
  dependence on the sign of the ReLU input).
  
  More details regarding the deconvolution algorithm can be found
  in these papers:
  https://arxiv.org/abs/1311.2901
  https://link.springer.com/chapter/10.1007/978-3-319-46466-4_8
  
  Warning: Ensure that all ReLU operations in the forward function of the
  given model are performed using a module (nn.module.ReLU).
  If nn.functional.ReLU is used, gradients are not overridden appropriately.
class_docstr_tok: ["Computes","attribution","using","deconvolution",".","Deconvolution","computes","the","gradient","of","the","target","output","with","respect","to","the","input",",","but","gradients","of","ReLU","functions","are","overridden","so","that","the","gradient","of","the","ReLU","input","is","simply","computed","taking","ReLU","of","the","output","gradient",",","essentially","only","propagating","non-negative","gradients","(","without","dependence","on","the","sign","of","the","ReLU","input",")",".","More","details","regarding","the","deconvolution","algorithm","can","be","found","in","these","papers",":","https",":","\/\/arxiv.org\/abs\/1311.2901","https",":","\/\/link.springer.com\/chapter\/10.1007\/978-3-319-46466-4_8","Warning",":","Ensure","that","all","ReLU","operations","in","the","forward","function","of","the","given","model","are","performed","using","a","module","(","nn.module.ReLU",")",".","If","nn.functional.ReLU","is","used",",","gradients","are","not","overridden","appropriately","."]
docstr: Args:
  
      model (nn.Module):  The reference to PyTorch model instance.
docstr_tok: ["Args",":","model","(","nn.Module",")",":","The","reference","to","PyTorch","model","instance","."]
code: def __init__(self, model: Module) -> None:
      r"""
      Args:
  
          model (nn.Module):  The reference to PyTorch model instance.
      """
      ModifiedReluGradientAttribution.__init__(
          self, model, use_relu_grad_output=True
      )
  
imports: import warnings
  from typing import Any, List, Tuple, Union
  import torch
  import torch.nn.functional
  from captum._utils.common import _format_output, _format_tensor_into_tuples, _is_tuple, _register_backward_hook
  from captum._utils.gradient import apply_gradient_requirements, undo_gradient_requirements
  from captum._utils.typing import TargetType, TensorOrTupleOfTensorsGeneric
  from captum.attr._utils.attribution import GradientAttribution
  from captum.log import log_usage
  from torch import Tensor
  from torch.nn import Module
  from torch.utils.hooks import RemovableHandle
label_desc: Use image node_id 1 to create a new Deconvolution object from inherited base classes: ModifiedReluGradientAttribution with example: obj = Deconvolution(model)