Ho un ciclo in tensorflow che assomiglia a questo:Come ridurre il consumo di memoria in un ciclo in TensorFlow?
with tf.device("/gpu:1"):
losses = []
for target, output in zip(targets, lstm_outputs):
logits = tf.matmul(W, output) + b
loss = tf.nn.sparse_softmax_cross_entropy_with_logits(logits, target)
losses.append(loss)
total_loss = tf.add_n(losses)
sto ottenendo un errore quando OOM ripartizione dei gradienti di questo strato, poiché ogni moltiplicazione matrice è un'operazione differente nel prendere memoria grafico. C'è un modo per impedire a TensorFlow di allocare tutte queste operazioni contemporaneamente?
Ho già provato quei due EXPERIMENTAL_ACCUMULATE_N e EXPERIMENTAL_TREE senza alcun risultato. Proverò ad usare un ciclo while. – Maarten
Sono stato in grado di risolvere il problema aggiornando dalla versione stabile alla master in combinazione con EXPERIMENTAL_ACCUMULATE_N. @mrry grazie per i tuoi sforzi e la tua reattività. – Maarten