Функции активации в нейронных сетях

машинное обучение

Автор | Рену Ханделвал Компилировать|ВКонтакте Источник|Средний

Что такое функция активации нейронной сети?

Функция активации помогает решить, нужно ли нам активировать нейрон. Если нам нужно запустить нейрон, какова сила сигнала.

Функция активации — это механизм, с помощью которого нейроны обрабатывают и передают информацию через нейронную сеть.

Зачем нужна функция активации в нейронной сети?

В нейронной сети z — это произведение входного узла и веса узла плюс смещение. Уравнение для z очень похоже на линейное уравнение и может принимать значения от +∞ до -∞

Если значение нейрона может варьироваться от отрицательной бесконечности до положительной бесконечности, то мы не можем решить, нужно ли нам активировать нейрон или нет. Здесь функции активации помогают нам решить проблему.

Если z линейно, то мы не можем решать сложные задачи. Это еще одна причина, по которой мы используем функции активации.

Существуют следующие различные типы функций активации

  • Пороговая функция или функция ступенчатой ​​активации
  • Sigmoid
  • Softmax
  • Tanh или гиперболический тангенс
  • ReLU
  • Leaky ReLU

Зачем нам нужно так много разных функций активации и как мне решить, какую из них использовать?

Давайте рассмотрим каждую функцию активации и поймем, где и почему их лучше всего использовать. Это поможет нам решить, какую функцию активации использовать в разных сценариях.

Пороговая функция или функция ступенчатой ​​активации

это самая простая функция

Если значение z выше порога, активация устанавливается на 1 или да, и нейрон будет активирован.

Если значение z ниже порога, активация устанавливается на 0 или нет, и нейрон не активируется.

они правыдвухклассныйОчень полезно. 】

Сигмовидная функция активации

Сигмовидная функция — гладкая нелинейная функция, без изломов, по форме похожая на сигмовидную.

Он предсказывает вероятность выхода и поэтому используется в выходном слое нейронных сетей и логистической регрессии.

Поскольку диапазон вероятности находится между 0 и 1, значение сигмовидной функции находится между 0 и 1.

Но что, если мы хотим классифицировать больше да или нет?Что, если я хочу предсказать более одного класса, скажем, солнечно, дождливо или облачно?

Активация Softmax помогает с классификацией нескольких классов

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

Сигмовидная функция активации используется для двухклассовой или двухклассовой классификации, а softmax используется для многоклассовой классификации, которая является обобщением сигмовидной функции.

В softmax получаем вероятности каждого класса, их сумма должна быть равна 1. Когда вероятность одного класса увеличивается, вероятность других классов уменьшается, поэтому класс с наибольшей вероятностью является выходным классом.

Например: при прогнозировании погоды мы можем получить выходные вероятности: 0,68 для солнечных дней, 0,22 для облачных дней и 0,20 для дождливых дней. В этом случае мы принимаем выход с наибольшей вероятностью в качестве конечного выхода. В этом случае мы прогнозируем, что завтра будет солнечно.

Softmax вычисляет вероятность каждого целевого класса, деленную на вероятность всех возможных целевых классов.

Гиперболический тангенс или функция активации Tanh

Для гиперболической функции тангенса выход центрируется на 0, а выход находится в диапазоне от -1 до +1.

Очень похоже на сигмоид. На самом деле гиперболический тангенс представляет собой масштабированную сигмовидную функцию. По сравнению с Sigmoid tanh имеет более сильный эффект градиентного спуска, поэтому он более популярен, чем Sigmoid.

Преимущество tanh заключается в том, что отрицательные входные данные будут отображаться как сильно отрицательные, а нулевые входные данные будут отображаться близко к нулю, чего не происходит в сигмовидной, потому что сигмовидная колеблется от 0 до 1.

ReLU

ReLU по своей природе нелинейный, что означает, что его наклон не является постоянным. Relu нелинейна около 0, но наклон равен 0 или 1, поэтому он имеет ограниченную нелинейность.

Диапазон от 0 до ∞

Когда z положителен, выход ReLU совпадает с входом. Когда z равно 0 или меньше, вывод равен 0. Поэтому, когда вход равен 0 или ниже 0, ReLU отключает нейрон.

Все модели глубокого обучения используют Relu, но из-за редкости Relu его можно использовать только для скрытых слоев. Разреженность относится к количеству значений NULL или «NA».

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

ReLU включает или выключает нейроны более агрессивно, чем сигмовидная или тангенциальная

Проблема с Relu заключается в том, что отрицательные значения, которые становятся равными нулю, снижают способность модели правильно обучаться на данных. Для решения этой проблемы у нас есть Leaky ReLU

Leaky ReLU

Значение a обычно равно 0,01.

В Leaky ReLU мы вводим небольшой отрицательный наклон, поэтому его наклон не равен 0. Это помогает ускорить обучение.

Утечка ReLU варьируется от -∞ до +∞

Оригинальная ссылка:medium.com/@А, знаешь кого-нибудь/…

Добро пожаловать на сайт блога Panchuang AI:panchuang.net/

sklearn машинное обучение китайские официальные документы:sklearn123.com/

Добро пожаловать на станцию ​​сводки ресурсов блога Panchuang:docs.panchuang.net/