code: def test3DDataFormatAgnostic(self):
      c_last_layer = axis_norm.LayerNorm(
          [1], create_scale=False, create_offset=False
      )
      c_first_layer = axis_norm.LayerNorm(
          [2],
          create_scale=False,
          create_offset=False,
          data_format="NCW",
      )
  
      inputs = tf.random.uniform([3, 4, 5], 0, 10)
      scale = tf.random.normal((5,), mean=1.0)
      offset = tf.random.normal((5,))
  
      c_last_output = c_last_layer(inputs, scale, offset)
      inputs = tf.transpose(inputs, [0, 2, 1])
      scale = tf.reshape(scale, [-1, 1])
      offset = tf.reshape(offset, [-1, 1])
      c_first_output = c_first_layer(inputs, scale, offset)
      c_first_output = tf.transpose(c_first_output, [0, 2, 1])
  
      self.assertAllClose(
          c_last_output.numpy(),
          c_first_output.numpy(),
          atol=1e-5,
          rtol=1e-5,
      )
  
imports: from absl.testing import parameterized
  import numpy
  from sonnet.src import axis_norm
  from sonnet.src import initializers
  from sonnet.src import test_utils
  import tensorflow
label_desc: Use image node_id 21 for calling the LayerNormTest obj's underlying member method code with example usage: obj.test3DDataFormatAgnostic() without return types