mindspore.nn.AdaptiveAvgPool1d

class mindspore.nn.AdaptiveAvgPool1d(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 (Nin,Cin,Lin), AdaptiveAvgPool1d outputs regional average in the Lin-dimension. The output is of shape (Nin,Cin,Lout), where Lout is defined by output_size.

Note

Lin must be divisible by output_size.

Parameters

output_size (int) – the target output size Lout.

Inputs:
  • input (Tensor) - Tensor of shape (N,Cin,Lin), with float16 or float32 data type.

Outputs:

Tensor of shape (N,Cin,Lout), 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

>>> import mindspore as ms
>>> import numpy as np
>>> pool = ms.nn.AdaptiveAvgPool1d(output_size=2)
>>> input = ms.Tensor(np.random.randint(0, 10, [1, 3, 6]), ms.float32)
>>> output = pool(input)
>>> result = output.shape
>>> print(result)
(1, 3, 2)