• tensorflow模型ckpt转pb以及其遇到的问题


      使用tensorflow训练模型,ckpt作为tensorflow训练生成的模型,可以在tensorflow内部使用。但是如果想要永久保存,最好将其导出成pb的形式。

      tensorflow已经准备好ckpt转pb的脚本,直接使用tensorflow脚本就可以很方便地将文件类型转换掉。

      在github下载tensorflow代码,https://github.com/tensorflow/models/tree/master,其中research/object_detection文件夹里,提供了名为export_inference_graph.py的脚本。

      在导出之前,请确保你在训练目录中有以下文件:

    model.ckpt-$.data-00000-of-00001,model.ckpt-$.indexmodel.ckpt-$.meta

      你可能有几个具有相同格式的文件,但是使用不同的检查点数量。因此,只需选择所需的检查点,并在命令行中进入到research文件夹中执行以下命令:

      python object_detection/export_inference_graph.py --input_type image_tensor --pipeline_config_path=path/to/training/ssd_mobilenet_v1_pets.config --      trained_checkpoint_prefix=path/to/training/model.ckpt-xxxxx --output_directory path/to/output/directory

    输出将是一个文件,该文件包含一个叫做frozen_inference_graph.pb模型的“冻结(frozen)”版本。

     

     

    附:

      当导出模型后,并进行测试一段时间之后,可能会出现因为checkpoint改变而报错的情况,这时将checkpoint文件删掉即可。

  • 相关阅读:
    Java的常用API之System类简介
    Java的常用API之Date类简介
    Java的常用API之Object类简介
    数据库知识总结(全)
    学习:浏览器访问网站的总流程
    学习:TCP/UDP协议分析(TCP四次挥手)
    学习:TCP/UDP协议分析(TCP三次握手)
    学习:ICMP协议
    实现:ARP探测存活主机
    学习:ARP协议/数据包分析
  • 原文地址:https://www.cnblogs.com/youyou0/p/9076963.html
Copyright © 2020-2023  润新知