【问题标题】:Restoring official Tensorflow Resnet-50 Checkpoint gives 'ExperimentalFunctionBufferingResource' Error恢复官方 Tensorflow Resnet-50 检查点会出现“ExperimentalFunctionBufferingResource”错误
【发布时间】:2019-08-20 17:55:48
【问题描述】:

在此处尝试为 ResNet-50 检查点重新加载官方 tensorflow 模型时:

http://download.tensorflow.org/models/official/20181001_resnet/checkpoints/resnet_imagenet_v1_fp32_20181001.tar.gz

...使用此代码:

import os
import tensorflow as tf
print(tf.__version__)
saver = tf.train.import_meta_graph(os.path.join(
    'resnet_imagenet_v1_fp32_20181001',
    'model.ckpt-225207.meta'))

我收到此错误:

1.13.1
Traceback (most recent call last):
  File "chehckpoint_to_savedmodel.py", line 11, in <module>
    'model.ckpt-225207.meta'))
  File "/Users/*user*/Library/Python/3.7/lib/python/site-packages/tensorflow/python/training/saver.py", line 1435, in import_meta_graph
    meta_graph_or_file, clear_devices, import_scope, **kwargs)[0]
  File "/Users/*user*/Library/Python/3.7/lib/python/site-packages/tensorflow/python/training/saver.py", line 1457, in _import_meta_graph_with_return_elements
    **kwargs))
  File "/Users/*user*/Library/Python/3.7/lib/python/site-packages/tensorflow/python/framework/meta_graph.py", line 806, in import_scoped_meta_graph_with_return_elements
    return_elements=return_elements)
  File "/Users/*user*/Library/Python/3.7/lib/python/site-packages/tensorflow/python/util/deprecation.py", line 507, in new_func
    return func(*args, **kwargs)
  File "/Users/*user*/Library/Python/3.7/lib/python/site-packages/tensorflow/python/framework/importer.py", line 399, in import_graph_def
    _RemoveDefaultAttrs(op_dict, producer_op_list, graph_def)
  File "/Users/*user*/Library/Python/3.7/lib/python/site-packages/tensorflow/python/framework/importer.py", line 159, in _RemoveDefaultAttrs
    op_def = op_dict[node.op]
KeyError: 'ExperimentalFunctionBufferingResource'

有趣的是,谷歌搜索“KeyError:'ExperimentalFunctionBufferingResource'”返回零命中。这是第一次。

想法?

不确定如何重新加载此模型。我也试过这个:

path = os.path.join(
    'resnet_imagenet_v1_fp32_20181001',
    'model.ckpt-225207')

checkpoint = tf.train.Checkpoint()
status = checkpoint.restore(path)
print(status)
status.assert_consumed()

但它在没有其他信息的情况下使断言失败。

提前致谢。 P

【问题讨论】:

  • 第一种情况下文件有问题。代码是对的

标签: tensorflow resnet


【解决方案1】:

这似乎是 TF >= 1.13 版本的问题。尝试降级到 1.12 并试一试。它应该可以工作。

要跟踪的问题如下:#29751

【讨论】:

    猜你喜欢
    • 2017-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-28
    • 1970-01-01
    • 2016-06-14
    • 2019-04-03
    相关资源
    最近更新 更多