ReLU — простая активация, которая пропускает положительные значения и обнуляет отрицательные, формируя разрежённые и легко обучаемые представления.
Определение
ReLU (Rectified Linear Unit) — одна из самых распространённых функций активации в нейронных сетях. Она определена формулой ReLU(x) = max(0, x) и представляет собой простое обрезание отрицательных значений. Благодаря отсутствию сложных вычислений и хорошей масштабируемости ReLU долгое время была стандартом для глубоких моделей, особенно в компьютерном зрении и ранних архитектурах обработки текста.
ReLU формирует разрежённые представления — значительная часть значений обнуляется, что снижает вычислительные затраты и уменьшает риск взрывных градиентов.
Как работает
Активация применяется к каждому элементу скрытого представления независимо. Если значение положительное, оно остаётся неизменным; если отрицательное — заменяется нулём.
- линейность для x > 0 — избегает насыщения и сохраняет стабильный градиент;
- обнуление x ≤ 0 — обеспечивает разрежённость;
- простые вычисления — только сравнение и копирование значения;
- локальность — применяется покомпонентно;
- стабильность градиента — нет экспонент и сложных производных.
Благодаря своей структуре ReLU стала основным драйвером успеха глубоких CNN-поколений и ранних сетей обработки текста.
Где применяется
- Компьютерное зрение (CNN-архитектуры).
- Классические многослойные перцептроны.
- Вспомогательные проекции в моделях мультимодальности.
- Лёгкие модели и архитектуры для edge-устройств.
- Некоторые формы FFN в старых трансформерах.
Практические примеры использования
В CNN ReLU ускоряет обучение и стабилизирует глубокие слои, так как положительные значения передаются без искажений, а отрицательные обрезаются. Это помогает формировать «специализированные» фильтры, где разные каналы отвечают за различные признаки изображения.
В ранних архитектурах текстовых моделей ReLU использовали в FFN-блоках, однако в трансформерах она уступила место более гладким нелинейностям (GELU, Swish, SwiGLU), которые обеспечивают лучшую устойчивость обучения.
В lightweight-моделях ReLU всё ещё используется благодаря минимальной стоимости вычислений и высокой предсказуемости поведения.
Основные проблемы ReLU
Несмотря на популярность, ReLU имеет ряд серьёзных ограничений:
- «вымирающие нейроны» — если значение ушло в отрицательную область, градиент становится нулевым, и нейрон может перестать обучаться;
- жёсткое отсечение — отсутствие плавного перехода приводит к резким скачкам производных;
- нестабильность на больших глубинах — при увеличении числа слоёв сигнал может полностью деградировать;
- низкая выразительность в сравнение с gating-модулями — современные FFN требуют более гибких нелинейностей.
Из-за этих ограничений ReLU практически вышла из использования в трансформерах.
Улучшенные варианты
Чтобы решить проблемы ReLU, были разработаны её вариации:
- Leaky ReLU — небольшое пропускание отрицательных значений;
- PReLU — параметрический вариант с обучаемой «наклонной» частью;
- ELU / SELU — сглаженные варианты с экспоненциальным продолжением;
- Mish — гладкая альтернатива с мягкой кривой;
- GELU — вероятностная нелинейность, стандарт ранних трансформеров;
- SwiGLU — текущий стандарт в LLM благодаря gating-механизмам.
Современные трансформеры полностью отказались от ReLU, так как более гладкие активации обеспечивают лучшее качество и устойчивость.
Преимущества и ограничения
- Плюс: крайне простая и быстрая.
- Плюс: устойчивая на небольших глубинах.
- Плюс: порождает разрежённые представления.
- Плюс: легко оптимизируется в классических архитектурах.
- Минус: проблема «вымирающих нейронов».
- Минус: резкая нелинейность ухудшает стабильность глубоких моделей.
- Минус: не подходит для современных трансформеров.
- Минус: хуже управляет градиентом по сравнению с GELU или SwiGLU.
Связанные термины
- Activation function
- GELU
- Swish
- SwiGLU
- Feed-forward network
- Residual connections
- Nonlinear activations