例如我有3中间层的模型:如何将模型分为两个独立模型?
Model1 : Input1 --> L1 --> L2 --> L3
,
并希望将其分割成
Model2 : Input2 --> L1 --> L2
和Model3 : Input3 --> L3
。
很容易将这两个堆叠起来以获得使用功能API的第一个API。但我不知道如何做相反的事情。
第一个拆分模型可以通过:Model(Input1, L2.output)
获得,但第二个并不那么容易。什么是最简单的方法来做到这一点?
示例代码:
# the first model
input1 = Input(shape=(784,))
l1 = Dense(64, activation='relu')(inputs)
l2 = Dense(64, activation='relu')(l1)
l3 = Dense(10, activation='softmax')(l2)
model1 = Model(inputs, l3)
我想建立描述model2
和model3
该共享权重以上model1
而MODEL1已经存在(也许从磁盘加载)。
谢谢!
澄清模型(Input3,L3)不工作?为什么? – putonspectacles
你能写一些代码作为你想要实现的例子吗? – putonspectacles
@putonspectacles感谢您的回复。模型(Input3,L3)是不可能的,因为Input3不存在,L3的输入是L2的输出。我认为这里的关键是如何正确地重置L3的输入。我更新了一些示例代码。 –