如何仅为某些图层加载权重?

时间:2017-04-08 12:56:06

标签: keras

我想从model_trained获取某些图层的权重 - 不是所有图层(因为架构不同),并用它初始化model_untrained。我怎么能用Keras做到这一点?

1 个答案:

答案 0 :(得分:3)

如果你有一个返回Keras模型(example)的函数create_model(),你可以像这样初始化它的权重:

from keras.models import load_model

model_untrained = create_model()
model_trained = load_model('trained_model.h5')

extracted_weights = model_trained.layers[0].get_weights()
model_untrained.layers[0].set_weights(extracted_weights)