I already posted this issue on Github (https://github.com/awslabs/keras-apache-mxnet/issues/240), however without response. I hope someone here can help me.
Suppose I want to implement a very simple inception-like network with
channels_first, consisting of a Conv3D and MaxPooling layer in parallel which are then concatenated:
def simple_inception_network(input_shape=(1,64,64,64)): inputs = Input(input_shape) A = Conv3D(8, 3, padding='same')(inputs) # A.shape = (None, 8, 64, 64, 64) B = MaxPooling3D(pool_size=(2,2,2), strides=(1,1,1), padding='same')(inputs) # B.shape = (None, 1, 64, 64, 64) C = concatenate([A, B], axis=1) # C.shape = (None, 9, 64, 64, 64) D = Conv3D(4, 3, padding='same')(C)
Then I get the following error:
mxnet.base.MXNetError: Error in operator concat0: [15:28:28] C:\Jenkins\workspace\mxnet-tag\mxnet\src\operator\nn\concat.cc:66: Check failed: shape_assign(&(*in_shape)[i], dshape) Incompatible input shape: expected [0,0,64,64,64], got [0,1,64,65,65]
This is not the case with the TensorFlow backend in Keras.
How can this issue be resolved?