Яка функція активації для вихідного шару?


44

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


2
Останнім часом ReLU стала популярною як функція активації для прихованих блоків.
ijuneja

Відповіді:


39
  • Регресія: лінійна (оскільки значення не обмежені)
  • Класифікація: софтмакс (простий сигмоід також працює, але софтмакс працює краще)

Використовуйте просту сигмоїду лише в тому випадку, якщо ваш висновок допускає кілька "правдивих" відповідей, наприклад, мережа, яка перевіряє наявність різних зображень на зображенні. Іншими словами, вихід не є розподілом ймовірностей (не потрібно підсумовувати 1).


2
Softmax також важливий, якщо у вас є кілька груп для класифікації
cdeterman

15
Я думаю, що неправильно говорити, що softmax працює "краще", ніж сигмоїд, але softmax можна використовувати у випадках, коли не можна використовувати сигмоїд. Для двійкової класифікації логістична функція (сигмоїда) та софтмакс будуть виконувати однаково добре, але логістична функція математично простіша і, отже, природний вибір. Якщо у вас є більше двох класів, ви не можете використовувати скалярну функцію, як логістичну функцію, оскільки вам потрібно більше одного виводу, щоб знати ймовірності для всіх класів, отже, ви використовуєте softmax.
HelloGoodbye

1
Я не думаю, що softmax - це активація. Взагалі кажучи, ви повинні його активувати, перш ніж нормалізувати (softmax).
Аарон

23

Я можу запізнитися на вечірку, але, здається, тут є якісь речі, які потрібно прояснити.

g(x)CzCz

C(y,g(z))=12(yg(z))2g(x)=x

C(y,g(z))z=C(y,g(z))g(z)g(z)z=g(z)(12(yg(z))2)z(z)=(yg(z))1=g(z)y
Cz

Cz

По-друге, я хотів би додати, що існує багато функцій активації, які можна використовувати для прихованих шарів. Сигмоїди (як логістична функція та гіперболічна дотична) справді добре працюють, але, як вказує Джатін , вони страждають від зникаючих градієнтів, коли ваші мережі стають занадто глибокими. У такому випадку ReLU стали популярними. Хоча хотілося б наголосити на тому, що існує багато інших функцій активації, і різні дослідники продовжують шукати нові (наприклад, Експоненціальні лінійні одиниці (ELU), лінійні одиниці помилок Гаусса (GELU), ...) з різними / кращі властивості

На закінчення: Шукаючи найкращі функції активації, просто будьте креативними. Спробуйте різні речі та подивіться, які комбінації призводять до найкращого результату.


Додаток: Щоб отримати більше пар функцій втрат та активацій, ви, мабуть, хочете шукати (канонічні) функції зв’язку


чому це не найкраща відповідь? досить проклятий інтуїтивно зрозумілий і повністю науковий
Вікрам Мурті

13

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

Детальне пояснення тут: http://cs231n.github.io/neural-networks-1/#actfun

Найкращою функцією для прихованих шарів є ReLu.


11
Питання задає вихідний рівень. -1
Euler_Salter

1
Домовились. Відповідь додано на основі першого рядка запитання. Можливо, це мав бути коментарем замість відповіді.
Ятін

Ну, але чи не виникне у вас також "проблема мертвих нейронів ReLU?" Крім того, проблема градієнта vanishijg може бути "вирішена" шляхом нормалізації партії. Якщо ви все ще хочете "деактивувати" деякі нейрони так, як це роблять активації ReLU, ви можете просто випадковим чином вимкнути нейрони шляхом випадання. Тож я думаю, що наприкінці все залежить від проблеми, а просто скористайтеся тим, що найкраще працює
Кевві Кім

5

2,3,4,5,...

2,3,4,...

p(y=1)1p(y=1)=p(y=0)

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

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

[1,1]

Приємне в нейромережах полягає в тому, що вони неймовірно гнучкі інструменти.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.