Открыть сервис

Функция активации ReLU

Функция активации ReLU (Rectified Linear Unit, выпрямленная линейная единица) — это математическая функция, используемая в искусственных нейронных сетях в качестве функции активации нейронов. Она определяется как положительная часть своего аргумента: \( f(x) = \max(0, x) \). ReLU является одной из наиболее распространённых и фундаментальных функций активации в глубоком обучении, начиная с конца 2000-х годов, благодаря своей простоте, эффективности вычислений и способности решать проблему исчезающего градиента, характерную для сигмоидальных функций.

История

Идея использования выпрямленной линейной функции в нейронных сетях восходит к работам 1970-х годов, в частности, к исследованиям Кунихико Фукусимы, который в 1975 году предложил функцию активации, близкую к ReLU, в контексте когнитрона. Однако широкое распространение ReLU получила лишь после 2009—2011 годов, когда группа исследователей под руководством Джеффри Хинтона (Университет Торонто) и Йошуа Бенжио (Университет Монреаля) продемонстрировала её эффективность при обучении глубоких нейронных сетей с использованием метода обратного распространения ошибки. В 2011 году работа Xavier Glorot, Antoine Bordes и Yoshua Bengio «Deep Sparse Rectifier Neural Networks» систематически обосновала преимущества ReLU, включая её способность порождать разреженные представления данных. С тех пор ReLU стала стандартной функцией активации для свёрточных нейронных сетей (CNN) и многослойных перцептронов (MLP).

Определение и математическая форма

Математически ReLU записывается как:

\[ f(x) = \max(0, x) = \begin{cases} x, & \text{если } x \ge 0, \\ 0, & \text{если } x < 0. \end{cases} \]

Производная функции (градиент) равна 1 для положительных значений аргумента и 0 для отрицательных. В точке \( x = 0 \) производная не определена в классическом смысле; на практике её часто принимают равной 0 или 1, либо используют субградиент.

Свойства

Вычислительная эффективность

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

Разреженность активаций

При отрицательных входных значениях нейрон выдаёт ноль, что приводит к разреженности активаций — многие нейроны в сети оказываются «выключенными». Это способствует уменьшению переобучения и улучшению обобщающей способности модели.

Решение проблемы исчезающего градиента

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

Нелинейность

Несмотря на кусочно-линейный характер, ReLU является нелинейной функцией, что позволяет нейронным сетям аппроксимировать сложные нелинейные зависимости. Комбинация нескольких слоёв с ReLU даёт возможность моделировать произвольные функции.

Недостатки и ограничения

Проблема «умирающего ReLU»

При отрицательных входных значениях градиент равен нулю, и нейрон перестаёт обучаться — его веса больше не обновляются. Если большое количество нейронов в сети оказывается в этой зоне, сеть теряет способность к обучению. Это явление называется «умирающий ReLU» (dying ReLU). Для смягчения этой проблемы были разработаны модификации, такие как Leaky ReLU, PReLU и ELU.

Неограниченность выходных значений

Выход ReLU может расти неограниченно при увеличении входного сигнала, что может приводить к нестабильности обучения, особенно при использовании больших скоростей обучения. Для контроля этого эффекта применяют регуляризацию (например, L2-регуляризацию) или нормализацию (batch normalization).

Несимметричность относительно нуля

ReLU не является симметричной функцией (среднее значение выходов не равно нулю), что может замедлять сходимость градиентного спуска. В некоторых архитектурах предпочитают использовать функции с нулевым средним, такие как ELU или SELU.

Модификации и варианты

Для преодоления недостатков базовой ReLU были предложены несколько её вариантов:

  • Leaky ReLU (LReLU): \( f(x) = \max(\alpha x, x) \), где \( \alpha \) — малый положительный коэффициент (обычно 0.01). Позволяет сохранять небольшой градиент для отрицательных входов.
  • Parametric ReLU (PReLU): аналогична Leaky ReLU, но параметр \( \alpha \) обучается в процессе обучения.
  • Exponential Linear Unit (ELU): \( f(x) = \max(x, \alpha(e^x - 1)) \). Обеспечивает плавный переход к отрицательным значениям и нулевое среднее выходов.
  • Scaled Exponential Linear Unit (SELU): \( f(x) = \lambda \cdot \text{ELU}(x) \), где \( \lambda \) и \( \alpha \) подобраны так, чтобы выходы сети автоматически нормализовались (свойство самонормализации).
  • Gaussian Error Linear Unit (GELU): \( f(x) = x \cdot \Phi(x) \), где \( \Phi(x) \) — функция распределения стандартного нормального распределения. Используется в трансформерах (например, в BERT).
  • Swish (или SiLU): \( f(x) = x \cdot \sigma(x) \), где \( \sigma(x) \) — сигмоида. Предложена компанией Google в 2017 году; показывает улучшенные результаты на некоторых задачах.

Применение

ReLU и её варианты являются стандартным выбором для функций активации в скрытых слоях глубоких нейронных сетей, особенно в:

  • Свёрточных нейронных сетях (CNN) — для задач компьютерного зрения (классификация изображений, детекция объектов, сегментация).
  • Многослойных перцептронах (MLP) — для задач регрессии и классификации табличных данных.
  • Генеративно-состязательных сетях (GAN) — в генераторах и дискриминаторах.
  • Рекуррентных нейронных сетях (RNN) — реже, из-за проблем с градиентами; в таких сетях чаще используют tanh или LSTM.
  • Трансформерах — в полносвязных слоях (например, в BERT и GPT используется GELU).

Критика и альтернативы

Несмотря на широкое распространение, ReLU не является универсально лучшей функцией активации. В некоторых задачах альтернативы, такие как ELU, SELU или Swish, могут обеспечивать более высокую точность или стабильность обучения. Кроме того, в выходных слоях для задач классификации обычно используют softmax, а для регрессии — линейную активацию. В последние годы также набирают популярность функции активации на основе полиномов (например, Mish) и адаптивные функции, обучаемые в процессе обучения.

Интересные факты

  • Название «ReLU» происходит от «Rectified Linear Unit» — термин, заимствованный из электротехники, где «выпрямление» означает преобразование переменного тока в постоянный.
  • ReLU является кусочно-линейной функцией, что делает её простой для аппаратной реализации, в том числе на специализированных чипах (ASIC, FPGA) и в нейроморфных процессорах.
  • В 2017 году исследователи из Google Brain показали, что замена ReLU на Swish в некоторых архитектурах может улучшить точность на 0.6—1.0% на наборе данных ImageNet.
  • Проблема «умирающего ReLU» особенно остро проявляется при обучении с очень большими скоростями обучения или при неправильной инициализации весов.

Источники

  • Glorot X., Bordes A., Bengio Y. Deep Sparse Rectifier Neural Networks // Proceedings of the 14th International Conference on Artificial Intelligence and Statistics (AISTATS). — 2011. — P. 315–323.
  • Nair V., Hinton G. E. Rectified Linear Units Improve Restricted Boltzmann Machines // Proceedings of the 27th International Conference on Machine Learning (ICML). — 2010. — P. 807–814.
  • Maas A. L., Hannun A. Y., Ng A. Y. Rectifier Nonlinearities Improve Neural Network Acoustic Models // Proceedings of the 30th International Conference on Machine Learning (ICML). — 2013.
  • Clevert D.-A., Unterthiner T., Hochreiter S. Fast and Accurate Deep Network Learning by Exponential Linear Units (ELUs) // arXiv preprint arXiv:1511.07289. — 2015.
  • Ramachandran P., Zoph B., Le Q. V. Swish: a Self-Gated Activation Function // arXiv preprint arXiv:1710.05941. — 2017.
  • Klambauer G., Unterthiner T., Mayr A., Hochreiter S. Self-Normalizing Neural Networks // Advances in Neural Information Processing Systems (NeurIPS). — 2017. — P. 971–980.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →