Ich lief Tensorflow 0.10.0rc0 auf OSX 10.9.5 Mavericks.tensorflow - Speicherleck?
Es gibt ungefähr 25k Trainingsbeispiele, 250 Merkmale (x), 15 Klassen (y_) und die Vorhersage (y) ist ein NN-Perzeptron mit einer einzigen versteckten Schicht.
folgender Ausschnitt aus einer einfachen Trainingsschleife scheint einen massiven Speicherverlust zu haben (der Ordnung 10s von GBs über = ~ 200 Iterationen - bringt meinen MBP unten :():
import tensorflow as tf
# Initialize placeholders and variables etc...
...
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(y,y_))
train_step = tf.train.GradientDescentOptimizer(lrate).minimize(cost)
init = tf.initialize_all_variables()
sess = tf.Session()
sess.run(init)
for i in range(niter):
# Train
_,c=sess.run([train_step,cost])
correct_prediction = tf.equal(tf.argmax(y,1),tf.argmax(y_,1))
sess.run(correct_prediction)
accuracy = tf.reduce_mean(tf.cast(correct_prediction,tf.float32))
print sess.run(accuracy)
# EDIT: Calculate test error
ytest=sess.run(y[itrain:itrain+itest,:])
ytest_=sess.run(y_[itrain:itrain+itest,:])
test_prediction = tf.equal(tf.argmax(ytest,1), tf.argmax(ytest_,1))
test_accuracy=tf.reduce_mean(tf.cast(test_prediction,tf.float32))
print sess.run(test_accuracy)
sess.close()
Bin ich etwas zu tun offensichtlich falsch, oder ist das pro Chance ein Fehler? Danke!
PS: Wenn dies in einem späteren Tensorflow Build behoben wird, beachten Sie, dass Bazel Yosemite oder höher erfordert, so kann ich meine eigene .whl-Datei (AFAIK) aus Quelle, ist eine nächtliche whl verfügbar? Ich würde lieber nicht in ein Betriebssystem-Upgrade sofort gezwungen werden.
Edit: ich die Testgenauigkeit Berechnung hinzugefügt; Ich bin nicht sicher, wie man das aus der Schleife entfernt, da y nach dem Trainingsschritt – jtlz2