class_docstr: Jacobian Saliency Map Attack
  This includes Algorithm 1 and 3 in v1, https://arxiv.org/abs/1511.07528v1
  
  :param predict: forward pass function.
  :param num_classes: number of clasess.
  :param clip_min: mininum value per input dimension.
  :param clip_max: maximum value per input dimension.
  :param gamma: highest percentage of pixels can be modified
  :param theta: perturb length, range is either [theta, 0], [0, theta]
class_docstr_tok: ["Jacobian","Saliency","Map","Attack","This","includes","Algorithm","1","and","3","in","v1",",","https",":","\/\/arxiv.org\/abs\/1511.07528v1",":","param","predict",":","forward","pass","function",".",":","param","num_classes",":","number","of","clasess",".",":","param","clip_min",":","mininum","value","per","input","dimension",".",":","param","clip_max",":","maximum","value","per","input","dimension",".",":","param","gamma",":","highest","percentage","of","pixels","can","be","modified",":","param","theta",":","perturb","length",",","range","is","either","[","theta",",","0","]",",","[","0",",","theta","]"]
code: def _sum_pair(self, grads, dim_x):
      return grads.view(-1, dim_x, 1) + grads.view(-1, 1, dim_x)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  import numpy
  import torch
  from advertorch.utils import clamp
  from advertorch.utils import jacobian
  from .base import Attack
  from .base import LabelMixin
label_desc: Use image node_id 3 for calling the JacobianSaliencyMapAttack obj's underlying member method code with example usage: obj._sum_pair(grads, dim_x) and returns: unknown