我开始使用 tensorflow 并使用 retrain.py 来教它一些新类别 - 这很好用 - 但是我有一些问题:
在 retrain.py 的评论中它说:“这会产生一个新的模型文件,可以由任何 TensorFlow 程序加载和运行,例如 label_image 示例代码”但是我还没有找到这个新模型文件保存到哪里?
另外:它确实包含整个模型,对吗?不只是再培训的部分?
感谢您清除此问题
我开始使用 tensorflow 并使用 retrain.py 来教它一些新类别 - 这很好用 - 但是我有一些问题:
在 retrain.py 的评论中它说:“这会产生一个新的模型文件,可以由任何 TensorFlow 程序加载和运行,例如 label_image 示例代码”但是我还没有找到这个新模型文件保存到哪里?
另外:它确实包含整个模型,对吗?不只是再培训的部分?
感谢您清除此问题
1)我想你可能想保存新模型。当您想在某个过程后保存模型时,您可以使用
saver.save(sess, 'directory/model-name', *optional-arg)
.
查看https://www.tensorflow.org/api_docs/python/tf/train/Saver
如果您通过 epoch 或您想使用的任何度量更改模型名称,您可以保存新模型(否则,它可能与之前保存的模型重叠)。
您可以通过搜索'checkpoint'、'.index'、'.meta'找到保存的模型。
2)保存整个模型或只是它的一部分?这是您在 tf.session 和 savers 上学习大量想法所需的部分。您可以保存全部或部分,这取决于您。再次,从上面的链接开始。寓意是您将要保存的变量放在链接中引用为“var_list”的列表中,并且只能为它们保存。当您回调它们时,您现在还需要指定模型中的哪些变量对应于加载的变量中的变量。
在运行 retrain.py 时,您可以提供 --output_graph 和 --output_labels 参数,它们指定保存图形的位置(默认为 /tmp/output_graph.pb)以及标签。您可以根据您的要求更改这些。