code: def test3ddata_format_agnostic(self):
      c_last_layer = group_norm.GroupNorm(
          groups=5, create_scale=False, create_offset=False
      )
      c_first_layer = group_norm.GroupNorm(
          groups=5,
          create_scale=False,
          create_offset=False,
          data_format="NCW",
      )
  
      inputs = np.random.uniform(0, 10, [3, 4, 10]).astype(np.float32)
      scale = np.random.normal(size=(10,), loc=1.0)
      offset = np.random.normal(size=(10,))
  
      c_last_output = c_last_layer(inputs, scale, offset)
      inputs = jnp.transpose(inputs, [0, 2, 1])
      scale = jnp.reshape(scale, [-1, 1])
      offset = jnp.reshape(offset, [-1, 1])
      c_first_output = c_first_layer(inputs, scale, offset)
      c_first_output = jnp.transpose(c_first_output, [0, 2, 1])
  
      self.assertAllClose(
          c_last_output, c_first_output, atol=1e-5, rtol=1e-5
      )
  
imports: from absl.testing import absltest
  from absl.testing import parameterized
  from haiku._src import group_norm
  from haiku._src import initializers
  from haiku._src import test_utils
  import jax.numpy
  import numpy
label_desc: Use image node_id 20 for calling the GroupNormTest obj's underlying member method code with example usage: obj.test3ddata_format_agnostic() without return types