gpt4 book ai didi

python - 带有 bool 张量的 tensorflow 索引

转载 作者:IT老高 更新时间:2023-10-28 20:53:41 26 4
gpt4 key购买 nike

在numpy中,有两个相同形状的数组xy,可以像这样y[x>1]。您如何在 tensorflow 中获得相同的结果? y[tf.greater(x, 1)] 不起作用,tf.slice 也不支持这样的东西。现在有没有办法使用 bool 张量进行索引,还是目前不受支持?

最佳答案

试试:

ones = tf.ones_like(x) # create a tensor all ones
mask = tf.greater(x, ones) # boolean tensor, mask[i] = True iff x[i] > 1
slice_y_greater_than_one = tf.boolean_mask(y, mask)

tf.boolean_mask

编辑:另一种(更好的?)方法:

import tensorflow as tf

x = tf.constant([1, 2, 0, 4])
y = tf.Variable([1, 2, 0, 4])
mask = x > 1
slice_y_greater_than_one = tf.boolean_mask(y, mask)

with tf.Session() as sess:
sess.run(tf.global_variables_initializer())
print (sess.run(slice_y_greater_than_one)) # [2 4]

关于python - 带有 bool 张量的 tensorflow 索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33769041/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com