Чи використовуються методи пошуку ліній в глибокому навчанні? Чому ні?


18

Багато навчальних посібників в Інтернеті говорять про спуск градієнта, і майже всі вони використовують фіксований розмір кроку (швидкість навчання ). Чому не застосовується пошук рядків (наприклад, пошук зворотного відстеження чи точний пошук рядків)?α


5
"І майже всі вони використовують фіксований розмір кроку" - ви впевнені? Гіпер параметри "швидкості навчання" повинні адаптувати розмір кроку до умов. Дуже популярний алгоритм Адама дійсно адаптує розмір кроку
Аксакал

1
Хм, насправді методи адаптивного градієнта розміру кроків існують щонайменше з 2011 року, і вони навіть цитуються на сторінці Стохастичного градієнта Вікіпедії . Це не зовсім гарячі новини. Навіть ванільний SGD майже завжди використовується зі швидкістю навчання, яка змінюється з кількістю ітерацій ( графік ). Тепер дуже хорошим питанням було б: чому, навіть якщо існує стільки методів адаптивного градієнта спуску, SGD все ще домінує у світі глибокого навчання? Питання набагато менш тривіальне, ніж може здатися.
DeltaIV

1
Зворотний пошук рядків пошуку визначає напрямок, а потім шукає спосіб зменшити функцію. Тому, якщо у вас є розумний спосіб вибрати напрямок пошуку, ви потребуєте втомливої ​​оптимізації.
Алекс Р.

1
Я не бачу, що пошук рядків має сенс для SGD (на відміну від [партії] градієнтного спуску) - тому я б сказав, що це причина.
seanv507

3
Я підозрюю, що причина, за якою пошук рядків не дуже популярний, - це групування в градієнтному спуску. Ви отримуєте партію, потім обчислюйте градієнт. Немає сенсу їхати вперед і назад через лінію шуму в градієнті. Краще продовжувати наступну партію, хоча, можливо, відпал розміру кроку.
Аксакал

Відповіді:


14

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

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

-

EDIT

@DeltaIV вказує, що це стосується і міні-партії, а не лише окремих зразків.


4
дуже приємно (+1), але я не впевнений, чому в останньому прикладі ви говорите про єдиний зразок. Я погоджуюся, що обчислювати пошук рядків на основі міні-партії не має сенсу, але міні-пакет все ще містить 512 зразків (як правило, і якщо говорити про ImageNet): звичайно, немає фіксованого значення для кількості проб у міні -набір, але 1 міні-партія зразка відчуває себе трохи екстремально. Ви використовували їх просто для того, щоб зробити вашу думку більш зрозумілою, чи я щось пропускаю?
DeltaIV

2
@DeltaIV: Один зразок - це здебільшого, щоб зробити висновок про те, наскільки погано це може бути в дуже простій проблемі. Якби ми робили міні-партію з 512 зразками на логістичній регресії з коваріатами 512+, ми б побачили те саме питання.
Кліф АВ

10

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


2
@DeltaIV: Усі "інші" фантазійні методи побудовані на основі SGD. Основне питання полягає в тому, що інші методи використовують переваги місцевих знань, щоб зробити більш ефективні стрибки, а не просто випадковим відбором точок для обчислення градієнта. Але SGD настільки простий і швидкий, і сам по собі не зовсім страшний.
Алекс Р.

2
@AlexR. справа не в тому, що SGD простий і / або швидкий. Простота не має значення, оскільки всі гідні бібліотеки реалізують SGD, Adam, AdaGrad та RMSProp (та ще й інколи). Швидкість має значення навіть менше, тому що час, витрачений, наприклад, Адамом на обчислення оновлень рівня параметрів, є нескінченно малим порівняно із загальним часом навчання такої моделі, як ResNet. Єдине, що ми чомусь не повністю розуміємо сьогодні, SGD узагальнює краще, ніж вони. Отже, якщо ви хочете обіграти SOTA, ви часто змушені нею користуватися або принаймні переходити на неї пізніше під час тренувань.
DeltaIV

3
@DeltaIV Дуже цікаво. Я відкрив документ, до якого ви посилаєтесь, і в ньому згадується переддрук Wilson et al. 2017 для твердження, що SGD узагальнює краще, ніж Адам тощо; тож коли ви говорите, що це "добре відомо", ви маєте на увазі відоме приблизно з півроку, правда?
амеба каже, що поверніть Моніку

2
@DeltaIV Дякую Я сам мало займаюся глибоким навчанням, і зовсім цього не знав. Ще в 2012 році або близько того, коли я дивився лекції Хінтона в курсі, він в основному виступав за RMSprop, і в останні 1-2 роки моє враження було, що всі використовують Адама (який замінює RMSprop, згідно з документом Адама). Коли я грав у автоінкодери минулого року, я зрозумів, що Адам працює набагато швидше, ніж SGD, і з тих пір просто припустив, що Адам є вибором за замовчуванням.
амеба каже, що поверніть Моніку

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