Список не обновляется в Tensorflow v1.14 - PullRequest
2 голосов
/ 18 февраля 2020

Я использую следующий код для выполнения операции левого сдвига в TensorArray old_array:

import tensorflow as tf

old_array = [tf.zeros((1, 2)), tf.zeros((1, 2))]

def left_shift(ol=None):
    if ol is None:
        ol = old_array
    val = tf.random.normal((1, 2))
    an_array = [ol[1], val]
    return an_array

old_array = left_shift().copy()

sess = tf.Session()

for _ in range(5):
    x, y = sess.run([old_array, left_shift()])
    # y = sess.run(left_shift())
    print(y)

В коде нет ошибок, но x[0] всегда является набором 0 «S. x[1] меняется с каждой итерацией. y имеет желаемый результат.

Что здесь не так? Любая помощь очень ценится.

PS: Если есть более простой способ сделать операцию левого сдвига в Tensorflow, пожалуйста, дайте мне знать.

...