tf.nn.max_pool_with_argmax(input, ksize, strides, padding, Targmax=None, name=None)

tf.nn.max_pool_with_argmax(input, ksize, strides, padding, Targmax=None, name=None)

See the guide: Neural Network > Pooling

Performs max pooling on the input and outputs both max values and indices.

The indices in argmax are flattened, so that a maximum value at position [b, y, x, c] becomes flattened index ((b * height + y) * width + x) * channels + c.

Args:

  • input: A Tensor. Must be one of the following types: float32, half. 4-D with shape [batch, height, width, channels]. Input to pool over.
  • ksize: A list of ints that has length >= 4. The size of the window for each dimension of the input tensor.
  • strides: A list of ints that has length >= 4. The stride of the sliding window for each dimension of the input tensor.
  • padding: A string from: "SAME", "VALID". The type of padding algorithm to use.
  • Targmax: An optional tf.DType from: tf.int32, tf.int64. Defaults to tf.int64.
  • name: A name for the operation (optional).

Returns:

A tuple of Tensor objects (output, argmax). * output: A Tensor. Has the same type as input. The max pooled output tensor. * argmax: A Tensor of type Targmax. 4-D. The flattened indices of the max values chosen for each output.

Defined in tensorflow/python/ops/gen_nn_ops.py.