AlphaDropout
-
class torch.nn.AlphaDropout(p=0.5, inplace=False)[source] -
Применяет Alpha Dropout к входным данным.
Alpha Dropout — это тип Dropout, который сохраняет свойство самонормализации. Для входных данных с нулевым средним значением и единичной стандартной девиацией, выход Alpha Dropout сохраняет исходное среднее значение и стандартное отклонение входных данных. Alpha Dropout тесно связан с функцией активации SELU, которая гарантирует, что выходы имеют нулевое среднее значение и единичную стандартную девиацию.
Во время обучения он случайным образом маскирует некоторые элементы тензора входных данных с вероятностью p, используя выборки из распределения Бернулли. Маскируемые элементы случайны при каждом вызове прямого прохода и масштабируются и смещаются для сохранения нулевого среднего значения и единичной стандартной девиации.
Во время проверки модуль просто вычисляет тождественную функцию.
Дополнительные сведения можно найти в статье Self-Normalizing Neural Networks.
- Параметры
- Форма:
-
- Вход: . Вход может иметь любую форму
- Выход: . Выход имеет такую же форму, как и вход
Примеры:
>>> m = nn.AlphaDropout(p=0.2) >>> input = torch.randn(20, 16) >>> output = m(input)
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.nn.AlphaDropout.html