Що таке максимум в нейронній мережі?


42

Хтось може пояснити, що роблять одиниці максимуму в нейронній мережі? Як вони виконують і чим вони відрізняються від звичайних одиниць?

Я намагався прочитати документ "Максимальна мережа" 2013 року Goodfellow et al. (від групи професора Йошуа Бенджо), але я не дуже розумію.

Відповіді:


26

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

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

Їх код доступний тут .


1
Дякую! Я розумію, як зараз робити максимум. У мене є питання. (1) Отже, ви не робите до виходу до максимуму відповідно до того, що ви написали "У maxout вони не відкидають входи до maxout-шару."? (2) Що означає лінійна частина MLP? "Таким чином, випадання трапляється лише в лінійній частині MLP, але все одно можна наблизити будь-яку функцію через шару maxout." (3) Чому краще усереднювати? "Оскільки випадання відбувається лише в лінійній частині, вони гадають, що це призводить до більш ефективної моделі усереднення, оскільки наближення усереднення є точним для лінійних мереж."
RockTheStar

2
max(zi)zi=kxk

Дякую! Для (3) що це означає "точне", і чому NN стає лінійним з максимумом? Велике спасибі за вашу допомогу.
RockTheStar

1
Nah maxout - це мережева архітектура. Випадання - техніка регуляризації
Opt

1
-1 Це невірне визначення функції активації максимуму Goodfellow. Відповідь @ toussaint-louverture відповідає правильному. stats.stackexchange.com/a/298705/20587
Trisoloriansunscreen

15

Максимальна одиниця може вивчити кусково-лінійну, опуклу функцію з до k штук. 1

Отже, коли k дорівнює 2, ви можете реалізувати ReLU, абсолютну ReLU, герметичну ReLU тощо. Якщо k, скажімо, 10, можна навіть приблизно вивчити опуклу функцію.

Коли k дорівнює 2:

нейрон Максута обчислює функцію . І ReLU, і Leaky ReLU є особливим випадком цієї форми (наприклад, для ReLU у нас ). Тому нейрон Maxout користується всіма перевагами блоку ReLU (лінійний режим роботи, без насичення) і не має своїх недоліків (відмирає ReLU).max(w1Tx+b1,w2Tx+b2)w1,b1=0

Однак, на відміну від нейронів ReLU, він подвоює кількість параметрів для кожного окремого нейрона, що призводить до високої загальної кількості параметрів. 2

Деталі ви можете прочитати тут:
1. DL-книга
2. http://cs231n.github.io/neural-networks-1


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