我想训练卷积神经网络(使用MNIST数据集和TensorFlow)几次新的,并且每次获得相同的准确度结果。为了得到这个我:
我之前使用前馈网(3个隐藏层)完成了这项工作,每次运行此python脚本时,我都会得到完全相同的损失和准确值。
但是,"相同"将模型从前馈网络更改为卷积神经网络的脚本,每次我运行脚本时都会有不同的损失/准确性。
因此,我将批量大小减小为1并查找每个图像的丢失值,并看到前两个图像总是具有相同的损失值,但其余的是每次运行脚本时都有一点不同。
知道为什么吗?
答案 0 :(得分:0)
感谢@AlexandrePassos评论,我在TensorFlow中搜索确定性/非确定性操作。
所以目前使用CUDA原子并在GPU上运行的所有操作都是非确定性的 请看这个链接:https://github.com/tensorflow/tensorflow/issues/3103
如果有人知道在GPU上使用TensorFlow实现CNN并确定操作的方法,请:How to create a CNN with deterministic operations in TensorFlow on a GPU?