Що викликає раптові падіння помилок у навчанні / тесті під час тренування нейронної мережі?


18

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

Помилка тесту ResNet

Це зображення взято з Kaiming He Github, але подібні сюжети з'являються у багатьох роботах.


Один пов'язаний документ: Smith et al. 2018 не гниє навчальні Оцінити, Збільшити розмір партії, openreview.net/forum?id=B1Yy1BxCZ
амеба

Відповіді:


7

Вони змінили рівень навчання. Зауважте, що крапля рівно 30 і 60 епох, очевидно, встановлена ​​кимсь вручну.


У розділі 3.4 пояснюється, що рівень навчання ділиться на 10, коли плато помилок
xiawi

2

Подумайте про "оптимізаційний ландшафт". Наприклад, якщо у вас була мережа лише з двома вагами, ви могли побудувати всі комбінації цих двох ваг на поверхні, де висота в кожній точці представляє суму помилки, яку повертає ваша вартість витрат, якщо ви використовуєте це (x, y ) координуйте як дві ваги. Ви намагаєтеся перейти до нижньої точки на цій поверхні, щоб отримати найнижчий рівень помилок.
Іноді проблема полягає в тому, що поверхня може зійти з розуму, особливо в мережах з мільйонами параметрів, а не лише двома. Ви можете застрягнути в сідлових точках, де прогрес сповільнюється, а потім раптом відкидається назад на пагорб.
Ось анімація, яка допоможе візуалізувати це. Як ви бачите, основні алгоритми спуску градієнта застрягають у цих положеннях набагато простіше.
введіть тут опис зображення

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


1
-1. Це не дає відповіді на питання, або, принаймні, не зрозуміло, як це робиться, і чому те, що ви написали, є актуальним. Чому зменшення рівня навчання виводить його з точки зору сідла?
амеба

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