code: def test_non_bayesian_conv(self):
      x = tfn.Convolution(1, 5, 5, strides=2, padding="same")(
          tf.random.normal([3, 28, 28, 1])
      )
      self.assertShapeEqual(np.zeros([3, 14, 14, 5]), x)
  
imports: import functools
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import softmax_centered
  from tensorflow_probability.python.bijectors import softplus
  from tensorflow_probability.python.distributions import independent
  from tensorflow_probability.python.distributions import normal
  from tensorflow_probability.python.experimental import nn
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.internal import tf_keras
  from tensorflow_probability.python.util import deferred_tensor
label_desc: Use image node_id 2 for calling the ConvolutionTest obj's underlying member method code with example usage: obj.test_non_bayesian_conv() without return types