- Чому у нейромережах використовуються упереджені вузли?
- Скільки ви повинні використовувати?
- У яких шарах ви повинні їх використовувати: усі приховані шари та вихідний шар?
Відповіді:
Вузол зміщення в нейронній мережі - це вузол, який завжди "увімкнено". Тобто його значення встановлюється на без урахування даних у заданій схемі. Він аналогічний перехопленню в регресійній моделі і виконує ту саму функцію. Якщо нейронна мережа не має вузла зміщення в заданому шарі, вона не зможе виробляти вихід у наступному шарі, який відрізняється від 0 (у лінійній шкалі, або значення, що відповідає перетворенню 0 при проходженні через функція активації), коли значення функції дорівнюють 0 .
Маючи на увазі це розуміння, ми можемо відповісти на ваші чіткі запитання:
Прості, короткі відповіді:
У кількох експериментах моєї дипломної роботи (наприклад, стор. 59) я виявив, що зміщення може бути важливим для першого шару (ив), але особливо на повністю з'єднаних шарах в кінці, здається, це не відіграє великої ролі. Отже, їх можна мати на перших шарах, а не на останніх. Просто тренуйте мережу, побудуйте розподіл ваг вузлів зміщення та обріжте їх, якщо ваги здаються занадто близькими до нуля.
Це може сильно залежати від мережевої архітектури / набору даних.
1
значення попереднього шару та одна вага (одне значення зміщення) для кожного з наступних шарів нейронів.
У контексті нейронних мереж Batch Normalization на даний момент є золотим стандартом для створення розумних "упереджених вузлів". Замість того, щоб затискати значення зміщення нейрона, ви замість цього налаштовуєте для коваріації входу нейрона. Тож у CNN ви застосували пакетну нормалізацію саме між згортковим шаром та наступним повністю пов'язаним шаром (скажімо, ReLus). Теоретично всі повністю пов'язані шари можуть отримати вигоду від пакетної нормалізації, але це на практиці стає дуже дорогим для впровадження, оскільки кожна нормалізація партії має свої параметри.
Щодо того, більшість відповідей уже пояснювали, що, зокрема, нейрони чутливі до насичених градієнтів, коли вхід підштовхує активацію до крайньої межі. У випадку ReLu це буде натиснуто наліво, даючи градієнт 0. Загалом, коли ви тренуєте модель, ви спочатку нормалізуєте входи в нейронну мережу. Нормалізація партії - це спосіб нормалізації входів всередині нейронної мережі, між шарами.