code: def test_crf_binary_score(dtype):
      tag_indices = np.array([1, 2, 1, 0], dtype=np.int32)
      transition_params = np.array(
          [[-3, 5, -2], [3, 4, 1], [1, 2, 1]], dtype=dtype
      )
      sequence_lengths = np.array(3, dtype=np.int32)
      binary_score = crf_binary_score(
          tag_indices=tf.expand_dims(tag_indices, 0),
          sequence_lengths=tf.expand_dims(sequence_lengths, 0),
          transition_params=tf.constant(transition_params),
      )
      binary_score = tf.squeeze(binary_score, [0])
      expected_binary_score = sum(
          transition_params[tag_indices[i], tag_indices[i + 1]]
          for i in range(sequence_lengths - 1)
      )
      np.testing.assert_allclose(binary_score, expected_binary_score)
  
file_path: rasa/tests/utils/tensorflow/test_crf.py
imports: import itertools
  import pytest
  import numpy
  import tensorflow
  from rasa.utils.tensorflow.crf import crf_sequence_score, crf_unary_score, crf_binary_score, crf_log_norm, crf_log_likelihood
label_desc: Use image node_id 5 for calling a global function with example usage: test_crf_binary_score(dtype) without return types