Como as escalas de aprendizado da IA

Na OpenAI, descobrimos que a escala de ruído em gradiente, um método estatístico simples, prevê a paralelicidade de aprender uma rede neutra em uma ampla gama de tarefas. Como o gradiente geralmente se torna mais barulhento para tarefas mais complexas, um aumento no tamanho dos pacotes disponíveis para processamento simultâneo será útil no futuro e eliminará uma das possíveis limitações dos sistemas de IA. No caso geral, esses resultados mostram que o treinamento de redes neurais não deve ser considerado uma arte misteriosa e que pode ser dada com precisão e sistematização.

Nos últimos anos, os pesquisadores de IA têm sido cada vez mais bem-sucedidos em acelerar o aprendizado de redes neurais paralelizando dados, dividindo grandes pacotes de dados em vários computadores. Os pesquisadores usaram com sucesso dezenas de milhares de unidades para classificação de imagens e modelagem de linguagem , e até milhões de agentes de aprendizado que jogaram o Dota 2. Esses pacotes grandes podem aumentar a quantidade de poder de computação efetivamente envolvido no ensino de um modelo e são um deles. das forças que impulsionam o crescimento no treinamento de IA. No entanto, com pacotes de dados muito grandes, há uma rápida diminuição nos retornos algorítmicos e não está claro por que essas restrições são maiores para algumas tarefas e menores para outras.


A escala de ruído em gradiente, calculada sobre as abordagens de treinamento, responde pela maioria (r 2 = 80%) das variações de tamanho do pacote de dados críticos para vários problemas, diferindo em seis ordens de magnitude. Os tamanhos das embalagens são medidos no número de imagens, tokens (para modelos de idiomas) ou observações (para jogos).

Descobrimos que, medindo a escala de ruído do gradiente, estatísticas simples que determinam numericamente a relação sinal / ruído nos gradientes da rede, podemos prever aproximadamente o tamanho máximo do pacote. Heuristicamente, a escala de ruído mede a variação dos dados do ponto de vista do modelo (em um estágio específico do treinamento). Quando a escala de ruído é pequena, o aprendizado paralelo de uma grande quantidade de dados rapidamente se torna redundante e, quando grande, podemos aprender muito em grandes conjuntos de dados.

Estatísticas desse tipo são amplamente utilizadas para determinar o tamanho da amostra , e sugeriu- se que ela fosse usada em aprendizado profundo , mas não foi sistematicamente usada para o treinamento moderno de redes neurais. Confirmamos essa previsão para uma ampla variedade de tarefas de aprendizado de máquina descritas no gráfico acima, incluindo reconhecimento de padrões, modelagem de idiomas, jogos Atari e Dota. Em particular, treinamos redes neurais projetadas para resolver cada um desses problemas em pacotes de dados de vários tamanhos (ajustando separadamente a velocidade de aprendizado de cada um deles) e comparamos a aceleração do aprendizado com a prevista pela escala de ruído. Como pacotes de dados grandes geralmente exigem um ajuste cuidadoso e caro ou um cronograma especial de velocidade de aprendizado para que o treinamento seja eficaz, sabendo antecipadamente o limite superior, você pode obter uma vantagem significativa ao treinar novos modelos.

Achamos útil visualizar os resultados desses experimentos como um compromisso entre o tempo real de treinamento e a quantidade total de computação necessária para o treinamento (proporcional ao seu custo em dinheiro). Em pacotes de dados muito pequenos, a duplicação do tamanho do pacote permite que o treinamento seja realizado duas vezes mais rápido sem o uso de capacidade adicional de computação (executamos o dobro de threads individuais que funcionam duas vezes mais rápido). Em modelos de dados muito grandes, a paralelização não acelera o aprendizado. A curva no meio dobra e a escala de ruído do gradiente prevê onde exatamente a dobra ocorre.

Aumentar o número de processos paralelos permite treinar modelos mais complexos em um tempo razoável. O diagrama de borda de Pareto é a maneira mais intuitiva de visualizar comparações de algoritmos e escalas.

Obtemos essas curvas atribuindo um objetivo a uma tarefa (digamos, 1000 pontos no jogo Beam Rider da Atari) e observando quanto tempo leva para treinar uma rede neural para atingir esse objetivo em diferentes tamanhos de pacotes. Os resultados coincidem com bastante precisão com as previsões do nosso modelo, levando em consideração os vários valores das metas que estabelecemos.

[ A página com o artigo original apresenta gráficos interativos de um compromisso entre experiência e tempo de treinamento necessário para atingir um determinado objetivo ]

Padrões de escala de ruído gradiente


Encontramos vários padrões na escala do ruído gradiente, com base nos quais podemos fazer suposições sobre o futuro do treinamento em IA.

Primeiro, em nossas experiências no processo de aprendizado, a escala de ruído geralmente aumenta em uma ordem de magnitude ou mais. Aparentemente, isso significa que a rede aprende recursos mais "óbvios" do problema no início do treinamento e estuda os detalhes menores. Por exemplo, na tarefa de classificar imagens, uma rede neural pode primeiro aprender a identificar recursos de pequena escala, como as bordas ou texturas mostradas na maioria das imagens, e só depois comparar essas pequenas coisas, criando conceitos mais gerais, como cães ou gatos. Para ter uma idéia de toda a variedade de rostos e texturas, as redes neurais precisam ver um pequeno número de imagens, para que a escala de ruído seja menor; assim que a rede souber mais sobre objetos maiores, poderá processar muito mais imagens ao mesmo tempo sem considerar dados duplicados.

Vimos algumas indicações preliminares de que um efeito semelhante também funciona em outros modelos que lidam com o mesmo conjunto de dados - para modelos mais poderosos, a escala de ruído gradiente é maior, mas apenas porque eles têm menos perdas. Portanto, há alguma evidência de que aumentar a escala de ruído durante o treinamento não é apenas um artefato de convergência, mas é devido a uma melhoria no modelo. Nesse caso, podemos esperar que, no futuro, os modelos aprimorados tenham uma grande escala de ruído e sejam mais adequados à paralelização.

Em segundo lugar, tarefas objetivamente mais complexas são mais passíveis de paralelização. No contexto do ensino com um professor, um progresso óbvio é visto na transição do MNIST para o SVHN e o ImageNet. No contexto do treinamento por reforço, é observado um claro progresso na transição do Atari Pong para o Dota 1v1 e o Dota 5v5 , e o tamanho do pacote de dados ideal varia em 10.000 vezes. Portanto, como a IA lida com tarefas cada vez mais complexas, espera-se que os modelos lidem com conjuntos de dados cada vez maiores.

As consequências


O grau de paralelização de dados afeta seriamente a velocidade de desenvolvimento dos recursos de IA. A aceleração do aprendizado possibilita a criação de modelos mais capazes e acelera a pesquisa, permitindo reduzir o tempo de cada iteração.

Em um estudo anterior, " IA e cálculos ", vimos que os cálculos para o treinamento dos maiores modelos dobram a cada 3,5 meses e observamos que essa tendência se baseia em uma combinação de economia (desejo de gastar dinheiro em cálculos) e recursos algorítmicos para paralelizar o aprendizado . O último fator (paralelitabilidade algorítmica) é mais difícil de prever e suas limitações ainda não foram completamente estudadas, mas nossos resultados atuais representam um passo à frente em sua sistematização e expressão numérica. Em particular, temos evidências de que tarefas mais complexas ou modelos mais poderosos direcionados a uma tarefa conhecida permitirão um trabalho mais paralelo com os dados. Este será um fator chave para apoiar o crescimento exponencial da computação relacionada à aprendizagem. E nem consideramos desenvolvimentos recentes no campo de modelos paralelos, o que pode nos permitir aprimorar ainda mais a paralelização ao adicioná-la ao processamento de dados paralelos existente.

O crescimento contínuo do campo da computação em treinamento e sua base algorítmica previsível falam da possibilidade de um aumento explosivo nas capacidades da IA ​​nos próximos anos e enfatizam a necessidade de um estudo precoce do uso seguro e responsável de tais sistemas. A principal dificuldade na criação de uma política de IA será decidir como essas medidas podem ser usadas para prever as características dos futuros sistemas de IA e usar esse conhecimento para criar regras que permitam à sociedade maximizar sua utilidade e minimizar os danos dessas tecnologias.

A OpenAI planeja realizar análises rigorosas para prever o futuro da IA ​​e abordar de forma proativa os desafios levantados por essa análise.

Source: https://habr.com/ru/post/pt434934/


All Articles