Dropout3d
-
class torch.nn.Dropout3d(p=0.5, inplace=False)[source] -
Случайно обнуляет целые каналы (канал — это 3D карта признаков, например, -й канал -й выборки в пакетном входе — это 3D тензор ). Каждый канал независимо обнуляется на каждом вызове вперёд с вероятностью
p, используя выборки из распределения Бернулли.Обычно вход поступает из модулей
nn.Conv3d.Как описано в статье Efficient Object Localization Using Convolutional Networks, если смежные пиксели внутри карт признаков сильно коррелированы (как обычно бывает в ранних слоях свёрток), то независимое дропаут не будет регуляризировать активации и в противном случае просто приведёт к уменьшению эффективной скорости обучения.
В этом случае,
nn.Dropout3d()поможет повысить независимость между картами признаков и должен использоваться вместо него.- Параметры:
- Форма:
-
- Вход: или .
- Выход: или (такая же форма, как у входа).
Примеры:
>>> m = nn.Dropout3d(p=0.2) >>> input = torch.randn(20, 16, 4, 32, 32) >>> output = m(input)
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/1.13/generated/torch.nn.Dropout3d.html