我在服务器上运行了几个进程,其中一个进程是在tensorflow中训练模型。我希望培训师定期将当前模型发送到其他流程。我现在这样做的方法是使用通常的Saver
类,它可以从磁盘save
到restore
。
但是,我认为这种形式的IPC效率很低,并且可能导致服务器上的文件系统锁定。如果有一种方法可以将变量序列化为某个blob,我可以通过zmq广播管道发送它,但我还没有在文档中找到它。
或者,分布式张量流可能取决于任务,但我认为我不需要这么复杂的东西。
答案 0 :(得分:2)
您可以预先分享架构,然后在您喜欢的每个步骤中使用tf.get_collection(tf.GraphKeys.VARIABLES)
,并运行它以获取值,然后您可以在另一端使用variable.assign
来加载值在适当的变量中。