Python 在Tensorflow中,如何从几个张量中选择最小张量?

Python 在Tensorflow中,如何从几个张量中选择最小张量?,python,tensorflow,Python,Tensorflow,根据Tensorflow API,我知道我可以沿特定轴减小_min或减小_max。我也可以在两个张量中选择最小张量,如下所示 min = tf.minimum(x, y) 然而,我想知道如何在一组张量中选择最小张量。张量中是否有像min或max这样的函数 非常感谢你 你可以叠加所有的张量,然后使用reduce\u min a = tf.constant([3]) b = tf.constant([2]) c = tf.constant([1]) with tf.Session() as se

根据Tensorflow API,我知道我可以沿特定轴减小_min或减小_max。我也可以在两个张量中选择最小张量,如下所示

min = tf.minimum(x, y)
然而,我想知道如何在一组张量中选择最小张量。张量中是否有像min或max这样的函数


非常感谢你

你可以
叠加所有的张量,然后使用
reduce\u min

a = tf.constant([3])
b = tf.constant([2])
c = tf.constant([1])

with tf.Session() as sess:
   print(tf.reduce_min(tf.stack([a,b,c]),0).eval())
#[1]

如果只有三个变量,这就是解决这个问题的方法。然而,如果我有20个变量,我从深度神经网络的输出中得到。我认为这不容易做到。@Sean,我相信你收到的输出一定是以某种形式整理的。大多数情况下,它是一个列表(比如vars),在这种情况下,您可以轻松地堆叠指定相应轴的整个列表。如果它不是一个列表,那么一定有一种方法可以很容易地将它们整理成一个列表。是的,你是对的。我以列表的形式收集输出。然后使用
tf.reduce\u min(tf.stack(list),0)