6 типов функций активации в нейронных сетях, которые вам нужно знать
Опубликовано: 2020-02-13В связи с тем, что глубокое обучение становится основной технологией, в последнее время много говорят об ИНС или искусственных нейронных сетях. Сегодня ANN является основным компонентом в различных развивающихся областях, таких как распознавание рукописного ввода, сжатие изображений, прогнозирование фондовых бирж и многое другое. Узнайте больше о типах искусственных нейронных сетей в машинном обучении.
Но что такое искусственная нейронная сеть?
Искусственная нейронная сеть — это модель глубокого обучения, которая черпает вдохновение из нейронной структуры человеческого мозга. ИНС были разработаны для имитации функций человеческого мозга, который учится на собственном опыте и адаптируется в соответствии с ситуацией. Подобно тому, как человеческий мозг имеет многоуровневую структуру, содержащую миллиарды нейронов, расположенных в иерархическом порядке, ИНС также имеет сеть нейронов, которые связаны друг с другом через аксоны.
Эти взаимосвязанные нейроны передают электрические сигналы (называемые синапсами) от одного слоя к другому. Эта имитация моделирования мозга позволяет ИНС учиться на собственном опыте, не требуя вмешательства человека.
Читайте: Искусственная нейронная сеть в интеллектуальном анализе данных
Таким образом, ИНС представляют собой сложные структуры, содержащие взаимосвязанные адаптивные элементы, известные как искусственные нейроны, которые могут выполнять большие вычисления для представления знаний. Они обладают всеми фундаментальными качествами биологической нейронной системы, включая способность к обучению, надежность, нелинейность, высокую степень параллелизма, отказоустойчивость, способность обрабатывать неточную и нечеткую информацию и способность к обобщению.

Присоединяйтесь к онлайн- курсам по искусственному интеллекту в ведущих университетах мира — магистерским программам, программам последипломного образования для руководителей и программам повышения квалификации в области машинного обучения и искусственного интеллекта, чтобы ускорить свою карьеру.
Оглавление
Основные характеристики искусственных нейронных сетей
- Нелинейность обеспечивает лучшее соответствие данным.
- Высокий уровень параллелизма способствует быстрой обработке и отказоустойчивости оборудования.
- Обобщение позволяет применять модель к необученным данным.
- Нечувствительность к шуму, позволяющая делать точные прогнозы даже для неточных данных и ошибок измерения.
- Обучение и адаптивность позволяют модели обновлять свою внутреннюю архитектуру в соответствии с меняющейся средой.
Вычисления на основе ИНС в первую очередь направлены на разработку передовых математических алгоритмов, которые позволяют искусственным нейронным сетям учиться, имитируя функции обработки информации и получения знаний человеческим мозгом.
Компоненты искусственных нейронных сетей
ИНС состоят из трех основных слоев или фаз — входного слоя, скрытого слоя (слоев) и выходного слоя.
- Входной слой: на первый слой подаются входные данные, то есть необработанные данные. Он передает информацию из внешнего мира в сеть. На этом уровне не выполняются никакие вычисления — узлы просто передают информацию скрытому слою.
- Скрытый слой: в этом слое узлы скрыты за входным слоем — они составляют часть абстракции в каждой нейронной сети. Все вычисления с функциями, введенными через входной слой, происходят в скрытых слоях, а затем он передает результат в выходной слой.
- Выходной слой: этот слой отображает результаты вычислений, выполненных сетью во внешнем мире.
Источник
Нейронные сети можно разделить на разные типы в зависимости от активности скрытых слоев. Например, в простой нейронной сети скрытые единицы могут создать свое уникальное представление входных данных. Здесь веса между скрытыми и входными единицами определяют, когда каждая скрытая единица активна.
Таким образом, регулируя эти веса, скрытый слой может выбирать, что он должен представлять. Другие архитектуры включают одноуровневые и многоуровневые модели. В одном слое обычно есть только входной и выходной слой — в нем отсутствует скрытый слой. Принимая во внимание, что в многослойной модели есть один или несколько скрытых слоев.
Что такое функции активации в нейронной сети?
Как мы упоминали ранее, ИНС являются важнейшим компонентом многих структур, которые помогают революционизировать мир вокруг нас. Но задумывались ли вы когда-нибудь, как ИНС обеспечивают современную производительность для поиска решений реальных проблем?
Ответ – Функции активации.
ИНС используют функции активации (AF) для выполнения сложных вычислений в скрытых слоях, а затем передают результат на выходной слой. Основная цель AF — привнести нелинейные свойства в нейронную сеть.
Они преобразуют линейные входные сигналы узла в нелинейные выходные сигналы, чтобы облегчить изучение полиномов высокого порядка, выходящих за пределы одной степени для глубоких сетей. Уникальным аспектом AF является то, что они дифференцируемы — это помогает им функционировать во время обратного распространения нейронных сетей.
Зачем нужна нелинейность?
Если функции активации не применяются, выходной сигнал будет линейной функцией, которая представляет собой полином одной степени. Хотя линейные уравнения легко решать, они имеют ограниченный коэффициент сложности и, следовательно, имеют меньше возможностей для изучения сложных функциональных отображений на основе данных. Таким образом, без AF нейронная сеть была бы моделью линейной регрессии с ограниченными возможностями.
Это определенно не то, чего мы хотим от нейронной сети. Задача нейронных сетей — выполнять очень сложные вычисления. Кроме того, без AF нейронные сети не могут изучать и моделировать другие сложные данные, включая изображения, речь, видео, аудио и т. д.
AF помогают нейронным сетям понимать сложные, многомерные и нелинейные наборы больших данных, которые имеют сложную архитектуру — они содержат несколько скрытых слоев между входным и выходным слоями.
Читайте: Глубокое обучение против нейронной сети
Теперь, без лишних слов, давайте углубимся в различные типы функций активации, используемых в ИНС.
Типы функций активации
1. Сигмовидная функция
В ANN сигмоидальная функция представляет собой нелинейную AF, используемую в основном в нейронных сетях с прямой связью. Это дифференцируемая действительная функция, определенная для действительных входных значений и содержащая всюду положительные производные с определенной степенью гладкости. Сигмоидальная функция появляется в выходном слое моделей глубокого обучения и используется для прогнозирования выходных данных на основе вероятности. Сигмовидная функция представлена в виде:
Источник
Как правило, производные сигмовидной функции применяются к алгоритмам обучения. График сигмовидной функции имеет S-образную форму.
Некоторые из основных недостатков сигмовидной функции включают насыщение градиента, медленную сходимость, резкие влажные градиенты во время обратного распространения из более глубоких скрытых слоев к входным слоям и ненулевой центрированный вывод, который заставляет обновления градиента распространяться в различных направлениях.

2. Функция гиперболического тангенса (Tanh)
Функция гиперболического тангенса, также известная как функция тангенса, является еще одним типом AF. Это более сглаженная функция с нулевым центром, имеющая диапазон от -1 до 1. В результате результат функции tanh представлен следующим образом:
Источник
Функция tanh используется гораздо шире, чем сигмовидная функция, поскольку она обеспечивает лучшую производительность обучения для многослойных нейронных сетей. Самым большим преимуществом функции tanh является то, что она производит выходной сигнал с центром в нуле, тем самым поддерживая процесс обратного распространения ошибки. Функция tanh в основном используется в рекуррентных нейронных сетях для обработки естественного языка и задач распознавания речи.
Однако у функции тангенса тоже есть ограничение — как и у сигмоидальной функции, она не может решить проблему исчезающего градиента. Кроме того, функция tanh может достигать градиента 1 только тогда, когда входное значение равно 0 (x равно нулю). В результате функция может создавать мертвые нейроны в процессе вычислений.
3. Функция Софтмакс
Функция softmax — это еще один тип AF, используемый в нейронных сетях для вычисления распределения вероятностей по вектору действительных чисел. Эта функция генерирует выходные данные, которые находятся в диапазоне значений от 0 до 1, а сумма вероятностей равна 1. Функция softmax представлена следующим образом:
Источник
Эта функция в основном используется в моделях с несколькими классами, где она возвращает вероятности каждого класса, причем целевой класс имеет наибольшую вероятность. Он появляется почти во всех выходных слоях архитектуры DL, где они используются. Основное различие между сигмовидной и softmax AF заключается в том, что первая используется в бинарной классификации, а вторая — в многомерной.
4. Функция Softsign
Функция softsign — это еще один AF, который используется в вычислениях на нейронных сетях. Хотя в первую очередь он используется в задачах регрессионных вычислений, в настоящее время он также используется в приложениях для преобразования текста в речь на основе DL. Это квадратичный многочлен, представленный:
Источник
Здесь «x» равно абсолютному значению ввода.
Основное различие между функцией softsign и функцией tanh заключается в том, что в отличие от функции tanh, которая сходится экспоненциально, функция softsign сходится в полиномиальной форме.
5. Функция выпрямленного линейного блока (ReLU)
Одна из самых популярных AF в моделях DL, функция выпрямленной линейной единицы (ReLU), представляет собой быстро обучающуюся AF, которая обещает обеспечить современную производительность со звездными результатами. По сравнению с другими AF, такими как сигмовидная и тангенциальная функции, функция ReLU предлагает гораздо лучшую производительность и обобщение в глубоком обучении. Функция представляет собой почти линейную функцию, которая сохраняет свойства линейных моделей, что упрощает их оптимизацию с помощью методов градиентного спуска.
Функция ReLU выполняет пороговую операцию для каждого входного элемента, где все значения меньше нуля устанавливаются равными нулю. Таким образом, ReLU представляется как:
Источник
Выпрямляя значения входных данных меньше нуля и устанавливая их равными нулю, эта функция устраняет проблему исчезающего градиента, наблюдаемую в более ранних типах функций активации (сигмоидальная и тангенсная).
Наиболее значительным преимуществом использования функции ReLU в вычислениях является то, что она гарантирует более быстрое вычисление — она не вычисляет экспоненты и деления, тем самым повышая общую скорость вычислений. Еще один важный аспект функции ReLU заключается в том, что она вносит разреженность в скрытые единицы, сжимая значения от нуля до максимума.
6. Функция экспоненциальных линейных единиц (ELU)
Функция экспоненциальных линейных единиц (ELU) — это AF, который также используется для ускорения обучения нейронных сетей (точно так же, как функция ReLU). Самым большим преимуществом функции ELU является то, что она может устранить проблему исчезающего градиента, используя идентичность для положительных значений и улучшая характеристики обучения модели.
ELU имеют отрицательные значения, которые приближают среднюю активацию единицы к нулю, тем самым снижая вычислительную сложность и повышая скорость обучения. ELU — отличная альтернатива ReLU — он уменьшает сдвиг смещения, приближая среднюю активацию к нулю во время процесса обучения.
Экспоненциальная линейная единичная функция представлена в виде:

Производная или градиент уравнения ELU представлена в виде:
Источник
Здесь «α» равно гиперпараметру ELU, который управляет точкой насыщения для отрицательных чистых входных данных, которая обычно устанавливается на 1,0. Однако у функции ELU есть ограничение — она не центрируется на нуле.
Заключение
Сегодня AF, такие как ReLU и ELU, привлекли к себе максимальное внимание, поскольку они помогают устранить проблему исчезающего градиента, которая вызывает серьезные проблемы в процессе обучения и снижает точность и производительность моделей нейронных сетей.
Ознакомьтесь с программой продвинутой сертификации в области машинного обучения и облачных вычислений от IIT Madras, лучшей инженерной школы в стране, чтобы создать программу, которая научит вас не только машинному обучению, но и его эффективному развертыванию с использованием облачной инфраструктуры. Наша цель в этой программе - открыть двери самого избирательного института в стране и предоставить учащимся доступ к замечательным преподавателям и ресурсам, чтобы овладеть навыком, который находится на высоком и растущем уровне.
Что такое искусственная нейронная сеть?
ANN — это модель глубокого обучения, вдохновленная нейронной структурой человеческого мозга. ИНС были созданы для воспроизведения деятельности человеческого мозга, который учится на своем опыте и адаптируется к своему окружению. ИНС содержит сеть нейронов, соединенных друг с другом аксонами, подобно тому, как человеческий разум имеет многоуровневую структуру с миллиардами нейронов, расположенных в иерархическом порядке. Электрические сигналы (называемые синапсами) передаются от одного слоя к другому этими связанными нейронами. Благодаря этому приближению к моделированию мозга ИНС может учиться на собственном опыте без участия человека.
Что такое функции активации в нейронных сетях?
ИНС используют функции активации (AF) в скрытых слоях для проведения сложных вычислений, а затем передают результаты на выходной уровень. Основная цель AF — придать нейронной сети нелинейные качества. Они преобразуют линейные входные сигналы узла в нелинейные выходные сигналы, чтобы помочь глубоким сетям изучать полиномы высокого порядка с более чем одной степенью. AF отличаются тем, что они дифференцируемы, что помогает их роли во время обратного распространения нейронной сети.
Зачем нужна нелинейность?
Если никакие функции активации не используются, выходной сигнал представляет собой линейное преобразование, которое представляет собой полином одной степени. Хотя линейные уравнения легко решить, они имеют низкий коэффициент сложности, что ограничивает их способность изучать сложные отображения на основе данных. Нейронная сеть без АФ будет представлять собой обобщенную линейную модель с ограниченными возможностями. Это не та производительность, которую мы ожидаем от нейронной сети. Нейронные сети используются для выполнения чрезвычайно сложных вычислений. Кроме того, нейронные сети не могут изучать и представлять другие сложные данные без AF, такие как фотографии, голос, фильмы, аудио и так далее.