【发布时间】:2019-04-25 22:31:29
【问题描述】:
我只想在 keras 中连接选定的频道,但是当我这样做时,它显示为错误。
我尝试获取感兴趣的通道并使用连接函数来合并两个输出。
def cifar10ClassifierTransfer(input_img, conv2_high):
# Add additional inputs to
conv1_1 = (Conv2D(32, (3,3), padding='same', kernel_regularizer=regularizers.l2(weight_decay), input_shape=x_train.shape[1:], activation='elu'))(input_img)
conv1_2 = BatchNormalization()(conv1_1)
conv2_1 = (Conv2D(32, (3,3), padding='same', activation= 'elu',kernel_regularizer=regularizers.l2(weight_decay)))(conv1_2)
conv2_high = conv2_high[:,:,:,[1,2,3]]
concat_layer = keras.layers.merge.Concatenate(axis=3)([conv2_1,conv2_high])
flat = Flatten()(concat_layer)
out = Dense(num_classes, activation='softmax')(flat)
return out
我预计频道数量会增加。如果我没有指定要合并的频道,它可以正常工作,但是当我选择频道时,会出现以下错误
TypeError: Only integers, slices (`:`), ellipsis (`...`), tf.newaxis (`None`) and scalar tf.int32/tf.int64 tensors are valid indices, got [1, 2, 3]
我们如何选择要连接的频道而不是连接所有内容?
【问题讨论】:
标签: python-3.x tensorflow keras