Quem inventou a descida estocástica do gradiente?

36

Estou tentando entender a história da descida de gradiente e descida de gradiente estocástico . A descida em gradiente foi inventada em Cauchy em 1847. O método geral para a resolução de sistemas de equações simultâneas . pp. 536-538 Para obter mais informações, consulte aqui .

Desde então, os métodos de descida gradiente continuaram se desenvolvendo e eu não estou familiarizado com a história deles. Em particular, estou interessado na invenção da descida do gradiente estocástico.

Uma referência que pode ser usada em um artigo acadêmico em mais do que bem-vinda.

DaL
fonte
3
Eu aprendi sobre SGD antes da aprendizagem de máquina, por isso deve ter sido antes essa coisa toda
Aksakal
2
Bem, Cauchy com certeza inventou o GD antes do aprendizado de máquina, então não ficarei surpreso que o SGC também tenha sido inventado antes.
DaL 14/11
3
Aproximação estocástica de Kiefer-Wolfowitz pt.wikipedia.org/wiki/ Approction estocástico é a maior parte do caminho até lá, além de não "simular" diretamente o gradiente.
Mark L. Stone
3
"Descida de gradiente estocástico" de ML é o mesmo que "Método de subgradiente estocástico" da otimização convexa. E os métodos dos subgradientes foram descobertos durante 1960-1970 na URSS, Moscou. Talvez também nos EUA. Vi um vídeo em que Boris Polyak (ele é o autor do método da bola pesada) disse que ele (e todas as pessoas) começaram a pensar nos métodos dos sub-alunos em 1970. ( youtube.com/watch?v=2PcidcPxvyk&t=1963s ) ....
Bruziuz

Respostas:

27

A descida estocástica do gradiente é precedida pela aproximação estocástica, descrita pela primeira vez por Robbins e Monro em seu artigo, Um método de aproximação estocástica . Kiefer e Wolfowitz publicaram posteriormente seu artigo, Estimativa Estocástica do Máximo de uma Função de Regressãoque é mais reconhecível para pessoas familiarizadas com a variante ML da Aproximação estocástica (ou seja, descida estocástica do gradiente), como apontado por Mark Stone nos comentários. Os anos 60 viram muitas pesquisas nesse sentido - Dvoretzky, Powell, Blum, todos os resultados publicados que hoje tomamos como garantidos. É um salto relativamente pequeno para passar do método de Robbins e Monro para o método de Kiefer Wolfowitz, e apenas uma reformulação do problema para chegar à descida estocástica do gradiente (para problemas de regressão). Os artigos acima são amplamente citados como sendo os antecedentes da descida estocástica do gradiente, como mencionado neste artigo de revisão de Nocedal, Bottou e Curtis , que fornece uma breve perspectiva histórica do ponto de vista do aprendizado de máquina.

Acredito que Kushner e Yin em seu livro Aproximação Estocástica e Algoritmos e Aplicações Recursivos sugerem que a noção havia sido usada na teoria de controle desde os anos 40, mas não me lembro se eles tinham uma citação para isso ou se foi. anedótico, nem tenho acesso ao livro deles para confirmar isso.

Herbert Robbins e Sutton Monro Um método de aproximação estocástica The Annals of Mathematics Statistics, vol. 22, n ° 3. (setembro de 1951), pp. 400-407.

J. Kiefer e J. Wolfowitz Estimativa Estocástica do Máximo de uma Função de Regressão Ann. Matemática. Statist. Volume 23, Número 3 (1952), 462-466

Leon Bottou e Frank E. Curtis e Jorge Nocedal, métodos de otimização para aprendizado de máquina em larga escala , relatório técnico, arXiv: 1606.04838

David Kozak
fonte
Você pode dar referências exatas? E para a invenção do SGD, parece estar nos anos 40, mas não está claro por quem e onde?
19/17
Certamente, acredita-se que seja Robbins e Monro em 1951, com algoritmos de aproximação estocástica . Ouvi dizer que algo semelhante apareceu na literatura da teoria de controle nos anos 40 (como eu disse, acho que de Kushner e Yin, mas não tenho esse livro à mão), mas, além desse lugar, todos parecem citar Robbins e Monro, incluindo Nocedal et al. referência à qual vinculei.
David Kozak
Portanto, nosso principal candidato agora é H. Robbins e S. Monro. Um método de aproximação estocástica. The Annals of Mathematics Statistics, 22 (3): 400–407, 1951., conforme escrito em Nocedal, Bottou e Curtis em pdfs.semanticscholar.org/34dd/…
DaL
Portanto, é referida como a origem do SGD, mas no resumo (na verdade, abstrato nos termos de hoje), está escrito "M (x) é assumido como uma função monótona de x, mas é desconhecido para o experimentador, e é desejado encontrar a solução x = 0 da equação thc M (x) = a, onde a é uma dada constante. " Se M (x) é desconhecido, não se pode derivá-lo. Talvez seja outro ancestral antigo?
DaL
Concordo, em algum sentido. Kiefer Wolfowitz usou a análise para elaborar seu artigo, que é mais reconhecível na forma que vemos hoje. Como mencionado acima por Mark Stone. Seu artigo pode ser encontrado aqui: projecteuclid.org/download/pdf_1/euclid.aoms/1177729392 .
David Kozak
14

Vejo

Rosenblatt F. O perceptron: Um modelo probabilístico para armazenamento e organização de informações no cérebro. Revisão psicológica. 1958 Nov; 65 (6): 386.

Não tenho certeza se o SGD foi inventado antes disso na literatura de otimização - provavelmente foi - mas aqui acredito que ele descreve uma aplicação do SGD para treinar um perceptron.

Se o sistema estiver em um estado de reforço positivo, um AV positivo será adicionado aos valores de todas as unidades A ativas nos conjuntos de fontes de respostas "ativadas", enquanto um AV negativo será adicionado às unidades ativas na fonte - conjuntos de respostas "off".

Ele chama esses "dois tipos de reforço".

Ele também faz referência a um livro com mais informações sobre esses "sistemas bivalentes".

Rosenblatt F. O perceptron: uma teoria da separabilidade estatística em sistemas cognitivos (Projeto Para). Laboratório Aeronáutico de Cornell; 1958

user0
fonte
1
Um bom passo à frente, obrigado! Acho que a primeira referência on-line aqui citeseerx.ist.psu.edu/viewdoc/... eu vou passar por isso. No entanto, espero encontrar o algoritmo mais explícito e formal.
Dal
3
+1 na observação sobre otimização. Como é usado no Machine Learning para fazer otimização e desde que a otimização se tornou um grande negócio 40 ou 50 anos antes da ML - e os computadores também entraram em cena na mesma época - isso parece ser uma boa vantagem.
Wayne
Não entendo por que você diz que esta citação descreve o SGD.
Ameba diz Reinstate Monica
@amoeba, espero que eu não esteja cometendo um erro, estava apenas folheando o artigo, mas achei que ele estivesse descrevendo a atualização do perceptron, que é apenas SGD com taxa de aprendizado constante.
User0
3
Está certo. Estou apenas dizendo que o aspecto estocástico não é evidente na citação que você escolheu. Quero dizer, GD "estocástico" significa simplesmente que as atualizações são feitas uma amostra de treinamento por vez (em vez de calcular o gradiente usando todas as amostras de treinamento disponíveis). O algoritmo fornecido em en.wikipedia.org/wiki/Perceptron#Steps torna esse aspecto "estocástico" imediatamente claro na etapa 2.
Ameba diz Reinstate Monica