# tf.reduce_max()它计算给定张量的全局最大值,但可以指定reduction_indices
x = tf.constant([[1, 220, 55], [4, 3, -1]])
x_max = tf.reduce_max(x, reduction_indices=[1])
print sess.run(x_max) # ==> "array([220, 4], dtype=int32)"
# 如果您使用tf.argmax(),您可以从不同的张量中获得这些值。
ind_max = tf.argmax(x, dimension=1)
y = tf.constant([[1, 2, 3], [6, 5, 4]])
flat_y = tf.reshape(y, [-1]) # Reshape to a vector.
# N.B. Handles 2-D case only.
flat_ind_max = ind_max + tf.cast(tf.range(tf.shape(y)[0]) * tf.shape(y)[1], tf.int64)
y_ = tf.gather(flat_y, flat_ind_max)
print sess.run(y_)
# ==> "array([2, 6], dtype=int32)"
tf.range
tf.range
是 TensorFlow 库中的一个函数,它用于生成一个张量(Tensor),该张量包含从指定的起始值开始到结束值结束(不包括结束值)的整数序列。这个函数通常用于创建一个等差数列,可以用于初始化循环、索引或其他需要序列数据的操作。
函数的基本用法如下:
tf.range(start, limit, delta, dtype)
参数说明:
start
:序列的起始值。limit
:序列的结束值(不包括这个值)。delta
:序列中每个元素之间的差值,默认为1。dtype
:输出张量的数据类型,默认为tf.int32
。
下面是一个使用 tf.range
的简单示例:
import tensorflow as tf
# 创建一个从0到4的整数序列,步长为1
sequence = tf.range(0, 5, 1)
print(sequence) # 输出:tf.Tensor([0 1 2 3 4], shape=(5,), dtype=int32)
这个函数在 TensorFlow 中非常有用,尤其是在需要创建索引或循环迭代时。如果你在使用 TensorFlow 进行深度学习或其他数值计算任务,tf.range
可能会是一个你经常用到的工具。