code: def _maybe_assert_float_matrix(logu, validate_args):
      """Assertion check for the scores matrix to be float type."""
      logu = tf.convert_to_tensor(
          logu, dtype_hint=tf.float32, name="logu"
      )
  
      if not dtype_util.is_floating(logu.dtype):
          raise TypeError("Input argument must be `float` type.")
  
      assertions = []
      # Check scores is a matrix.
      msg = "Input argument must be a (batch of) matrix."
      rank = tensorshape_util.rank(logu.shape)
      if rank is not None:
          if rank < 2:
              raise ValueError(msg)
      elif validate_args:
          assertions.append(
              assert_util.assert_rank_at_least(logu, 2, msg)
          )
  
      # Check scores has the shape [..., N, M], M >= N
      msg = "Input argument must be a (batch of) matrix of the shape [N, M], M > N."
      if rank is not None and tensorshape_util.is_fully_defined(
          logu.shape[-2:]
      ):
          if logu.shape[-2] > logu.shape[-1]:
              raise ValueError(msg)
      elif validate_args:
          n, m = tf.unstack(logu.shape[-2:])
          assertions.append(
              assert_util.assert_greater_equal(m, n, message=msg)
          )
      return assertions
  
file_path: probability/tensorflow_probability/python/vi/mutual_information.py
imports: import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import tensorshape_util
label_desc: Use image node_id 5 for calling a global function with example usage: _maybe_assert_float_matrix(logu, validate_args) and returns: assertions