如何使用transform_graph优化Tensorflow模型

时间:2018-09-13 08:22:47

标签: python bash tensorflow installation

我曾经使用optimize_for_inference库来优化冻结的Tensorflow模型。但是,我从其他来源了解到Tensorflow不再支持它。

我碰到了transform_graph,其文档位于此处:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/tools/graph_transforms#strip_unused_nodes

起初,我遇到错误,发现我需要从源代码(https://www.tensorflow.org/install/install_sources#install_the_pip_package)安装Tensorflow而不是使用PIP。

我已经从源代码重新安装了Tensorflow,并在bash(/ tensorflor / tensorflow目录)中运行了以下代码:

bazel build tensorflow/tools/graph_transforms:transform_graph
bazel-bin/tensorflow/tools/graph_transforms/transform_graph \
--in_graph=tensorflow_inception_graph.pb \
--out_graph=optimized_inception_graph.pb \
--inputs='Mul' \
--outputs='softmax' \
--transforms='
  strip_unused_nodes(type=float, shape="1,299,299,3")
  fold_constants(ignore_errors=true)
  fold_batch_norms
  fold_old_batch_norms
  round_weights(num_steps=256)'

然后再次运行此错误:

-bash:bazel-bin / tensorflow / tools / graph_transforms / transform_graph:没有这样的文件或目录

问题出在哪里?

1 个答案:

答案 0 :(得分:0)

那很奇怪。

我在下面编写的代码是在CentOS7中安装和使用transform_graph。

yum install epel-release 百胜更新 百胜安装补丁 curl https://copr.fedorainfracloud.org/coprs/vbatts/bazel/repo/epel-7/vbatts-bazel-epel-7.repo -o /etc/yum.repos.d/vbatts-bazel-epel-7.repo 百胜安装挡板

卷曲-L -O https://github.com/tensorflow/tensorflow/archive/v1.8.0.tar.gz

cd tensorflow-1.8.0

./ configure#互动!

bazel构建tensorflow / tools / graph_transforms:summarize_graph bazel-bin / tensorflow / tools / graph_transforms / summarize_graph

按源代码安装Tensorflow并完成配置后,Bazel代码应该可以正常工作。

如果您未按源代码完成Tensorflow的安装,或者在错误的路径中运行了脚本,则会发生环境错误。

请检查Tensorflow根的配置步骤,路径。