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