2017-05-09 64 views
1

我想學習Tensorflow在單CPU模式。當我嘗試運行一些例子,比如[mnist_softmax.py]似乎正確整個代碼運行和輸出的預期的答案,但顯示[Segmentation fault (core dumped)]併產生到底是1.7G或更大的核心文件。 當我運行在python交互shell相同的代碼,它運行良好,將不會從sess = tf.InteractiveSession() 出現這樣Segmentation fault.Tensorflow CPU(在python交互shell正常,但是當運行腳本核心轉儲)

而且我Tensorflow版本是('v1.0.0-65-g4763edf-dirty', '1.0.1')

+0

看看代碼可能幫助別人回答 – Aditya

+0

https://github.com/tensorflow/tensorflow/blob/r1.1/tensorflow /examples/tutorials/mnist/mnist_softmax.py – AcAhe

+0

這是tensorflow.org上的例子[MLIST對ML初學者]。 – AcAhe

回答

1

變更線61 sess = tf.Session() 並重新運行它的命令行。

從線61取代72本

with tf.Session() as sess: 
    tf.global_variables_initializer().run() 
    # Train 
    for _ in range(1000): 
    batch_xs, batch_ys = mnist.train.next_batch(100) 
    sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys}) 

    # Test trained model 
    correct_prediction = tf.equal(tf.argmax(y, 1), tf.argmax(y_, 1)) 
    accuracy = tf.reduce_mean(tf.cast(correct_prediction, tf.float32)) 
    print(sess.run(accuracy, feed_dict={x: mnist.test.images, 
             y_: mnist.test.labels})) 
+0

命令行腳本不是一個交互式會話,其中存在您的問題。 – Wontonimo

+0

它暗示[ValueError:無法使用run()執行操作:沒有註冊默認會話。使用'用sess.as_default()'或傳遞一個明確的會話的run(會話= SESS)]「如果我改變InteractiveSession()來直接會話和 – AcAhe

+0

我嘗試使用[與tf.Session()爲SESS: ]而不是InteractiveSession()來覆蓋最後的代碼。但最後還是給了我Segmentation的錯誤。 – AcAhe

相關問題