Хто винайшов стохастичний градієнтний спуск?


36

Я намагаюся зрозуміти історію градиентного методу і стохастичного градієнтного спуску . Градієнтний спуск був винайдений у Коші в 1847 році. Méthode générale pour la résolution des systèmes d'équations simultanées . С. 536–538 Детальніше про це дивіться тут .

Відтоді методи градієнтного спуску продовжували розвиватися, і я не знайомий з їх історією. Зокрема, мене цікавить винахід стохастичного градієнтного спуску.

Довідка, яка може бути використана в науковому документі більш ніж вітається.


3
Я дізнався про SGD ще до машинного навчання, тому це, мабуть, було до цього всього
Аксакал

2
Ну, Коші напевно винайшов GD перед машинним навчанням, тому я не здивуюся, що SGC також був винайдений раніше.
DaL

3
Стохастичне наближення Кіфер-Вольфовіц en.wikipedia.org/wiki/Stochastic_approximation - це велика частина шляху, окрім того, що не безпосередньо «імітує» градієнт.
Марк Л. Стоун

3
"Стохастичний градієнт походження" від ML - це те саме, що "Стохастичний метод градієнта" від опуклої оптимізації. А методи субградієнтів були виявлені протягом 1960-1970 років в СРСР, Москві. Можливо, і в США. Я побачив відео, де Борис Поляк (він автор методу важкої кулі) сказав, що він (і всі люди) починають думати про методи градієнтів у 1970 році. ( Youtube.com/watch?v=2PcidcPxvyk&t=1963s ) ....
bruziuz

Відповіді:


27

Стохастичному градієнтному спуску передує стохастичне наближення, як вперше описано Роббінсом та Монро у своїй роботі «Метод стохастичного наближення» . Кіфер та Вольфовіц згодом опублікували свою працю « Стохастична оцінка максимуму функції регресії»що більше впізнається людям, знайомим з ML-варіантом стохастичного наближення (тобто стохастичним градієнтним походженням), як вказував Марк Стоун у коментарях. 60-ті роки провели безліч досліджень по цій вені - Дворецькі, Пауелл, Блюм - всі опубліковані результати, які ми сьогодні приймаємо як належне. Це порівняно незначний стрибок - перейти від методу Роббінса і Монро до методу Кіфера Вольфовіца, і просто переосмислити проблему, щоб потім дістатися до стохастичного градієнтного узвозу (для проблем регресії). Вищенаведені документи широко цитуються як допоміжні засоби стохастичного градієнтного походження, про що згадує Носедал, Ботту та Кертіс у цьому оглядовому документі , що дає коротку історичну перспективу з точки зору машинного навчання.

Я вважаю, що Кушнер та Інь у своїй книзі « Стохастичне наближення та рекурсивні алгоритми та програми» говорять про те, що це поняття використовувалося в теорії управління ще в 40-х роках, але я не пам'ятаю, чи були в них цитати чи це було анекдотичні, і я не маю доступу до їхньої книги, щоб підтвердити це.

Герберт Роббінс та Саттон Монро Метод стохастичного наближення «Анали математичної статистики», Vol. 22, № 3. (вересень, 1951), стор 400-407.

Дж. Кійфер та Дж. Вулфовіц Стохастична оцінка максимуму функції регресії Енн. Математика. Статист. Том 23, № 3 (1952), 462-466

Леон Ботто, Френк Е. Кертіс та Хорхе Ноцедальні методи оптимізації для широкомасштабного машинного навчання , Технічний звіт, arXiv: 1606.04838


Чи можете ви дати точні довідки? А що стосується винаходу SGD, то, здається, це було у 40-х роках, але незрозуміло, хто і де?
DaL

Безумовно, широко поширена думка про Роббінса та Монро в 1951 році з алгоритмами стохастичного наближення . Я чув, що щось подібне виявилося в літературі з теорії управління в 40-х роках (як я вже сказав, я думаю, що Кушнер і Інь, але у мене немає цієї книги під рукою), але окрім цього місця, схоже, всі цитують Роббінса і Монро, включаючи Nocedal та ін. посилання, з яким я пов’язаний.
Давид Козак

Тож нашими провідними кандидатами зараз є Х. Роббінс та С. Монро. Стохастичний метод наближення. Анали математичної статистики, 22 (3): 400–407, 1951 рр., Як написано в Ноцедалі, Ботто і Кертісі
177

Я так називається походженням SGD, але в резюме (фактично абстрактним на сьогоднішній день) написано "M (x) передбачається, що він монотонна функція x, але невідомий експериментатору, і це бажано знайти рішення x = 0 рівняння thc M (x) = a, де a - задана константа. " Якщо M (x) невідомий, його не можна отримати. Може, це ще один древній предк?
DaL

Домовились, в якомусь сенсі. Кіфер Волфовіц використовував аналіз цього, щоб розробити свій документ, який є більш впізнаваним у тому вигляді, який ми бачимо сьогодні. Як згадував вище Марк Стоун. Їхній документ можна знайти тут: projecteuclid.org/download/pdf_1/euclid.aoms/1177729392 .
Давид Козак

14

Побачити

Розенблат Ф. Перцептрон: імовірнісна модель зберігання інформації та організації в мозку. Психологічний огляд. 1958, листопад; 65 (6): 386.

Я не впевнений, чи був SGD винайдений до цього в оптимізаційній літературі - ймовірно, це було - але тут я вважаю, що він описує застосування SGD для тренування перцептрона.

Якщо система перебуває у стані позитивного підкріплення, то до значень усіх активних A-одиниць у вихідних наборах відповідей "увімкнено" додається позитивний AV, тоді як негативний AV додається до активних одиниць джерела - набори відповідей "вимкнено".

Він називає це "двома типами підкріплення".

Він також посилається на книгу з детальніше про ці "двовалентні системи".

Розенблат Ф. Перцептрон: теорія статистичної відокремленості в когнітивних системах (Проект Пара). Аеронавігаційна лабораторія Корнелла; 1958 рік.


1
Гарний крок попереду, дякую! Я знайшов тут першу довідку в Інтернеті citeseerx.ist.psu.edu/viewdoc/… Я перегляну її. Однак я сподіваюся знайти алгоритм більш чітким та формальним.
DaL

3
+1 за зауваження про оптимізацію. Оскільки він використовується в машинному навчанні для оптимізації, і оскільки оптимізація стала великою справою за 40 чи 50 років до того, як ML - і комп'ютери також увійшли до картини приблизно в один і той же час, - це здається гарним поводом.
Уейн

Я не розумію, чому ви говорите, що ця цитата описує SGD.
Амеба каже: Відновити Моніку

@amoeba, сподіваюсь, я не помиляюся, просто перебирав папір, але я хоч і описував оновлення perceptron, яке є лише SGD з постійною швидкістю навчання.
користувач0

3
Це вірно. Я просто кажу, що стохастичний аспект не видно з обраної вами цитати. Я маю на увазі, "стохастичний" GD просто означає, що оновлення проводяться по одній навчальній вибірці за один раз (замість обчислення градієнта з використанням усіх доступних навчальних зразків). Алгоритм, наведений у en.wikipedia.org/wiki/Perceptron#Steps, робить цей «стохастичний» аспект відразу зрозумілим на кроці №2.
амеба каже: Відновити Моніку
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.