pb和h5模型转离线模型时去掉无效算子的方法
有些算子在om模型中只是透传数据,并不是必须数据处理步骤。所以当在pb模型转om模型遇到这类算子不支持的问题时,总的思想是在pb模型生成的时候就去掉该算子。
ckpt模型转pb模型时去掉输出无关算子
见 https://blog.csdn.net/u011511601/article/details/80262707
2. keras的h5模型转pb模型去掉输出无关算子
见 https://github.com/amir-abdi/keras_to_tensorflow
在h5转pb的时候,如果使用weight和json文件,可能报错:
ValueError: No model found in config file.
大致是认为keras保存的权重和json文件中没有模型信息。这个和keras的模型保存有关。keras的模型保存网上有很多帖子,
例如:https://blog.csdn.net/jclian91/article/details/83038861
如果weight和json的保存方式无法转为pb模型,那么我们可以使用model.save()方法保存方法来保存模型。具体做法:
找到模型保存为weight和json文件的地方(model.save_weights()和model.to_json()),或者模型加载的地方(model.load_weights())
调用mode.save()保存模型。
运行应用程序的训练命令,触发模型的保存
这样保存的模型使用 https://github.com/amir-abdi/keras_to_tensorflow 中转pb的命令时就不会报错了
- 点赞
- 收藏
- 关注作者
评论(0)