code: def test_shape_inference_static_unknown_shape(
      self, kernel_size, strides, padding, output_padding
  ):
      if backend.config.image_data_format() == "channels_last":
          input_shape = (None, None, 3)
          output_tensor_shape = (None, None, None, 2)
      else:
          input_shape = (3, None, None)
          output_tensor_shape = (None, 2, None, None)
      x = layers.Input(shape=input_shape)
      x = layers.Conv2DTranspose(
          filters=2,
          kernel_size=kernel_size,
          strides=strides,
          padding=padding,
          output_padding=output_padding,
          dilation_rate=1,
      )(x)
      self.assertEqual(x.shape, output_tensor_shape)
  
imports: import numpy
  import pytest
  from absl.testing import parameterized
  from keras import backend
  from keras import layers
  from keras import testing
  from keras.backend.common.backend_utils import _convert_conv_tranpose_padding_args_from_keras_to_torch
  from keras.backend.common.backend_utils import compute_conv_transpose_output_shape
  from keras.backend.common.backend_utils import compute_conv_transpose_padding_args_for_jax
label_desc: Use image node_id 5 for calling the ConvTransposeCorrectnessTest obj's underlying member method code with example usage: obj.test_shape_inference_static_unknown_shape(kernel_size, strides, padding, output_padding) without return types