Чому функції активації, не орієнтовані на нуль, є проблемою у зворотному розповсюдженні?


26

Я прочитав тут таке:

  • Сигмоїдні виходи не орієнтовані на нуль . Це небажано, оскільки нейрони в більш пізніх шарах обробки в нейронній мережі (детальніше про це незабаром) отримували б дані, не орієнтовані на нуль. Це має значення для динаміки під час спуску градієнта, оскільки якщо дані, що надходять у нейрон, завжди позитивні (наприклад, елементарно у )), то градієнт на ваги під час зворотного розповсюдження стане або всі будуть позитивними, або всі негативними (залежно від градієнта всього виразу x>0f=wTx+bwf). Це може ввести небажану динаміку зигзагоподібних змін у оновленнях градієнта для ваг. Однак зауважте, що як тільки ці градієнти будуть додані через групу даних, остаточне оновлення для ваг може мати різні знаки, що дещо пом'якшує цю проблему. Отже, це незручність, але воно має менш серйозні наслідки порівняно з насиченою проблемою активації, описаною вище.

Чому наявність усіх (елементарно) призведе до всіх позитивних або негативних градієнтів на ?x>0w



2
У мене теж було таке саме питання, переглядаючи відео CS231n.
підземний матч

Відповіді:


28

f=wixi+b
dfdwi=xi
dLdwi=dLdfdfdwi=dLdfxi

оскільки , градієнт завжди має той самий знак, що і (всі позитивні або всі негативні).xi>0dLdwidLdf

Оновлення
Скажіть, що є два параметри і , якщо градієнти двох вимірів завжди однакові, це означає, що ми можемо рухатись лише приблизно в напрямку північного сходу або південного заходу в просторі параметрів.w1w2

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

введіть тут опис зображення

Отже, позитивні або абсолютно негативні функції активації (relu, sigmoid) можуть бути складними для градієнтної оптимізації. Щоб вирішити цю проблему, ми можемо заздалегідь нормалізувати дані, щоб вони були нульовими, як при нормалізації партії / шару.

Також іншим рішенням, про яке я можу придумати, є додавання терміна зміщення для кожного введення, щоб шар став Тоді градієнти знак не залежатиме виключно від .

f=wi(xi+bi).
dLdwi=dLdf(xibi)
xi


Будь ласка, виправте мене, якщо я помиляюся, але чи не слід значення dL / df переносити на x, тобто xT, оскільки ми б тут використовували ідею Якобіна.
chinmay

fwTx+bLwx

Так, це велика помилка з мого кінця. Я мав на увазі df / dw .... але я думаю, що це більше залежить від вектора x, і якщо це векторний рядок або вектор стовпця
chinmay

dL/df

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