code: def test_given_probability_vectors_when_estimate_kl_divergence_of_probabilities_then_returns_expected_result():
      assert estimate_kl_divergence_of_probabilities(
          np.array(
              [[0.25, 0.5, 0.125, 0.125], [0.5, 0.25, 0.125, 0.125]]
          ),
          np.array(
              [[0.5, 0.25, 0.125, 0.125], [0.25, 0.5, 0.125, 0.125]]
          ),
      ) == approx(
          0.25 * np.log(0.25 / 0.5) + 0.5 * np.log(0.5 / 0.25), abs=0.01
      )
  
file_path: dowhy/tests/gcm/test_divergence.py
imports: import numpy
  from flaky import flaky
  from pytest import approx
  from dowhy.gcm.divergence import auto_estimate_kl_divergence, estimate_kl_divergence_categorical, estimate_kl_divergence_continuous_clf, estimate_kl_divergence_continuous_knn, estimate_kl_divergence_of_probabilities, is_probability_matrix
label_desc: Use image node_id 3 for calling a global function with example usage: test_given_probability_vectors_when_estimate_kl_divergence_of_probabilities_then_returns_expected_result() without return types