输入形状可变的Keras

我正在尝试构建一个模型,该模型应该接受两个具有可变长度的输入:

env_input1 = Input(shape=(None,),dtype='int32')
env_input2 = Input(shape=(None,dtype='int32')
env = concatenate([env_input1,env_input2])
env = Dense(50,activation='relu')(env)
env = Dense(100,activation='relu')(env)
env = Dense(50,activation='relu')(env)
env_output = Dense(1)(env)
env_model = Model(inputs=[env_input1,env_input2],outputs=[env_output])
adam_opt = Adam(lr=0.001,beta_1=0.9,beta_2=0.999,epsilon=None,decay=0.0,amsgrad=False)
env_model.compile(loss='mse',optimizer=adam_opt,metrics=['accuracy'])

我收到此错误:

  

TypeError:+不支持的操作数类型:“ NoneType”和“ int”

有什么建议解决此问题吗?

xiyangfenghuang 回答:输入形状可变的Keras

对于人工神经网络,您不能有可变长度的输入,因为网络中的第一密集层不知道要在训练之前初始化的权重尺寸

>

但是在卷积神经网络的情况下,您可能在输入时具有可变的图像尺寸,因为在Conv2D的情况下,所有输入参数都决定权重的尺寸。以后,如果我们使用CNN,我们将使用全局平均池化在CNN特征提取器之后成功添加密集层分类器。

本文链接:https://www.f2er.com/3134370.html

大家都在问