【发布时间】:2016-08-31 07:58:21
【问题描述】:
我已经使用 TensorFlow 构建和训练了一些网络,并成功地保存和恢复了模型的参数。
但是,对于某些情况 - 例如就像在客户的基础设施中部署训练有素的网络一样——它不是发布完整代码/模型的最佳解决方案。因此,我想知道是否有任何方法可以在没有用于训练的原始代码/模型的情况下恢复/运行经过训练的网络?
我想这会导致一个问题,除了变量的权重之外,TensorFlow 是否能够将网络架构的(压缩?)版本保存到检查点文件中。
这有可能吗?
【问题讨论】:
-
您在寻找 TensorFlow Serving 吗?
-
目前(例如,用于在机器人上测试模型,架构必须运行,因此代码已过时)我想知道是否有任何方法可以让我做某事像
saver.restore(sess, "some_checkpoint_file.ckpt")和sess.run(...)一样,而不必每次都复制整个代码库...... -
...但从长远来看,是的:看起来 TensorFlow Serving 是我寻找的,用于稳定/长期环境。
-
另外,一个轻量级的解决方案是
freeze_graph,它将你的变量作为常量节点内嵌到graphdef中——github.com/tensorflow/tensorflow/blob/master/tensorflow/python/…
标签: python neural-network tensorflow restore