我只想使用输入进行标量乘法
int_input = Input(shape=(1,), name='depth')
int_sigmoid = (Activation('sigmoid')(depthInput))
imageInput = Input(shape=(100, 100, 1), name='image')
imageInputNormalized = BatchNormalization()(imageInput)
con1 = Conv2D(64, (2, 2), padding='same', name='con1')(Activation('relu')(imageInputNormalized))
mp1 = MaxPooling2D(pool_size=2)(con1)
con2 = Conv2D(128, (2, 2), padding='same', name='con2')(Activation('relu')(mp1))
l1 = Lambda(lambda x: x ** depthSigmoid)(con2)
我遇到错误
tensorflow.python.framework.errors_impl.InvalidArgumentError: Incompatible shapes: [20,50,50,128] vs. [20,1]
答案 0 :(得分:1)
您的代码示例似乎不完整,或者可能缺少定义了多个变量的地方。我会考虑添加更多的代码。
我在最后一行中注意到的是,您没有执行标量乘法。 **
不用于标量乘法,可能需要将其更改为*
。
希望这有助于解决您的问题并带来好运!