小编Tra*_*inh的帖子

Tensorflow相同的代码但从CPU设备到GPU设备获得不同的结果

我正在尝试实现一个程序来测试GPU设备上的Tensorflow性能.数据测试是MNIST数据,使用多层感知器(神经网络)进行监督训练.我按照这个简单的例子,但我将性能批量渐变的数量更改为10000

for i in range(10000) :
batch_xs, batch_ys = mnist.train.next_batch(100)
sess.run(train_step,feed_dict={x : batch_xs, y_ : batch_ys})
if i % 500 == 0:
    print(i)
Run Code Online (Sandbox Code Playgroud)

最终,当我使用此代码检查预测准确性时

correct_prediction = tf.equal(tf.argmax(y,1),tf.argmax(y_,1))
accuracy = tf.reduce_mean(tf.cast(correct_prediction,"float"))
print(sess.run(accuracy,feed_dict={x:mnist.test.images,y_:mnist.test.labels}))
print(tf.convert_to_tensor(mnist.test.images).get_shape())
Run Code Online (Sandbox Code Playgroud)

事实证明,从CPU到GPU的准确率不同:当GPU返回约0.9xx的准确率时,CPU只返回0.3xx.有谁知道原因?或者为什么会出现这个问题?

python cpu gpu multi-layer tensorflow

2
推荐指数
1
解决办法
2930
查看次数

标签 统计

cpu ×1

gpu ×1

multi-layer ×1

python ×1

tensorflow ×1