TensorFlow函数教程:tf.nn.max_pool_with_argmax
2019-01-31 13:50 更新
tf.nn.max_pool_with_argmax函数
tf.nn.max_pool_with_argmax(
input,
ksize,
strides,
padding,
Targmax=tf.int64,
name=None
)
请参阅指南:神经网络>池操作
对输入执行最大池化并输出最大值和指数.
argmax中的指数是扁平,因此位置[b, y, x, c]处的最大值变为扁平指数((b * height + y) * width + x) * channels + c.
在扁平前返回的指数总是在[0, height) x [0, width),即使涉及填充并且数学上正确的答案在外部(要么是负数,要么太大).这是一个bug,但是要以一种安全的向后兼容的方式修复它是很困难的,特别是由于扁平化.
参数:
- input:一个Tensor.必须是下列类型之一:float32,float64,int32,uint8,int16,int8,int64,bfloat16,uint16,half,uint32,uint64.4-D的具有shape [batch, height, width, channels].输入到池中.
- ksize:ints列表,长度>= 4.输入张量的每个维度的窗口大小.
- strides:ints列表,长度>= 4.输入张量的每个维度的滑动窗口的步幅.
- padding:string,可以是:"SAME", "VALID".要使用的填充算法的类型.
- Targmax:可选的tf.DType,可以是:tf.int32, tf.int64.默认为tf.int64.
- name:操作的名称(可选).
返回:
Tensor对象元组(output,argmax).
- output:一个Tensor,与input有相同的类型.
- argmax:一个Tensor,类型为Targmax.