class_docstr: TCAV object: runs TCAV for one target and a set of concepts.
  The static methods (get_direction_dir_sign, compute_tcav_score,
  get_directional_dir) invole getting directional derivatives and calculating
  TCAV scores. These are static because they might be useful independently,
  for instance, if you are developing a new interpretability method using
  CAVs.
  See https://arxiv.org/abs/1711.11279
docstr: Get the sign of directional derivative.
  
  Args:
      mymodel: a model class instance
      act: activations of one bottleneck to get gradient with respect to.
      cav: an instance of cav
      concept: one concept
      class_id: index of the class of interest (target) in logit layer.
      example: example corresponding to the given activation
  
  Returns:
      sign of the directional derivative
docstr_tok: ["Get","the","sign","of","directional","derivative",".","Args",":","mymodel",":","a","model","class","instance","act",":","activations","of","one","bottleneck","to","get","gradient","with","respect","to",".","cav",":","an","instance","of","cav","concept",":","one","concept","class_id",":","index","of","the","class","of","interest","(","target",")","in","logit","layer",".","example",":","example","corresponding","to","the","given","activation","Returns",":","sign","of","the","directional","derivative"]
code: def get_direction_dir_sign(
      mymodel, act, cav, concept, class_id, example
  ):
      """Get the sign of directional derivative.
  
      Args:
          mymodel: a model class instance
          act: activations of one bottleneck to get gradient with respect to.
          cav: an instance of cav
          concept: one concept
          class_id: index of the class of interest (target) in logit layer.
          example: example corresponding to the given activation
  
      Returns:
          sign of the directional derivative
      """
      # Grad points in the direction which DECREASES probability of class
      grad = np.reshape(
          mymodel.get_gradient(
              act, [class_id], cav.bottleneck, example
          ),
          -1,
      )
      dot_prod = np.dot(grad, cav.get_direction(concept))
      return dot_prod < 0
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from multiprocessing import dummy
  from six.moves import range
  from tcav.cav import CAV
  from tcav.cav import get_or_train_cav
  from tcav import run_params
  from tcav import utils
  import numpy
  import time
  import tensorflow
label_desc: Use image node_id 1 for calling the TCAV obj's underlying member method code with example usage: obj.get_direction_dir_sign(mymodel, act, cav, concept, class_id, example) and returns: unknown