【发布时间】:2018-09-04 06:12:18
【问题描述】:
我目前正在尝试创建多个模型,这些模型将重用某些层,包括它们的权重。 我通过创建一个初始化这些层的列表来实现这一点,然后在创建每个单独的模型时调用它们。
column = []
column.append(Conv2D(self.out_filters, (3, 3), padding='same', kernel_initializer='he_normal', activation='relu'))
column.append(Conv2D(self.out_filters, (5, 5), padding='same', kernel_initializer='he_normal', activation='relu'))
然后在创建模型时
layer = column[0](input)
现在我的问题是,如何保存列表中所有层的权重?据我所知,keras 的保存功能只保存已正确构建的整个模型。
编辑:为了澄清,我想保存“列”列表,而不是最终模型。我在使用存储在“列”内的层时随机生成模型结构。因此,两个模型可能具有不同的架构,但它们共享权重(对一个模型的训练也会影响另一个模型的权重)。
【问题讨论】:
标签: python keras deep-learning conv-neural-network