tf.reduce_max()函数

tf.reduce_max(
    input_tensor,
    axis=None,
    name=None,
    keepdims=False  #是否保持矩形原狀
)

参数解释:

input_tensor:输入数据,tensor、array、dataframe 都可以

axis:表示维度,从0开始表示最外层维度,也可以用-1表示最内层维度;

          [0, [1, [2, [3,[...]]]]],或者[[[[[...], -4], -3], -2], -1]  数字表示对应[ ]的维度。当axis位默认表示求全局最大值。

keepdims:默认时,维度会减少1,为True时,保持维度不变。

name:操作名称

reduction_indices:axis的旧名称(已经弃用)

示例:

import tensorflow as tf
import numpy as np

a=np.array([[1, 2],
            [5, 3],
            [2, 6]])

b = tf.Variable(a)
with tf.Session() as sess:
    sess.run(tf.global_variables_initializer())
    print(sess.run(b))
    print('************')
    # 对于二维矩阵,axis=0轴可以理解为行增长方向(向下)即按列求最值,axis=1轴可以理解为列增长方向(向右)按列行求最值
    print(sess.run(tf.reduce_max(b, axis=1, keepdims=False)))  # keepdims=False,axis=1被消减,不保持原状,本来shape为(3,1),后来变成(1,3)了
    print('************')
    print(sess.run(tf.reduce_max(b, axis=1, keepdims=True)))
    print('************')
    print(sess.run(tf.reduce_max(b, axis=0, keepdims=True)))

结果:

[[1 2]
 [5 3]
 [2 6]]
************
[2 5 6]
************
[[2]
 [5]
 [6]]
************
[[5 6]]

ps:另外该函数等价于np.max:(a, axis=None, out=None, keepdims=False)

import tensorflow as tf
import numpy as np
 
max_value = tf.reduce_max([[1, 3, 2], [4,5,6]], axis=0)
with tf.Session() as sess:
    max_value = sess.run(max_value)
    print(max_value)
 
print(np.max([[1, 3, 2], [4,5,6]], axis=0))
 
 
#### 输出
[4 5 6]
[4 5 6]

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐