docstr: Computes the DPP of a matrix.
docstr_tok: ["Computes","the","DPP","of","a","matrix","."]
code: def dpp_style(self, submethod):
      """Computes the DPP of a matrix."""
      det_entries = []
      if submethod == "inverse_dist":
          for i in range(self.total_CFs):
              for j in range(self.total_CFs):
                  det_temp_entry = tf.divide(
                      1.0,
                      tf.add(
                          1.0,
                          self.compute_dist(self.cfs[i], self.cfs[j]),
                      ),
                  )
                  if i == j:
                      det_temp_entry = tf.add(det_temp_entry, 0.0001)
                  det_entries.append(det_temp_entry)
  
      elif submethod == "exponential_dist":
          for i in range(self.total_CFs):
              for j in range(self.total_CFs):
                  det_temp_entry = tf.divide(
                      1.0,
                      tf.exp(
                          self.compute_dist(self.cfs[i], self.cfs[j])
                      ),
                  )
                  det_entries.append(det_temp_entry)
  
      det_entries = tf.reshape(
          det_entries, [self.total_CFs, self.total_CFs]
      )
      diversity_loss = tf.compat.v1.matrix_determinant(det_entries)
      return diversity_loss
  
imports: import copy
  import random
  import timeit
  import numpy
  import tensorflow
  from dice_ml import diverse_counterfactuals
  from dice_ml.counterfactual_explanations import CounterfactualExplanations
  from dice_ml.explainer_interfaces.explainer_base import ExplainerBase
label_desc: Use image node_id 12 for calling the DiceTensorFlow2 obj's underlying member method code with example usage: obj.dpp_style(submethod) and returns: diversity_loss