Tensorflow:索引列表 - >生成一个数组

时间:2017-12-24 06:45:14

标签: tensorflow

< p>我有一个关于构建TF数组的TensorFlow问题,给出了其元素的索引列表。< / p> < p>假设我有一个带有tf数组的索引列表< / p> < p>< code> list_index_false = tf.constant([5,3])< / code>< / p> < p>我想构建尺寸为7< code> tf.array< / code>与布尔 其中只有索引< code> 5< / code>和< code> 3< / code> < code> False< / code>而其他人是< code> True< / code>如下:< br> <代码> [真,TRUE,TRUE,FALSE,TRUE,假,真] LT; /代码>< / p为H. &LT p为H.;&LT峰; br> 我试过以下:< / p> &LT p为H.;<代码> list_boolean = tf.fill([7],真))≤; /代码>< / p为H. < p>然后尝试分配< code> list_boolean [3] = False< / code>,< code> list_boolean [5] = False< / code&gt ;,但tensorflow不允许我分配。 :(小于/ p为H. < p>我该怎么做? 还有其他方式吗?< / p> < p>谢谢你< / p>

1 个答案:

答案 0 :(得分:1)

tf.scatter_update专为此类用例而设计。这是代码示例:

import tensorflow as tf

list_index_false = tf.constant([5, 3])
list_boolean = tf.Variable(tf.fill([7], True))
list_boolean = tf.scatter_update(list_boolean, list_index_false, tf.fill(tf.shape(list_index_false), False))

with tf.Session() as sess:
    sess.run(tf.global_variables_initializer())
    print(sess.run(list_boolean))

希望它有所帮助!