在训练网络时,我可以安全地从另一个线程进行推理吗?

时间:2016-09-18 07:09:03

标签: python multithreading thread-safety locking tensorflow

我有几个线程可以更新网络的权重或对其进行推理。我使用优化程序的use_locking参数来防止权重的并发更新。

推断应始终使用权重的近期且重要的一致版本。换句话说,我想防止使用权重矩阵进行推理,其中一些元素已经更新但其他元素却没有。

这有保证吗?如果没有,我该如何确保?它似乎不是tf.Lock或类似的。

1 个答案:

答案 0 :(得分:0)

您的推理调用是否需要在图表的最新版本上?如果您不介意延迟,可以通过在训练线程上调用sess.graph.as_graph_def来复制图形,然后定期使用该graph_def在推理线程上创建一个新会话。