Краткое введение в функции активации машинного обучения

машинное обучение искусственный интеллект Нейронные сети

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

Функция активации принимает выходные данные последнего слоя нейронной сети в качестве входных данных и преобразует их. Также используется между двумя слоями нейронной сети.
Так зачем использовать функцию активации в нейронной сети?
Например, в логистической регрессии он используется для преобразования вывода в 0/1 для классификации. Используется в нейронных сетях для определения выхода да/нет. Или сопоставьте вывод с диапазоном, например, распознавание рукописных цифр, сопоставьте вывод с 0–9.

Функции активации обычно делятся на две категории: линейные и нелинейные.

Линейная или тождественная функция активации

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

Нелинейная функция активации

Выше приведен пример нелинейной функции активации, которая чаще всего используется в нейронных сетях. Модель легко обобщает или адаптирует к разнообразным данным и различает выходные данные. Есть несколько терминов, которые нужно понимать о функциях активации:Производная или дифференциал: Когда метод оптимизации зависит от градиента, требуется производная, поэтому функция должна быть дифференцируемой.монотонность: Однослойная сеть гарантированно является выпуклой функцией, если функция активации монотонна.диапазон выходных значений: когда выходное значение функции активации ограничено, метод оптимизации на основе градиента будет более стабильным, поскольку на представление признаков сильнее влияют ограниченные веса; когда выходное значение функции активации бесконечно, обучение модель будет более эффективной, однако в этом случае обычно требуется меньшая скорость обучения.

Вот некоторые общие функции активации:

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

Как и выше, выход всегда находится между 0 и 1, при этом, когда он близок к 0 или 1, скорость изменения низкая. Это полезно при моделировании прогностических возможностей. Эта функция может быть микро, поэтому наклон может быть рассчитан между двумя точками. Эта функция монотонна, но ее проводник не монотонен. Функция активации вызывает разрушение нейронной сети во время обучения, и некоторые из недостатков заключаются в следующем:

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

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

Подобно сигмовидной, но лучше, чем сигмовидная, результат находится в диапазоне от -1 до 1. В отличие от сигмоиды, выход этой функции имеет среднее значение 0. Часто используется для задач бинарной классификации.

Функция активации Relu (линейное выпрямление)

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

  1. Скорость сходимости намного выше, чем у сигмоиды и Тана.
  2. По сравнению с сигмовидной и Tanh, из-за характеристик функции для получения значения активации требуется только одно пороговое значение. В то же время есть и недостатки, например, когда через нейрон Relu протекает очень большой градиент, после обновления параметров сложно активировать последующие данные, потому что значение активации слишком велико.

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

Softmax используется в процессе мультиклассификации.Он сопоставляет выходные данные нескольких нейронов с интервалом (0,1), который можно понимать как вероятность, для выполнения мультиклассификации!

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