Как выполнить присвоение элемента в тензоре в тензорном потоке? - PullRequest
0 голосов
/ 03 сентября 2018

Пусть тензор будет a = [0,0,0,0,0,0,0,0], а другой тензор будет b = [1,3,0,5], здесь я хочу, чтобы операция тензорного потока помещала 1 в тензор a, беря значения положения из тензора b. Следовательно, выходной тензор будет [1,1,0,1,0,1,0,0]. Как решить эту проблему?

1 Ответ

0 голосов
/ 03 сентября 2018

Как насчет этого?

a = tf.Variable([0,0,0,0,0,0,0,0])
b = tf.Variable([1,3,0,5])

with tf.Session() as sess:

    sess.run(tf.global_variables_initializer())

    update = tf.scatter_update(a,
                               b,
                               tf.tile(tf.constant([1],
                                       tf.int32),
                               b.shape))

    print(update.eval(session=sess))

Выход

[1 1 0 1 0 1 0 0]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...