【发布时间】:2020-08-19 11:15:00
【问题描述】:
我有一个在 Keras 中训练的预训练模型。
我正在尝试在另一个任务中使用该模型,但我不需要所有层,只需要前 4 个卷积层。
我将模型保存在“keras_pretrained_model.h5”中
是否可以使用“.h5”文件中预训练模型的前 4 个卷积层的权重来初始化新模型的前 4 个卷积层?
是否总是需要首先加载整个预训练模型??
预训练模型实际上占用了大量空间,我不确定在使用权重初始化新模型后如何删除预训练模型。据我了解,使用tf.keras.backend.clear_session() 将清除与旧模型一起创建的新模型。
所以,我的问题是
- 有没有办法在不加载整个预训练模型的情况下初始化新模型层中的权重?
- 如果我必须加载整个预训练模型,如何只删除预训练模型而不以任何方式损害新模型?
【问题讨论】:
标签: python tensorflow keras neural-network tf.keras