Descida de Gradiente e a Taxa de Aprendizagem

Tudo o que aprende com dados fá-lo dando pequenos passos colina abaixo. A única questão real é qual o tamanho do passo a dar, e a resposta é mais invulgar do que "tão grande quanto ouse": há uma taxa que chega num só movimento, e uma taxa além da qual o sistema nunca chega de todo.

A carregar a simulação interativa...

Lição

A teoria — Descida de Gradiente e a Taxa de Aprendizagem

O método do gradiente resume-se a uma linha repetida: posicionar-se num ponto, medir a inclinação e descer em proporção. x ← x − η f′(x). O tamanho do passo η não faz parte do problema. A curva de perda é dada, o gradiente é calculado e η é o único número deixado à nossa escolha. Numa função quadrática de curvatura a a aritmética tem uma resolução exata. É por esse motivo que esta página utiliza uma: qualquer observação posterior sobre taxas de aprendizagem diz respeito a 1 − ηa.

O que significa cada símbolo

η
a taxa de aprendizagem, a única variável à sua escolha
a
a curvatura da perda, que o problema escolhe por si
Pressupõe
Uma variável, um tamanho de passo fixo e um gradiente conhecido com exatidão. O treino real destrói as três condições de uma só vez. Envolve milhões de parâmetros, um passo escalonado e um gradiente estimado a partir de um pequeno lote. A única coisa que sobrevive intacta é a fronteira em 2/a. Este limite perdura porque provém da curvatura numa única direção, e uma superfície de perda real apresenta uma por cada vetor próprio.

O limite pertence à superfície, não à execução 🖖

Arraste o ponto de partida para onde quiser, até 10 ou para a outra encosta do vale, e 2/a não se move. Também não lhe interessa quantos passos dá. O limiar é fixado exclusivamente pela curvatura, porque o multiplicador de passo r = 1 − aη não contém qualquer x₀ nem nenhuma contagem de passos. A execução completa é o x₀ multiplicado por r as vezes que pediu, pelo que a sua redução depende apenas do próprio r. Começar mais perto do fundo não lhe concede maior margem de manobra, apenas adia o momento em que uma taxa condenada se torna evidente. Defina a curvatura em 1,6 e a taxa em 1,3, e depois varra o ponto de partida por toda a sua extensão: a tabela indica Diverge em todas as posições, incluindo as que estão a meia unidade do mínimo.

A ultrapassagem em si não tem qualquer custo 🖖

Fixe a curvatura em 1, o que coloca a taxa de um passo em η = 1. Agora tente 0,9, e depois 1,1. Ambas trazem |x| abaixo de 10⁻⁶ em sete passos. Uma rasteja por uma única parede do vale; a outra salta completamente por cima do fundo em cada passo e aterra em lados alternados. Custam o mesmo porque o multiplicador é 1 − aη num caso e o seu negativo no outro, e um multiplicador negativo encolhe um número exatamente com a mesma rapidez que o seu gémeo positivo. A simetria não é aproximada. Tente 0,5 e 1,5: vinte e dois passos em cada. Portanto, um percurso em ziguezague diz-lhe de que lado da melhor taxa está situado e não revela rigorosamente nada sobre se foi longe demais. Para isso, o único número que importa é 2/a.

Por que razão as taxas de aprendizagem reais ainda são adivinhadas 🖖

Esta página tem uma só curvatura porque tem apenas uma dimensão. Uma rede real tem milhões de parâmetros e a sua superfície de perda tem uma curvatura diferente em cada direção, mas o raciocínio mantém-se ao substituir a pela maior curvatura presente em toda a superfície, o maior valor próprio da matriz Hessiana. Uma taxa de aprendizagem tem de ser segura em todas as direções ao mesmo tempo, por isso a direção mais acentuada decide quando tudo explode. A direção mais plana decide quanto tempo tem de esperar, uma vez que o progresso ao longo da mesma é governado pela sua própria curvatura baixa. O rácio entre ambas é o número de condicionamento, o que explica por que motivo uma taxa bem afinada num problema se transfere de forma tão deficiente para o seguinte. Nada na perda prenuncia qualquer um dos valores próprios antecipadamente, e calcular o maior deles para cem milhões de parâmetros não é algo que se faça antes do pequeno-almoço. O momento e os métodos por parâmetro, como o Adam, existem para alargar o fosso entre o que é estável e o que é rápido.

Problema resolvido na íntegra

  1. A sua taxa de aprendizagem de 0,4 está a funcionar. Encontre a curvatura exata na qual ela deixa de funcionar, e diga qual é o aspeto da falha de ambos os lados desse ponto. Comece a partir da ferramenta em η = 0,4, a = 1, x₀ = 8, onde a linha Multiplicador de passo marca 0,6000 e o caminho desce calmamente por uma das paredes.

    Abrir este problema na ferramenta

    1. Todas as perguntas nesta página são sobre |r| < 1, onde r = 1 − aη. A taxa está fixada em 0,4 e a curvatura é o que lhe é permitido mover, portanto escreva a condição em função de a e não de η.

    2. |1 − 0,4a| < 1 desdobra-se em −1 < 1 − 0,4a < 1, e depois em 0 < 0,4a < 2, donde a < 5. A taxa sobrevive a todas as curvaturas abaixo de 5 e a nenhuma acima. Trata-se do familiar η < 2/a lido ao contrário, como a < 2/η. A desigualdade é a mesma, e a segunda formulação é a que responde ao que foi perguntado.

    3. Estabeleça a = 5 exatamente e leia a tabela. r = −1,0000, e a Posição após 20 passos indica 8,000, o número em que começou. A fração da perda inicial é 1,000. Esta é a fronteira propriamente dita: cada passo aterra tão longe do mínimo como o último, no lado oposto, de modo que o caminho oscila entre 8 e −8 durante o tempo em que o deixar correr.

    4. Agora mude para a = 5,1. r = −1,0400, e após vinte passos x é 17,529 em vez de 8. Isso é verdadeira divergência, e vale a pena ver como o aspeto é suave: vinte passos praticamente duplicaram a distância. Uma execução logo deste lado da fronteira pode passar por meramente ruidosa durante muito tempo, antes que os números se tornem obviamente absurdos.

    5. Recuando no sentido inverso, a = 4,9 ainda converge. r = −0,9600, |r| é inferior a 1, e a tabela diz Ultrapassa e converge. Mas Passos para trazer |x| abaixo de 10⁻⁶ regista agora 390, contra 32 em a = 4. Quase estável é quase inútil.

    Resposta

    a = 5, que corresponde a 2/η. Abaixo de tal valor a taxa converge, nele a perda nunca se altera, e acima dele a perda cresce sem limites. A parte dispendiosa é a aproximação. Perto da fronteira |r| é 1 − a·g, onde g representa a diferença 2/a − η, pelo que log|r| ≈ −a·g e a contagem de passos é sensivelmente log(|x₀|/tolerância) a dividir por a·g. Comporta-se como o inverso da distância até ao limite: reduza a diferença para metade e duplica o trabalho. Em a = 5 a partir de x₀ = 8, diferenças de 0,05, 0,025 e 0,0125 necessitam de 56, 120 e 247 passos, e multiplicando cada contagem pela sua própria diferença obtêm-se 2,8, 3,0 e 3,1, aproximando-se de log(8 × 10⁶)/5 = 3,18. É por este motivo que uma taxa de aprendizagem afinada nunca se situa no limiar da estabilidade. A última réstia de segurança antes da fronteira é em simultâneo um dos terrenos mais lentos de todo o eixo, e a taxa mais rápida de todas é a que está a meio, em 1/a.

Percurso de aprendizagem

Ajustar uma reta a dados

Referências (3)