Я пытался построить автоинкрементный граф в TensorFlow. Я подумал, что для этого подойдет assign
op, но не нашел документации для него.
Я предположил, что этот оператор возвращает свое значение - как в C-подобных языках - и написал следующий код:
import tensorflow as tf
counter = tf.Variable(0, name="counter")
one = tf.constant(1)
ten = tf.constant(10)
new_counter = tf.add(counter, one)
assign = tf.assign(counter, new_counter)
result = tf.add(assign, ten)
init_op = tf.initialize_all_variables()
with tf.Session() as sess:
sess.run(init_op)
for _ in range(3):
print sess.run(result)
, и этот код работает.
Вопрос в следующем: это ожидаемое поведение? Почему описание операции здесь не задокументировано: https://www.tensorflow.org/versions/0.6.0/api_docs/index.html
Это не рекомендуемая операция?