为什么在Keras中尝试构建具有多个输入的体系结构时会出错?

iBM*_*iBM 5 python keras tensorflow

我正在尝试在Keras中构建具有多个输入的体系结构。如1中所述,我使用了类似的代码,如下所示:

model_merged = Model(inputs=[model_parts1, model_parts2,
                             model_parts3, model_parts4])
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

TypeError: _init_subclassed_network() got an unexpected keyword argument 'inputs'
Run Code Online (Sandbox Code Playgroud)

我在网上搜索过,有些人提到Keras应该更新到2.0.0版本。虽然我安装了2.2.2版,但我认为这不是问题。

谁能帮我解决这个错误?

Mit*_*iku 8

Keras功能api模型需要两个位置参数,即inputsoutputs。错误

TypeError:_init_subclassed_network()获得了意外的关键字参数'inputs'

未指定模型的输出时抛出该异常。

input1 = keras.layers.Input(shape=(8,))
input2 = keras.layers.Input(shape=(8,))
h1 = keras.layers.Concatenate()([input1, input2])
model = keras.models.Model(inputs=[input1, input2])
Run Code Online (Sandbox Code Playgroud)

这将引发以下错误

TypeError: _init_subclassed_network() got an unexpected keyword argument 'inputs'
Run Code Online (Sandbox Code Playgroud)

但是,如果指定了输出,则可以正常工作

model = keras.models.Model(inputs=[input1, input2], outputs=h1)
Run Code Online (Sandbox Code Playgroud)

outputs不带inputs参数的情况下传递参数时,将引发类似的异常。

TypeError: _init_subclassed_network() got an unexpected keyword argument 'inputs'
Run Code Online (Sandbox Code Playgroud)
TypeError: _init_subclassed_network() got an unexpected keyword argument 'outputs'
Run Code Online (Sandbox Code Playgroud)

如果错误消息本来可以提供更多信息,我认为这将非常有帮助。在inputsoutputs参数是“并不意外”这里的论点。如果错误消息将是

model = keras.models.Model(inputs=[input1, input2], outputs=h1)
Run Code Online (Sandbox Code Playgroud)

对于仅inputs指定参数的前一种情况,

model = keras.models.Model(outputs=h1)
Run Code Online (Sandbox Code Playgroud)

对于后面仅outputs指定参数的情况。