Функция Conv2d в керасе и понимание перехода на нижние уровни - PullRequest
0 голосов
/ 09 мая 2019

У меня следующий код. Он имеет пять слоев свертки с 128 (3X3) фильтрами, а затем уменьшается на 2 как 64 (3X3), 32 (3X3), 16 (3X3) и 8 (3X3). Я хочу понять вывод первого слоя, второго слоя, как я могу его визуализировать, а также, пожалуйста, направьте меня, когда мы перейдем к следующему слою, мы увидим, что вывод первого слоя намного больше, чем ввод второго слоя, так как мы управляем Это?

А также в последней строке, когда мы объединяем, это сохраняет в каком порядке (это вывод 8X8)? Пожалуйста, помогите мне разобраться с этим вопросом, так как я новичок в Pyhton. Код выглядит следующим образом.

ds = 2

t1 = Input((None, None, 1)) (t1 is grey scale image of 35X35)
conv1a = Conv2D(128, (3, 3), activation='relu', padding='same')(t1)
conv2a = Conv2D(128 // ds, (5, 5), activation='relu', padding='same')(conv1a)
conv3a = Conv2D(128 // (ds * 2), (3, 3), activation='relu', padding='same')(conv2a)
conv4a = Conv2D(128 // (ds ** 3), (5, 5), activation='relu', padding='same')(conv3a)
conv5a = Conv2D(128 // (ds ** 4), (3, 3), activation='relu', padding='same')(conv4a)

fl = Input((None, None, 1)) (fl i also a grey scale image of size 35X35)
conv1b = Conv2D(128, (3, 3), activation='relu', padding='same')(fl)
conv2b = Conv2D(128 // ds, (5, 5), activation='relu', padding='same')(conv1b)
conv3b = Conv2D(128 // (ds * 2), (3, 3), activation='relu', padding='same')(conv2b)
conv4b = Conv2D(128 // (ds ** 3), (5, 5), activation='relu', padding='same')(conv3b)
conv5b = Conv2D(128 // (ds ** 4), (3, 3), activation='relu', padding='same')(conv4b)

concat = concatenate([conv5a, conv5b], axis=-1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...