获取keras中间层输出模型保存与加载

Posted 沈子恒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取keras中间层输出模型保存与加载相关的知识,希望对你有一定的参考价值。

1. 获取keras中间层输出

# model summary and plot
import keras
from keras.models import Model
from keras.utils  import plot_model

DocEncoder.summary()
DocEncoder.plot_model()

model.summary()
model.plot_model()

# get mid-output from parent-graph 
from keras import backend as K

attn_layer = K.function(inputs=model.input, outputs=model.layers[-4].output)
attn_layer_output = attn_layer([input_])[0]

# get mid-output from children-graph
att_layer = K.function(inputs=DocEncoder.get_input_at(0), outputs=DocEncoder.layers[-2].output)
att_layer_output = att_layer([input_[0]])[0]

 

2. keras模型的保存与加载

import keras
from keras.models import Model
from keras.models import load_model

model = Model(input, output)

# save
model.save('my_model.h5')

# load
model = load_model('my_model.h5')

 

以上是关于获取keras中间层输出模型保存与加载的主要内容,如果未能解决你的问题,请参考以下文章

如何将 keras 模型与其他数据一起保存并完全加载?

keras的模型保存与加载

keras的模型保存与加载

如何在keras中可视化卷积神经网络中间层的输出?

从不同版本的 tf.keras 加载保存的模型(从 tf 2.3.0 到 tf 1.12)

加载相同的保存模型后,Keras 模型精度有所不同