2015-12-20 18 views
5

Próbuję nauczyć tenforflow postępując zgodnie z tutorialem Convolutional Neural Networks, ale kiedy próbowałem dowiedzieć się, jak cifar10_input.py ładuje dane z , I napotkał problem, który wykonuje się przez bardzo długi czas lub działa bez końca. Kod jest tak:Session.run() /Tensor.eval() z Tensorflow działa przez szalony długi czas

import tensorflow as tf 
from tensorflow.models.image.cifar10 import cifar10_input 

filenames = ['/Users/me/Downloads/cifar-10-batches-bin/data_batch_1.bin'] 
filename_queue = tf.train.string_input_producer(filenames) 
read_input = cifar10_input.read_cifar10(filename_queue) 
reshaped_image = tf.cast(read_input.uint8image, tf.float32) 

with tf.Session() as sess: 
    print reshaped_image.eval() 

Kod jest w zasadzie od cifar10_input.py a plik data_batch_1.bin jest pochodzących z cifar-10-binary.tar.gz

Normalnie, mogę obserwować tensora stosując swoją metodę eval().. Ale w tym przypadku działa nieprzerwanie dłużej niż kiedykolwiek (czekałem prawie godzinę i nadal działa). Czy coś jest nie tak w moim kodzie?

Odpowiedz

6

1) Jako podstawowych testow: ls -al /Users/me/Downloads/cifar-10-batches-bin/data_batch_1.bin

2) Nie zapomnij:

init = tf.initialize_all_variables() 
sess.run(init) 

3) tf.train.start_queue_runners() (po utworzeniu sesji)

To pewnie # 3. string_input_producer dodaje biegacz kolejki do kolekcji QUEUE_RUNNERS, która musi zostać uruchomiona.

+0

Dzięki bardzo, # 3 naprawdę rozwiązał mój problem, ale w rzeczywistości metoda powinna być 'tf.train.start_queue_all_variables()'. – hsc

+0

Ups, right - thanks, zaakceptował twoją aktualizację, aby naprawić błąd. – dga

+0

Dziękuję bardzo! –

Powiązane problemy