池化层和之前的卷积层的深度应该相同。但这不一样,请告诉我解决方案
The depth of pooling layer and prior convolution layer should same. But it is not same, kindly let me know the solutions
model = Sequential()
model.add(keras.layers.InputLayer(input_shape=input_shape))
model.add(keras.layers.convolutional.Conv2D(filters, filtersize, strides=(1, 1), padding='valid', data_format="channels_last", activation='relu'))
model.summary()
输出摘要为:
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_10 (InputLayer) (None, 300, 300, 3) 0
_________________________________________________________________
conv2d_16 (Conv2D) (None, 296, 296, 10) 760
_________________________________________________________________
max_pooling2d_13 (MaxPooling (None, 296, 148, 5) 0
_________________________________________________________________
上面 conv2d_16 第 10 层是深度,而最大池化层 5,这怎么可能?
您很可能在池化层中使用了设置 data_format='channels_first'
。
我看到您将 'channels_last'
添加到卷积层,但您可能没有将其添加到池化层。
如果您想更改 keras 的默认设置,请找到 <user>/.keras/keras.json
文件并在那里进行更改。
model = Sequential()
model.add(keras.layers.InputLayer(input_shape=input_shape))
model.add(keras.layers.convolutional.Conv2D(filters, filtersize, strides=(1, 1), padding='valid', data_format="channels_last", activation='relu'))
model.summary()
输出摘要为:
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_10 (InputLayer) (None, 300, 300, 3) 0
_________________________________________________________________
conv2d_16 (Conv2D) (None, 296, 296, 10) 760
_________________________________________________________________
max_pooling2d_13 (MaxPooling (None, 296, 148, 5) 0
_________________________________________________________________
上面 conv2d_16 第 10 层是深度,而最大池化层 5,这怎么可能?
您很可能在池化层中使用了设置 data_format='channels_first'
。
我看到您将 'channels_last'
添加到卷积层,但您可能没有将其添加到池化层。
如果您想更改 keras 的默认设置,请找到 <user>/.keras/keras.json
文件并在那里进行更改。