Activation Functions

Оновлено: 31.07.2023

Що таке функції активації?

Математичні функції активації застосовуються до виходів штучних нейронів нейронної мережі, щоб зробити модель нелінійною. Вони вирішують, активувати нейрон чи ні, на основі зваженої суми входів і терму зміщення. Вони є важливою частиною нейронних мереж, оскільки допомагають мережі вивчати складні та нелінійні кореляції між входами та виходами.

У нейронних мережах зазвичай використовуються різні функції активації, в тому числі:

  • Sigmoid- Ця функція активації присвоює входу значення між 0 і 1. Вона ефективна в бінарній класифікації ситуаціях, але страждає від проблеми зникаючого градієнта і рідко використовується в глибоких мережах.
  • Softmax- В багатокласової класифікації , ця функція активації переводить вхідні дані у розподіл ймовірностей між багатьма класами.
  • Tanh- Ця функція активації відображає вхідні дані у значення між -1 та 1. Вона схожа на сигмоїдну функцію, оскільки генерує результати, центровані на нулі.
  • ReLU- (Випрямлена лінійна одиниця): Переносить від'ємний вхід до нуля, а додатний до себе. Через свою простоту та ефективність часто використовується у глибоких нейронних мережах.
  • Leaky ReLU- Схожий на ReLU, але додає невеликий нахил для від'ємних входів, щоб уникнути проблеми мертвих нейронів, яку може спричинити ReLU.
.

Кожна функція активації в нейронній мережі має свої переваги та недоліки, і вибір функції активації визначається конкретною задачею, а також особливостями даних, що використовуються.

Активаційні функції та нейронні мережі

Існує кілька застосувань функцій активації в поєднанні з нейронними мережами:

  • Оптимізація на основі градієнта- Функції дозволяють методам оптимізації на основі градієнта, таким як розповсюдження, коригувати ваги та зміщення нейронної мережі за потреби під час навчання. Це можливо завдяки диференційованості функцій, що дозволяє визначити градієнт функції втрат щодо ваг і зсувів.
  • Генерування нелінійності- Однією з основних цілей використання цього типу функцій у нейронній мережі є генерування нелінійності. Без функцій здатність нейронної мережі вивчати складні та нелінійні кореляції між входами та виходами була б суттєво обмежена.
  • Обмеження діапазону вихідних даних- Для того, щоб мережа не стала нестійкою або не генерувала дуже високі або крихітні вихідні значення, функції можуть обмежувати діапазон вихідних даних кожного нейрона.
  • Нормалізація виходу- Базова нормалізація і ReLU - два приклади функцій, які можна використовувати для нормалізації виходу кожного шару нейронної мережі, що, у свою чергу, полегшує навчання глибших мереж.
.

Функції активації мають вирішальне значення для нейронних мереж, оскільки вони забезпечують ефективну градієнтну оптимізацію під час навчання і дозволяють мережі вивчати складні та нелінійні кореляції між входами та виходами.

Функція активації ідентифікатора

Функція активації тотожності є прикладом базової функції активації, яка відображає вхідні дані на саму себе. Ця функція активації може розглядатися як лінійна функція з нахилом 1.

  • Тотожність функції активації визначається наступним чином:
    f(x) = x

де x - вхід нейрона.

У задачах регресії ідентична функція активації часто використовується, коли метою є передбачення безперервного вихідного значення. Оскільки вона дозволяє мережі вивчити лінійний зв'язок між входами і виходами, функція ідентичності корисна, коли вихід нейронної мережі повинен бути якомога ближчим до справжнього вихідного значення.

Однак для кращого відображення складних, нелінійних взаємодій між входами і виходами замість функції тотожності іноді використовують нелінійні функції активації. Порівнюючи ефективність різних функцій або оцінюючи ефективність нейронної мережі в задачі регресії, функція тотожності часто використовується як еталон для порівняння.

Лінійна функція активації

Простіше кажучи, лінійна активаційна функція переносить вхідні дані на себе з певним нахилом або вагою. Ця функція є лінійною, тобто її вихід прямо пропорційний входу.

  • Формула лінійної функції активації має наступний вигляд:
f(x). f(x) = wx + b

Де x - вхід нейрона, w - ваговий коефіцієнт або нахил нейрона, а b - член зміщення.

Вона часто використовується в регресійних програмах, коли потрібно отримати безперервне прогнозування вихідного значення. Оскільки нейронна мережа може вивчити лінійний зв'язок між своїми входами та виходами, лінійна функція може допомогти їй отримати результати, які є ближчими до справжнього вихідного значення.

Однак багато реальних застосувань страждають від нездатності лінійної функції відображати нелінійні зв'язки між входами і виходами. Для того, щоб краще відобразити складні, нелінійні взаємодії між входами і виходами, замість лінійної функції часто використовують нелінійні функції активації.