如何在arraySensorflow上给定真值的情况下初始化布尔矩阵



我是TensorFlow的初学者。我想初始化一个布尔矩阵,真值的索引在数组varaibale中给出。

初始矩阵(必须是张量(:[[False, False, False], [False, False, False], [False, False, False]]

给定的索引数组(必须是张量(:

[1,3,5,6,8]

结果:

[[False, True, False],
[True, False, True],
[True, False, True]]

您可以使用以下代码:

import tensorflow as tf
f=tf.Variable([False,False,False,False,False,False,False,False,False])
t=tf.constant([True,True,True,True,True])
indice=tf.constant([1,3,5,6,8], dtype=tf.int32)
res_1D=tf.scatter_update(f, indice, t)
result_mat = tf.reshape(res_1D, shape=(3,3))
init=tf.initialize_all_variables()
with tf.Session() as sess:
sess.run(init)
result=sess.run(result_mat)
print(result)

最新更新