mindspore.ops.adaptive_avg_pool1d

mindspore.ops.adaptive_avg_pool1d(input, output_size)[source]

Applies a 1D adaptive average pooling over an input Tensor which can be regarded as a composition of 1D input planes.

Typically, the input is of shape \((N, C, L_{in})\), adaptive_avg_pool1d outputs regional average in the \(L_{in}\)-dimension. The output is of shape \((N, C, L_{out})\), where \(L_{out}\) is defined by output_size.

Note

\(L_{in}\) must be divisible by output_size.

Parameters
  • input (Tensor) – Tensor of shape \((N, C, L_{in})\), with float16 or float32 data type.

  • output_size (int) – the target output size \(L_{out}\).

Returns

Tensor of shape \((N, C, L_{out})\), has the same type as input.

Raises
  • TypeError – If output_size is not an int.

  • TypeError – If input is neither float16 nor float32.

  • ValueError – If output_size is less than 1.

  • ValueError – If length of shape of input is not equal to 3.

  • ValueError – If the last dimension of input is smaller than output_size.

  • ValueError – If the last dimension of input is not divisible by output_size.

Supported Platforms:

Ascend GPU CPU

Examples

>>> input = Tensor(np.random.randint(0, 10, [1, 3, 6]), mindspore.float32)
>>> output = ops.adaptive_avg_pool1d(input, output_size=2)
>>> print(output.shape)
(1, 3, 2)