Skip to contents

In the simplest case, the output value of the layer with input size (N,C,L), output (N,C,Lout) and kernel_size k can be precisely described as:

Usage

nn_avg_pool1d(
  kernel_size,
  stride = NULL,
  padding = 0,
  ceil_mode = FALSE,
  count_include_pad = TRUE
)

Arguments

kernel_size

the size of the window

stride

the stride of the window. Default value is kernel_size

padding

implicit zero padding to be added on both sides

ceil_mode

when TRUE, will use ceil instead of floor to compute the output shape

count_include_pad

when TRUE, will include the zero-padding in the averaging calculation

Details

out(Ni,Cj,l)=1km=0k1input(Ni,Cj,stride×l+m)

If padding is non-zero, then the input is implicitly zero-padded on both sides for padding number of points.

The parameters kernel_size, stride, padding can each be an int or a one-element tuple.

Shape

  • Input: (N,C,Lin)

  • Output: (N,C,Lout), where

Lout=Lin+2×paddingkernel\_sizestride+1

Examples

if (torch_is_installed()) {

# pool with window of size=3, stride=2
m <- nn_avg_pool1d(3, stride = 2)
m(torch_randn(1, 1, 8))
}
#> torch_tensor
#> (1,.,.) = 
#>  -0.4294 -0.6027  0.4520
#> [ CPUFloatType{1,1,3} ]