本文介绍了Keras-CNTK保存模型-v2格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用CNTK作为Keras的后端.我正在尝试使用我在C ++中使用Keras训练的模型.
I'm using CNTK as the backend for Keras. I'm trying to use my model which I have trained using Keras in C++.
我已经使用HDF5中的Keras训练并保存了我的模型.现在如何使用CNTK API将其保存为模型v2格式?
I have trained and saved my model using Keras which is in HDF5. How do I now use CNTK API to save it in their model-v2 format?
我尝试过:
model = load_model('model2.h5')
cntk.ops.functions.Function.save(model, 'CNTK_model2.pb')
但是我遇到了以下错误:
but i got the following error:
TypeError: save() missing 1 required positional argument: 'filename'
如果tensorflow是后端,我会这样做:
If tensorflow were the backend I would have done this:
model = load_model('model2.h5')
sess = K.get_session()
tf_saver = tf.train.Saver()
tf_saver.save(sess=sess, save_path=checkpoint_path)
我怎么能实现同样的目标?
How can I achieve the same thing?
推荐答案
根据评论在这里,我可以使用它:
As per the comments here, I was able to use this:
import cntk as C
import keras.backend as K
keras_model = K.load_model('my_keras_model.h5')
C.combine(keras_model.model.outputs).save('my_cntk_model')
cntk_model = C.load_model('my_cntk_model')
这篇关于Keras-CNTK保存模型-v2格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!