AvgPool2d
-
class torch.nn.modules.pooling.AvgPool2d(kernel_size, stride=None, padding=0, ceil_mode=False, count_include_pad=True, divisor_override=None)[исходный код] -
Выполняет двумерный пулинг с усреднением для входного сигнала, состоящего из нескольких входных плоскостей.
В простейшем случае выходное значение слоя с размером входа , выходом и
kernel_sizeможно точно описать следующим образом:Если
paddingне равно нулю, вход неявно дополняется нулями с обеих сторон наpaddingточек.Примечание
Если ceil_mode=True, скользящие окна могут выходить за границы, если они начинаются внутри левого дополнения или входных данных. Скользящие окна, которые начинались бы в области дополнения справа, игнорируются.
Примечание
Значение pad не должно превышать половину эффективного размера ядра.
Параметры
kernel_size,stride,paddingмогут быть представлены в одном из следующих видов:- одним
intили кортежем из одного элемента — в этом случае одно и то же значение используется для измерений высоты и ширины tupleиз двух целых чисел — в этом случае первоеintиспользуется для измерения высоты, а второеint— для измерения ширины
- Параметры:
-
- kernel_size (int | tuple[int, int]) – размер окна
-
stride (int | tuple[int, int]) – шаг окна. Значение по умолчанию —
kernel_size - padding (int | tuple[int, int]) – неявное дополнение нулями, добавляемое с обеих сторон
-
ceil_mode (bool) – если True, для вычисления размера выхода используется
ceilвместоfloor - count_include_pad (bool) – если True, дополнение нулями включается в вычисление среднего значения
- divisor_override (int | None) – если задано, используется в качестве делителя; в противном случае используется размер области пулинга.
- Форма:
-
- Вход: или .
-
Выход: или , где
Согласно приведённому выше примечанию, если
ceil_modeравно True и , последнее окно пропускается, поскольку оно начиналось бы в нижней области дополнения, в результате чего значение уменьшается на единицу.То же самое относится к .
Примеры:
>>> # pool of square window of size=3, stride=2 >>> m = nn.AvgPool2d(3, stride=2) >>> # pool of non-square window >>> m = nn.AvgPool2d((3, 2), stride=(2, 1)) >>> input = torch.randn(20, 16, 50, 32) >>> output = m(input)
-
forward(input)[исходный код] -
Выполняет прямой проход.
- Тип возвращаемого значения:
- одним
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.nn.modules.pooling.AvgPool2d.html