TensorFlow freeze_graph:必需的位置参数'unused_args'

And*_*ssi 4 python mnist tensorflow

我在带有High Sierra的Mac上使用TensorFlow 1.7和Python 3.6.5.

我训练了我的第一个MNIST模型,所以我基本上都有

  • 具有CNN图结构的graph.pbtxt文件
  • 一些model.ckpt-21000文件(.meta,.index .data)

我试图在我的bash上使用命令行freeze_graph命令冻结图形:

freeze_graph
--input_graph=/…/graph.pbtxt
--input_checkpoint=/…/model.ckpt-21000
--input_binary=false
--output_graph=/…/frozen_mnist.pb
--output_node_names=softmax_tensor
Run Code Online (Sandbox Code Playgroud)

但我得到了这个错误:

Traceback (most recent call last):  
File “/usr/local/bin/freeze_graph”, line 11, in <module>  
sys.exit(main())  
TypeError: main() missing 1 required positional argument: ‘unused_args’
Run Code Online (Sandbox Code Playgroud)

我不太确定我在那里失踪了什么.我很确定我使用的是正确的语法.

And*_*ssi 8

我找到了一种解决方法来冻结我的图表.我在这里发布,所以如果有人遇到同样的问题,他们可以使用它.

代替

freeze_graph
--input_graph=/…/graph.pbtxt
--input_checkpoint=/…/model.ckpt-21000
--input_binary=false
--output_graph=/…/frozen_mnist.pb
--output_node_names=softmax_tensor
Run Code Online (Sandbox Code Playgroud)

使用

python3 -m tensorflow.python.tools.freeze_graph
--input_graph=/…/graph.pbtxt
--input_checkpoint=/…/model.ckpt-21000
--input_binary=false
--output_graph=/…/frozen_mnist.pb
--output_node_names=softmax_tensor
Run Code Online (Sandbox Code Playgroud)

所以基本上没有命令freeze_graph,我只使用了python3 -m tensorflow.python.tools.freeze_graph.

仍然我真的想了解为什么命令行不适合我:(