Керас: умножить с постоянным - PullRequest
0 голосов
/ 31 января 2019

Возможно ли x*a со входа size(None, None, 3) в керасе?Например, входные данные x и constant a: x(batch,None,None,1024)*a(batch,1).

Я использую входные данные size (64, 64, 3) в последовательности, но тестовые данные должны использовать переменные входные размеры.Размер теста не может быть скорректирован для правильной обработки изображения.

Я пытаюсь Lambda function(lambda x : x * a)(seq).Тогда у меня нет проблем в коде.И затем, я запускаю функцию model.fit, я получаю ошибку:

------------->>tensorflow.python.framework.errors_impl.InvalidArgumentError: Incompatible shapes: [7,4,4,1024] vs. [7,1]. 

.

conv5 = Conv2D(1024, 3, activation = 'relu', padding = 'same', kernel_initializer = 'he_normal')(pool4)
conv5 = Conv2D(1024, 3, activation = 'relu', padding = 'same', kernel_initializer = 'he_normal')(conv5)

conv_c = Conv2D(num_classes, 1, activation='softmax')(conv5)
conv_c1 = GlobalAveragePooling2D(name="class_output")(conv_c)

conv_c1_1 = conv_c1[:, 0:1]
conv_c1_2 = conv_c1[:, 1:2]
conv_c1_3 = conv_c1[:, 2:3]

conv5_b = Lambda(lambda x: x * conv_c1_1)(conv5) #conv5:Tensor(shape=(?, 4, 4, 1024))
conv5_h = Lambda(lambda x: x * conv_c1_2)(conv5) #conv_c1_1: Tensor(shape=(?, 1))
conv5_r = Lambda(lambda x: x * conv_c1_3)(conv5)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...