code: def test_transpose_unknown_input_dim(self):
      network = layers.join(
          layers.Input((None, 10, 20)),
          layers.Transpose((0, 2, 1, 3)),
      )
      self.assertShapesEqual(network.output_shape, (None, 10, None, 20))
  
      value = asfloat(np.random.random((12, 100, 10, 20)))
      output_value = self.eval(network.output(value))
      self.assertEqual(output_value.shape, (12, 10, 100, 20))
  
      value = asfloat(np.random.random((12, 33, 10, 20)))
      output_value = self.eval(network.output(value))
      self.assertEqual(output_value.shape, (12, 10, 33, 20))
  
imports: import numpy
  from neupy import layers
  from neupy.utils import asfloat, tf_utils
  from neupy.exceptions import LayerConnectionError
  from base import BaseTestCase
label_desc: Use image node_id 2 for calling the TransposeTestCase obj's underlying member method code with example usage: obj.test_transpose_unknown_input_dim() without return types