Глоссарий

GELU (Gaussian Error Linear Unit)

Узнай, как функция активации GELU улучшает модели трансформаторов вроде GPT-4, повышая градиентный поток, стабильность и эффективность.

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

Узнай больше

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

Что такое GELU?

GELU, сокращение от Gaussian Error Linear Unit, - это функция активации для нейронных сетей. Активационные функции решают, активировать нейрон или нет, вычисляя взвешенную сумму и далее добавляя к ней смещение. Цель функций активации - внести нелинейность в выход нейрона. GELU известна тем, что является гладкой аппроксимацией функции активации ReLU (Rectified Linear Unit), но с ключевым отличием: она основана на кумулятивной функции распределения гауссова распределения. Это делает GELU вероятностной и во многих случаях более эффективной, чем ReLU, особенно в современных нейросетевых архитектурах.

Как работает GELU

Основная идея GELU заключается в случайной регуляризации нейронов путем стохастического отбрасывания входов в зависимости от их значения. Проще говоря, для данного входа GELU взвешивает его в зависимости от того, больше он или меньше нуля, но в отличие от ReLU, который является жестким переключателем, GELU использует более плавный, вероятностный подход. Вероятностный подход основан на кумулятивной функции распределения (CDF) стандартного гауссовского распределения. По сути, эта функция спрашивает: "Учитывая входное значение "x", какова вероятность того, что оно больше, чем значение, взятое из стандартного гауссова распределения?". Затем эта вероятность масштабирует вход, что приводит к плавной нелинейной активации. Этот плавный переход вокруг нуля - ключевая характеристика, которая отличает GELU от ReLU и его разновидностей вроде Leaky ReLU, которые имеют резкий перегиб в нулевой точке.

Преимущества GELU

GELU обладает рядом преимуществ, которые способствуют его эффективности в нейронных сетях:

  • Гладкость: В отличие от ReLU, GELU является гладким во всей своей области, включая окрестности нуля. Такая гладкость помогает в оптимизации на основе градиента, облегчая обучение глубоких сетей и потенциально приводя к лучшему обобщению.
  • Ненасыщаемый для положительных входов: Как и ReLU, GELU ненасыщаема для положительных входов, что помогает смягчить проблему исчезающего градиента, позволяя обучать более глубокие сети.
  • Эмпирический успех: GELU продемонстрировал высокие эмпирические показатели в различных современных моделях, особенно в архитектурах на основе трансформеров, широко используемых в обработке естественного языка и все чаще в компьютерном зрении. Было показано, что вероятностный подход к активации повышает точность модели во многих задачах.
  • Смягчение проблемы "умирающего ReLU": В то время как ReLU может страдать от проблемы "умирающего ReLU", когда нейроны становятся неактивными и перестают обучаться, плавная природа GELU и ненулевой выход для отрицательных входов помогают смягчить эту проблему.

Применение GELU

GELU нашел значительное применение в различных областях ИИ:

  • Обработка естественного языка (НЛП): GELU заметно используется в продвинутых моделях НЛП, включая BERT (Bidirectional Encoder Representations from Transformers) и его преемников. Его способность улучшать производительность моделей трансформеров сделала его основным элементом современных исследований и приложений в области НЛП. Например, такие модели, как GPT-3 и GPT-4, которые используются в продвинутых задачах генерации текста и машинного перевода, часто используют GELU в качестве функции активации.
  • Компьютерное зрение: Если традиционно ReLU и его разновидности были более распространены в компьютерном зрении, то GELU все чаще используется в моделях зрения, особенно в тех, которые включают в себя архитектуры трансформеров, например Vision Transformer (ViT). Для таких задач, как классификация изображений и обнаружение объектов, GELU может повысить способность модели к обучению сложным визуальным признакам. Например, модели, используемые в анализе медицинских изображений, начинают использовать GELU для потенциально повышенной точности диагностики.
  • Распознавание речи: Как и в НЛП, плавная активация GELU оказалась полезной в моделях распознавания речи, улучшая работу с последовательными данными и повышая точность преобразования речи в текст.

GELU против ReLU

Хотя и GELU, и ReLU - это нелинейные функции активации, предназначенные для улучшения производительности нейронных сетей, они отличаются друг от друга подходом:

  • ReLU (Rectified Linear Unit): ReLU - более простая функция, выводящая на вход прямую, если она положительна, и ноль в противном случае. Она эффективна с вычислительной точки зрения, но может страдать от проблемы "умирающего ReLU" и не является гладкой при нуле. Ты можешь узнать больше о ReLU и связанных с ней функциях активации, таких как Leaky ReLU, в нашем глоссарии.
  • GELU (Gaussian Error Linear Unit): GELU - это более гладкая и сложная функция, которая использует вероятностный подход, основанный на распределении Гаусса. Она, как правило, лучше работает в более сложных моделях, особенно в трансформерах, обеспечивая более тонкую активацию и смягчая такие проблемы, как "умирающий ReLU", из-за ненулевого выхода при отрицательных входах.

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

Дополнительные ресурсы

Чтобы углубить свое понимание GELU и связанных с ним понятий, изучи эти ресурсы:

  • Статья о GELU: Прочитай оригинальную научную статью о GELU, "Gaussian Error Linear Units (GELUs)" на arXiv, чтобы получить глубокое техническое понимание.
  • Функции активации в нейронных сетях: Ознакомься с полным обзором функций активации, включая GELU, в Википедии.
  • Понимание функций активации: Подробная статья в блоге, объясняющая различные функции активации, включая GELU, на сайте towardsdatascience.com.
  • Ultralytics Глоссарий: Чтобы узнать больше определений терминов, связанных с искусственным интеллектом и машинным обучением, загляни на Ultralytics Glossary.
  • Ultralytics YOLOv8: Изучи современные модели, использующие расширенные функции активации, в Ultralytics YOLOv8 Документация.
Читать полностью