关键错误:冻结张量流模型到UFF图

2024-10-03 02:38:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我用Tensorflow Estimator API训练了一个定制的CNN模型。我已成功冻结图形,但转换为UFF失败,并引发以下错误:

'KeyError: u'IteratorGetNext:1'

进行上述转换的代码:

^{pr2}$

图中节点的名称是

prefix/OneShotIterator
prefix/IteratorGetNext
prefix/Reshape/shape
prefix/Reshape
prefix/Reshape_1/shape
prefix/Reshape_1
prefix/conv1/kernel
prefix/conv1/bias
.
.
.
prefix/logits/MatMul
prefix/logits/BiasAdd
prefix/sigmoid

那么有没有办法删除前两个迭代器节点?它们在训练环境之外是没用的。我也使用了tf.graph_util.remove_training_nodes,但它不能缓解我所面临的问题。在


Tags: 模型api图形prefix节点tensorflow错误cnn
1条回答
网友
1楼 · 发布于 2024-10-03 02:38:16

Graph Transform工具可以用来做我想要实现的事情,为了能够使用这个工具,必须克隆tensorflow存储库并运行配置文件来设置工作区。按照1中提供的说明构建该工具。 一旦完成调用工具

bazel-bin/tensorflow/tools/graph_transforms/transform_graph \
 in_graph=tensorflow_inception_graph.pb \
 out_graph=optimized_inception_graph.pb \
 inputs='Mul:0' \
 outputs='softmax:0' \
 transforms='
strip_unused_nodes(type=float, shape="1,299,299,3")
remove_nodes(op=Identity, op=CheckNumerics)
fold_old_batch_norms
'

一旦你有了优化的图形,把它传递给

^{pr2}$

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/graph_transforms/README.md1https://www.tensorflow.org/mobile/prepare_models#how_do_you_get_a_model_you_can_use_on_mobile

相关问题 更多 >