如何在GPU上的TensorFlow中创建具有确定性操作的CNN?

时间:2017-06-28 10:32:54

标签: tensorflow convolution deterministic cudnn

所以在我意识到TensorFlow中的操作是非确定性的之后,请参阅此问题:How to get the same loss value, every time training a CNN (MNIST data set), with TensorFlow?,我想知道:

如何构建卷积神经网络:

  • TensorFlow版本1.1.0
  • CUDA版本8.0,V8.0.61
  • cuDNN 5.1.10
  • 在GPU上运行

仅使用确定性操作?

1 个答案:

答案 0 :(得分:0)

直到cuDNN上的每个操作都不完全确定为止。 此外,即使移动GPU上的每个操作,如果它使用(并且它可能确实)SSE指令,您可以获得不同的结果,不止一次地执行相同的(并且没有随机性)代码。

您可以做的最好的事情是接近目标,为每个包含随机性的操作(操作级别种子)设置seed并为整个图形设置种子({{1 }})。