【发布时间】:2020-02-03 01:53:16
【问题描述】:
我正在使用Audioset/VGGish 并尝试将他们提供的checkpoint file 转换为.pb 文件。问题是为训练模型提供的仅有两项是 ckpt 文件(上面链接)和一个npz file。
这是我尝试此操作的第三次尝试,现在已经花了几个小时试图找到执行此操作的最佳工具。到目前为止,我已经找到了几种解决方案,但它们似乎都需要更多信息,而不仅仅是 ckpt 文件。请记住,ckpt文件和Audioset一般需要使用TensorFlow
例子:
•freeze_graph:无论我在那里输入什么值,我总是以ValueError: You need to supply the name of a node to --output_node_names 的错误结束。该示例使用softmax,但问题是我似乎无法弄清楚如何从 ckpt 文件中提取节点名称,因此我似乎无法在不知道它们的情况下添加有效值。
• Logged GitHub Issues:按照 OP 的代码,我收到错误 ValueError: No variables to save。
• Stack Overflow questions:这似乎是一个可靠的答案,但 GitHub 存储库没有提供 .ckpt.meta 文件。我认为在某些情况下通常需要元信息?我查看是否有任何方法可以从 ckpt 文件中提取元以创建元文件然后运行信息,因为元文件似乎是没有值的 ckpt 文件的结构或图形(来自此答案:Tensorflow : What is the relationship between .ckpt file and .ckpt.meta and .ckpt.index , and .pb file) 但我可能误解了这一点。
我认为有一种方法可以提取元文件的原因之一是有人登录了 MMdnn GitHub:Convert Audioset VGG from tensorflow to pytorch。虽然没有转换为 .pb,但他们的命令中有一个 ckpt.meta 文件。该文件在他们的描述中没有链接,谷歌搜索“vggish_model.ckpt.meta”只发现了 GitHub 问题。我已就该问题向 OP 发送消息,看看他们是否可以阐明该文件的来源。
•Previous article (2018) with a conversion script:这是一篇比较老的文章。我可以让脚本运行,但也会收到错误 ValueError: No variables to save。
如果有人能指出我正确的方向,那就太好了;我已经开始用尽我的选择。似乎有一些很好的解决方案我正在尝试,但我可能只是缺少一两个步骤(或一两个文件)以使其成功转换。
感谢您的帮助!
【问题讨论】:
标签: python tensorflow ckpt