Dropout3d
-
class torch.nn.Dropout3d(p=0.5, inplace=False)[исходный код] -
Случайным образом обнуляет целые каналы.
Канал — это 3D-карта признаков, например -й канал -го элемента пакетного входа — это 3D-тензор .
При каждом прямом проходе каждый канал независимо обнуляется с вероятностью
pна основе выборок из распределения Бернулли.Обычно вход поступает из модулей
nn.Conv3d.Как описано в статье Эффективная локализация объектов с помощью сверточных сетей , если соседние пиксели внутри карт признаков сильно коррелируют (что обычно наблюдается на ранних слоях свертки), то независимый и одинаково распределенный dropout не будет регуляризовать активации, а лишь приведет к эффективному снижению скорости обучения.
В этом случае
nn.Dropout3d()поможет обеспечить независимость между картами признаков, и его следует использовать вместо этого.- Параметры:
- Форма:
-
- Вход: или .
- Выход: или (та же форма, что и у входа).
Примеры:
>>> m = nn.Dropout3d(p=0.2) >>> input = torch.randn(20, 16, 4, 32, 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.Dropout3d.html