У меня есть два бинарных тензора в тензорном потоке. Я хочу преобразовать их оба в логические тензоры (по элементам) и в основном получить «пересечение», логическое И. Однако, похоже, что-то пошло не так при преобразовании в логическое значение, а также в части logical_and. Что я делаю неправильно?
sess = tf.InteractiveSession()
x = tf.random_uniform([1, 10], dtype=tf.int32, maxval=2))
y = tf.random_uniform([1, 10], dtype=tf.int32, maxval=2))
print(x.eval())
print(y.eval())
x = tf.cast(x, tf.bool)
y = tf.cast(y, tf.bool)
print(x.eval())
print(y.eval())
intersect = tf.logical_and(x, y)
print(intersect.eval())
Это дает следующий результат:
[[0 0 1 1 0 1 0 0 1 1]]
[[0 1 0 0 1 0 1 0 0 1]]
[[False True True True True False False True True True]]
[[False True True True True True True False True True]]
[[False False True True False False False False False True]]