Последовательность слоев Conv Autoencoder

Привязываю настроить простой сверточный автоэнкодер:

Слой (тип) Параметр формы вывода #

input (InputLayer) (Нет, 64, 64, 1) 0


encoder_conv_1 (Conv2D) (Нет, 64, 64, 32) 320


max_pooling2d_1 (MaxPooling2 (Нет, 32, 32, 32) 0


decoder_conv_1 (Conv2D) (Нет, 30, 30, 32) 9248


up_sampling2d_1 (UpSampling2 (Нет, 60, 60, 32) 0


вывод (Conv2D) (Нет, 60, 60, 1) 289

Почему мой последний слой не возвращается к 64, 64, 1? Или, скорее, почему уровень decoder_conv_1 переходит на 30, 30, 32?


person Sapiens    schedule 20.06.2020    source источник


Ответы (1)


вы пропускаете то же самое. попробуй таким образом ...

inp = Input((64,64,1))
c = Conv2D(32, 3, padding='same')(inp)
c = MaxPool2D()(c)
c = Conv2D(32, 3, padding='same')(c) # <=== padding same
c = UpSampling2D()(c)
out = Conv2D(1, 3, padding='same')(c)

m = Model(inp, out)
m.summary()

_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
input_5 (InputLayer)         [(None, 64, 64, 1)]       0         
_________________________________________________________________
conv2d_8 (Conv2D)            (None, 64, 64, 32)        320       
_________________________________________________________________
max_pooling2d_3 (MaxPooling2 (None, 32, 32, 32)        0         
_________________________________________________________________
conv2d_9 (Conv2D)            (None, 32, 32, 32)        9248      
_________________________________________________________________
up_sampling2d_2 (UpSampling2 (None, 64, 64, 32)        0         
_________________________________________________________________
conv2d_10 (Conv2D)           (None, 64, 64, 1)         289       
=================================================================
person Marco Cerliani    schedule 20.06.2020
comment
Это решило это. Не знаю, почему у меня отсутствовало свойство padding на последнем слое. Спасибо. - person Sapiens; 20.06.2020