Tensorflow: tf.select()

官方api翻译:

tf.select(condition, t, e, name=None)

根据condition选择t或e中的元素。

t和e张量都必须具有相同的形状,并且输出也将具有该形状。 如果t和e是标量,那么condition tensor必须是标量。 如果t和e是向量或更高级别,那么条件必须是大小与t的第一维相匹配的向量,或者必须具有与t相同的形状。

condition张量充当一个掩码,根据每个元素的值选择输出中相应的元素/行应该从t(如果为true)或e(如果为false)中取出。

如果condition是一个向量,t和e是更高级别的矩阵,那么它选择从t和e复制哪一行(外部维度)。

如果条件具有与t和e相同的形状,那么它会选择从t和e复制哪个元素。

说了一大堆,还是直接看列子吧:

import tensorflow as tf
sess=tf.Session()
condition=[[True,False],[True,False]]
a=[[1,2],[3,4]]
b=[[5,6],[7,8]]
c=tf.select(condition,a,b)
print(sess.run(c))
sess.close()

结果:


tf.select()通常与tf.greater()结合使用。具体可参考上篇tf.greater().

扫描二维码关注公众号,回复: 1781713 查看本文章

猜你喜欢

转载自blog.csdn.net/lanluyug/article/details/79807178