# LPPool1d¶

class torch.nn.LPPool1d(norm_type: float, kernel_size: Union[T, Tuple[T, ...]], stride: Optional[Union[T, Tuple[T, ...]]] = None, ceil_mode: bool = False)[source]

Applies a 1D power-average pooling over an input signal composed of several input planes.

On each window, the function computed is:

$f(X) = \sqrt[p]{\sum_{x \in X} x^{p}}$
• At p = $\infty$ , one gets Max Pooling

• At p = 1, one gets Sum Pooling (which is proportional to Average Pooling)

Note

If the sum to the power of p is zero, the gradient of this function is not defined. This implementation will set the gradient to zero in this case.

Parameters
• kernel_size – a single int, the size of the window

• stride – a single int, the stride of the window. Default value is kernel_size

• ceil_mode – when True, will use ceil instead of floor to compute the output shape

Shape:
• Input: $(N, C, L_{in})$

• Output: $(N, C, L_{out})$ , where

$L_{out} = \left\lfloor\frac{L_{in} - \text{kernel\_size}}{\text{stride}} + 1\right\rfloor$
Examples::
>>> # power-2 pool of window of length 3, with stride 2.
>>> m = nn.LPPool1d(2, 3, stride=2)
>>> input = torch.randn(20, 16, 50)
>>> output = m(input)