我一直在尝试Tensorflow 2 Alpha,并且一直在尝试卡住模型并将其导出到.pb graphdef文件。

在Tensorflow 1中,我可以做这样的事情:

# Freeze the graph.
frozen_graph_def = tf.graph_util.convert_variables_to_constants(
    sess,
    sess.graph_def,
    output_node_names)

# Save the frozen graph to .pb file.
with open('model.pb', 'wb') as f:
    f.write(frozen_graph_def.SerializeToString())

但是,这似乎不再可行,因为convert_variables_to_constants被删除并且不鼓励使用 session 。

我看了看,发现有卡住图工具
与SavedModel导出配合使用的https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/tools/freeze_graph.py

是否仍可以在Python中执行某些操作,或者我现在打算切换并使用此工具?

最佳答案

从tensorflow1.x迁移到tensoflow2.0 beta时,我也遇到了同样的问题。
此问题可以通过2种方法解决:

  • 第一种是转到tensflow2.0文档,搜索您使用的方法,并更改每行和
  • 的语法
  • 要使用Google的tf_ugrade_v2脚本

  • tf_upgrade_v2 --infile your_tf1_script_file --outfile converted_tf2_file

    您尝试使用上述命令将tensorflow1.x脚本更改为tensorflow2.0,它将解决所有问题。

    另外,您可以重命名该方法(通过引用文档进行手动操作)
    'tf.graph_util.convert_variables_to_constants'重命名为'tf.compat.v1.graph_util.convert_variables_to_constants'

    度量问题是,在tensorflow2.0中,许多语法和功能已更改,请尝试引用tensoflow2.0文档或使用Google的tf_upgrade_v2脚本

    关于tensorflow - 在Tensorflow 2中导出卡住的图.pb文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55299995/

    10-11 14:33