Глоссарий

Выпадающий слой

Узнай, как выпадающие слои предотвращают чрезмерную подгонку в нейронных сетях, улучшая обобщение, робастность и производительность модели.

Обучай модели YOLO просто
с помощью Ultralytics HUB.

Узнай больше

Выпадающий слой - это техника регуляризации, используемая в нейронных сетях для предотвращения оверфиттинга, распространенной проблемы, когда модель хорошо работает на обучающих данных, но плохо - на невидимых. На этапе обучения выпадающий слой случайным образом "выпадает" или деактивирует определенный процент нейронов в сети. Этот процесс заставляет сеть обучаться более надежным характеристикам, которые не зависят от присутствия конкретных нейронов, тем самым улучшая способность модели к обобщению на новые, невидимые данные.

Как работает Dropout Layers

В стандартной нейронной сети каждый нейрон в слое соединен с каждым нейроном в предыдущем слое. Во время обучения эти связи усиливаются или ослабляются в зависимости от данных, которые обрабатывает сеть. Однако это может привести к тому, что сеть станет слишком специализированной для обучающих данных, улавливая шум и специфические закономерности, которые не очень хорошо обобщаются на новые данные.

Отсеивающий слой решает эту проблему, случайным образом устанавливая часть нейронов в слое на ноль на каждой итерации обучения. Доля выпадающих нейронов - это гиперпараметр, который обычно устанавливается в диапазоне от 0,2 до 0,5. Это означает, что от 20 до 50 % нейронов в слое будут деактивированы во время каждого прямого и обратного прохода. Выбор нейронов для отсева меняется с каждой итерацией, что позволяет сети не слишком полагаться на какой-либо отдельный нейрон.

Преимущества использования выпадающих слоев

Выпадающие слои дают несколько преимуществ при обучении моделей глубокого обучения:

  • Улучшенное обобщение: Не позволяя сети слишком сильно полагаться на конкретные нейроны, выпадающие слои способствуют обучению более надежным и обобщенным характеристикам.
  • Уменьшение оверфиттинга: Отсеивание помогает снизить переподгонку, поскольку вносит шум в процесс обучения, делая модель менее чувствительной к конкретным обучающим данным.
  • Эффект ансамбля: Отсев можно рассматривать как обучение ансамбля из нескольких сетей с разными подмножествами нейронов. Этот эффект ансамбля усредняет предсказания этих разных сетей, что приводит к улучшению общей производительности.
  • Вычислительная эффективность: Хотя отсев и влечет за собой некоторые накладные расходы во время обучения, он может привести к более быстрой сходимости и более эффективному обучению за счет снижения сложности полной сети.

Применение в реальном мире AI/ML

Выпадающие слои широко используются в различных приложениях глубокого обучения. Вот два конкретных примера:

  1. Распознавание изображений: В задачах распознавания образов, таких как те, которые выполняют конволюционные нейронные сети (CNN), часто используются выпадающие слои, чтобы улучшить способность модели к обобщению. Например, в сети, обученной классифицировать изображения, отсев может предотвратить чрезмерную привязку модели к конкретным признакам в обучающих изображениях, что приведет к улучшению производительности на разнообразном наборе новых изображений.
  2. Обработка естественного языка: В задачах обработки естественного языка (NLP), таких как анализ настроения или генерация текста, выпадающие слои могут применяться к рекуррентным нейронным сетям (RNN) или трансформаторным моделям. Выбрасывая нейроны случайным образом, модель учится делать предсказания на основе различных контекстуальных подсказок, повышая свою устойчивость и точность на невидимых текстовых данных.

Выпадение по сравнению с другими техниками регуляризации

Dropout - один из нескольких методов регуляризации, используемых в машинном обучении (ML). Вот как она сопоставляется с некоторыми другими распространенными методами:

  • Регуляризация L1 и L2: Эти методы добавляют штрафной член к функции потерь, основанный на величине весов модели. Регуляризация L1 поощряет разреженность, сводя некоторые веса к нулю, а регуляризация L2 поощряет уменьшение весов в целом. В отличие от dropout, эти методы не предполагают случайной деактивации нейронов, а скорее корректируют веса в процессе обучения.
  • Ранняя остановка: Эта техника подразумевает отслеживание производительности модели на валидационном наборе данных и остановку процесса обучения, когда производительность начинает ухудшаться. Хотя ранняя остановка может предотвратить чрезмерную подгонку, она не улучшает обучение надежных признаков так же, как отсев.
  • Увеличение данных: Эта техника подразумевает создание новых обучающих примеров путем применения преобразований к существующим данным, например, поворота или обрезки изображений. Дополнение данных увеличивает разнообразие обучающего набора, помогая модели лучше обобщаться. Несмотря на свою эффективность, это другой подход по сравнению с внутренней регуляризацией, которую обеспечивает отсев.

Реализация отсева в нейронных сетях

Выпадающие слои обычно вставляются между полносвязными слоями или после конволюционных слоев в нейронной сети. Их можно легко интегрировать в модели, использующие популярные фреймворки глубокого обучения, такие как TensorFlow и PyTorch. Скорость отсева, определяющая долю деактивируемых нейронов, - это гиперпараметр, который можно настраивать для оптимизации производительности модели. Для более продвинутых методов оптимизации модели изучи настройку гиперпараметров.

При реализации выпадения важно учитывать, что выпадающий слой ведет себя по-разному во время обучения и вывода. Во время обучения нейроны выпадают случайным образом, как описано выше. Однако во время вывода все нейроны активны, но их выходы уменьшаются на величину отсева, чтобы сохранить ожидаемую величину выхода. Такое масштабирование гарантирует, что предсказания модели будут согласованы между обучением и вычислением.

Для дальнейшего чтения ты можешь изучить оригинальную научную статью об отсеве, написанную Сриваставой и другими, в которой дается глубокий анализ метода и его эффективности: Dropout: A Simple Way to Prevent Neural Networks from Overfitting. Также ты можешь узнать больше о таких смежных понятиях, как пакетная нормализация и регуляризация, чтобы глубже понять техники, используемые для повышения производительности нейронных сетей.

Читать полностью