code: def _naive_categorical_exponentiated_quadratic(
      x, y, inverse_length_scale
  ):
      x_obs = x.shape[0]
      y_obs = y.shape[0]
      kernel_mat = np.zeros([x_obs, y_obs])
      for i in range(x_obs):
          for j in range(y_obs):
              dist_sq = 0.0
              for k, ls in enumerate(inverse_length_scale):
                  if x[i, k] != y[j, k]:
                      dist_sq += ls[x[i, k]] ** 2 + ls[y[j, k]] ** 2
              kernel_mat[i, j] = np.exp(-dist_sq / 2.0)
      return kernel_mat
  
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.experimental.psd_kernels import feature_scaled_with_categorical
  from tensorflow_probability.python.experimental.psd_kernels import feature_scaled_with_embedded_categorical
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.math import gradient
  from tensorflow_probability.python.math.psd_kernels import exponentiated_quadratic
  from tensorflow_probability.python.math.psd_kernels import feature_scaled
  from tensorflow_probability.python.math.psd_kernels import matern
label_desc: Use image node_id 1 for calling a global function with example usage: _naive_categorical_exponentiated_quadratic(x, y, inverse_length_scale) and returns: kernel_mat