tensorflow:: ops:: MaxPoolWithArgmax
#include <nn_ops.h>
Performs max pooling on the input and outputs both max values and indices.
Summary
The indices in argmax
are flattened, so that a maximum value at position [b, y, x, c]
becomes flattened index: (y * width + x) * channels + c
if include_batch_in_index
is False; ((b * height + y) * width + x) * channels + c
if include_batch_in_index
is True.
The indices returned are always in [0, height) x [0, width)
before flattening, even if padding is involved and the mathematically correct answer is outside (either negative or too large). This is a bug, but fixing it is difficult to do in a safe backwards compatible way, especially due to flattening.
Args:
- scope: A Scope object
- input: 4-D with shape
[batch, height, width, channels]
. Input to pool over. - ksize: The size of the window for each dimension of the input tensor.
- strides: The stride of the sliding window for each dimension of the input tensor.
- padding: The type of padding algorithm to use.
Optional attributes (see Attrs
):
- include_batch_in_index: Whether to include batch dimension in flattened index of
argmax
.
Returns:
Output
output: The max pooled output tensor.Output
argmax: 4-D. The flattened indices of the max values chosen for each output.
Constructors and Destructors |
|
---|---|
MaxPoolWithArgmax(const ::tensorflow::Scope & scope, ::tensorflow::Input input, const gtl::ArraySlice< int > & ksize, const gtl::ArraySlice< int > & strides, StringPiece padding)
|
|
MaxPoolWithArgmax(const ::tensorflow::Scope & scope, ::tensorflow::Input input, const gtl::ArraySlice< int > & ksize, const gtl::ArraySlice< int > & strides, StringPiece padding, const MaxPoolWithArgmax::Attrs & attrs)
|
Public attributes |
|
---|---|
argmax
|
|
operation
|
|
output
|
Public static functions |
|
---|---|
IncludeBatchInIndex(bool x)
|
|
Targmax(DataType x)
|
Structs |
|
---|---|
tensorflow:: |
Optional attribute setters for MaxPoolWithArgmax. |
Public attributes
argmax
::tensorflow::Output argmax
operation
Operation operation
output
::tensorflow::Output output
Public functions
MaxPoolWithArgmax
MaxPoolWithArgmax( const ::tensorflow::Scope & scope, ::tensorflow::Input input, const gtl::ArraySlice< int > & ksize, const gtl::ArraySlice< int > & strides, StringPiece padding )
MaxPoolWithArgmax
MaxPoolWithArgmax( const ::tensorflow::Scope & scope, ::tensorflow::Input input, const gtl::ArraySlice< int > & ksize, const gtl::ArraySlice< int > & strides, StringPiece padding, const MaxPoolWithArgmax::Attrs & attrs )
Public static functions
IncludeBatchInIndex
Attrs IncludeBatchInIndex( bool x )
Targmax
Attrs Targmax( DataType x )