A base para uma teoria generalizada das redes neurais é criada

As tremendas capacidades das redes neurais são algumas vezes comparáveis ​​à sua imprevisibilidade. Agora, os matemáticos começam a entender como a forma de uma rede neural afeta seu trabalho.





Quando projetamos um arranha-céu, esperamos que, no final, ele atenda a todas as especificações: que a torre seja capaz de suportar um peso tão grande quanto um terremoto de certa força.

No entanto, uma das tecnologias mais importantes do mundo moderno, de fato, projetamos às cegas. Jogamos com esquemas diferentes, configurações diferentes, mas até iniciarmos uma avaliação do sistema, realmente não temos idéia do que ele pode fazer ou de onde ele se recusará a trabalhar.

É sobre a tecnologia de rede neural subjacente aos mais modernos sistemas de inteligência artificial modernos. As redes neurais estão gradualmente se movendo para as áreas mais básicas da sociedade: elas determinam o que aprendemos sobre o mundo a partir do feed de notícias nas redes sociais, ajudam os médicos a fazer um diagnóstico e até afetam se um criminoso é enviado para a prisão.

E "a melhor descrição do que sabemos é dizer que praticamente nada sabemos sobre como as redes neurais realmente funcionam e qual deveria ser a teoria que as descreve", disse Boris Ganin , matemático da Universidade do Texas, e um especialista convidado no Facebook AI Research estudando redes neurais.

Ele compara a situação com o desenvolvimento de mais uma tecnologia revolucionária: um motor a vapor. Inicialmente, os motores a vapor só podiam bombear água. Então eles serviram como motores para locomotivas a vapor, e hoje as redes neurais provavelmente atingiram o mesmo nível. Cientistas e matemáticos desenvolveram uma teoria da termodinâmica que lhes permitiu entender o que exatamente está acontecendo dentro de qualquer mecanismo. E, no final, esse conhecimento nos trouxe ao espaço.

"No início, houve grandes realizações de engenharia, depois grandes trens e, em seguida, foi preciso um entendimento teórico para mudar isso para foguetes", disse Ganin.

Na crescente comunidade de desenvolvedores de redes neurais, há um pequeno grupo de pesquisadores com um viés matemático tentando criar uma teoria das redes neurais que possa explicar como eles funcionam e garantir que, após criar uma rede neural de uma configuração específica, ele possa executar determinadas tarefas.

Enquanto o trabalho está em estágio inicial, mas ao longo do ano passado, os pesquisadores já publicaram vários artigos científicos que descrevem em detalhes a relação entre a forma e o funcionamento das redes neurais. O trabalho descreve as redes neurais na íntegra, até seus próprios fundamentos. Ela demonstra que muito antes de confirmar a capacidade das redes neurais de dirigir carros, é necessário provar sua capacidade de multiplicar números.

A melhor receita para o cérebro


As redes neurais se esforçam para imitar o cérebro humano - e uma maneira de descrever seu trabalho é dizer que ele mescla pequenas abstrações em outras maiores. Desse ponto de vista, a complexidade dos pensamentos é medida pelo número de pequenas abstrações subjacentes a elas e o número de combinações de abstrações de baixo nível em abstrações de alto nível - em tarefas como estudar as diferenças entre cães e pássaros.

"Se uma pessoa aprende a reconhecer um cachorro, ela aprende a reconhecer algo desgrenhado nas quatro pernas", disse Maitra Ragu , estudante de ciência da computação na Cornell University, membro da equipe do Google Brain . "Idealmente, gostaríamos que nossas redes neurais fizessem algo semelhante".


Maitra Ragu

A abstração se origina no cérebro humano de maneira natural. As redes neurais precisam trabalhar para isso. As redes neurais, como o cérebro, são constituídas por blocos de construção chamados "neurônios", conectados de várias maneiras entre si. Ao mesmo tempo, os neurônios da rede neural, embora criados à imagem dos neurônios cerebrais, não tentam imitá-los completamente. Cada neurônio pode representar um atributo ou uma combinação de atributos que a rede neural considera em cada nível de abstração.

Os engenheiros têm várias opções para combinar esses neurônios. Eles precisam decidir quantas camadas de neurônios uma rede neural deve ter (isto é, determinar sua "profundidade"). Considere, por exemplo, uma rede neural que reconheça imagens. A imagem é incluída na primeira camada do sistema. Na próxima camada, a rede pode ter neurônios que simplesmente reconhecem as bordas da imagem. A próxima camada combina as linhas e define as curvas. O próximo combina as curvas em formas e texturas, e o último processa as formas e texturas para tomar uma decisão sobre o que ele está olhando: o mamute peludo!

“A ideia é que cada camada combine vários aspectos da anterior. Um círculo é uma curva em muitos lugares, uma curva é uma linha em muitos lugares ”, diz David Rolnik , matemático da Universidade da Pensilvânia.

Os engenheiros também precisam escolher a “largura” de cada camada, correspondendo ao número de diferentes recursos que a rede considera em cada nível de abstração. No caso do reconhecimento de imagem, a largura das camadas corresponderá ao número de tipos de linhas, curvas ou formas que a rede neural considerará em cada nível.

Além da profundidade e largura da rede neural, há uma escolha do método de conexão de neurônios nas camadas e entre elas, além de uma escolha de pesos para cada uma das conexões.

Se você planeja concluir uma tarefa específica, como você sabe qual arquitetura de rede neural pode executá-la da melhor maneira? Existem regras de amostra bastante gerais. Para problemas com o reconhecimento de imagens, os programadores costumam usar redes neurais "convolucionais", o sistema de links entre camadas, no qual é repetido camada a camada. Para processar uma linguagem natural - reconhecimento de fala ou geração de linguagem - os programadores descobriram que as redes neurais recorrentes são mais adequadas. Os neurônios neles podem ser conectados com neurônios não apenas das camadas vizinhas.

No entanto, fora desses princípios gerais, os programadores geralmente precisam confiar em evidências experimentais: eles simplesmente administram 1.000 redes neurais diferentes e veem qual deles faz o trabalho melhor.

"Na prática, essas escolhas geralmente são feitas por tentativa e erro", disse Ganin. "Esta é uma maneira bastante complicada, já que existem infinitas eleições e ninguém sabe qual será a melhor."

A melhor opção seria confiar menos no método de tentativa e erro e mais no entendimento preexistente do que uma arquitetura de rede neural específica pode oferecer a você. Vários artigos científicos recentemente publicados avançaram nessa área nessa direção.

“Este trabalho visa criar algo como um livro de receitas para projetar uma rede neural adequada. Se você sabe o que deseja alcançar com ele, pode escolher a receita certa ”, disse Rolnik.

Laço ovelha vermelha


Uma das primeiras garantias teóricas da arquitetura de redes neurais apareceu três décadas atrás. Em 1989, um cientista da computação provou que, se uma rede neural tem apenas uma camada computacional, na qual pode haver um número ilimitado de neurônios e um número ilimitado de conexões entre eles, a rede neural será capaz de executar qualquer tarefa.

Essa foi uma afirmação mais ou menos geral, que acabou sendo bastante intuitiva e não particularmente útil. É o mesmo que dizer que, se você pode definir um número ilimitado de linhas em uma imagem, é possível distinguir todos os objetos com apenas uma camada. Em princípio, isso pode ser cumprido, mas tente colocá-lo em prática.

Atualmente, os pesquisadores chamam essas redes amplas e planas de "expressivas", porque, em teoria, podem cobrir um conjunto mais rico de relações entre os possíveis dados de entrada (como uma imagem) e os resultados (como a descrição da imagem). Ao mesmo tempo, é extremamente difícil treinar essas redes, ou seja, é praticamente impossível fazê-las realmente fornecer esses dados. Eles também exigem mais poder computacional do que qualquer computador.


Boris Ganin

Recentemente, os pesquisadores tentaram entender até onde você pode obter redes neurais indo na direção oposta - tornando-as mais estreitas (menos neurônios por camada) e mais profundas (mais camadas). Você pode reconhecer apenas 100 linhas diferentes, mas com as conexões necessárias para transformar 100 dessas linhas em 50 curvas que podem ser combinadas em 10 formas diferentes, você pode obter todos os componentes necessários para reconhecer a maioria dos objetos.

No trabalho concluído no ano passado, Rolnik e Max Tegmark, do MIT, provaram que, aumentando a profundidade e diminuindo a largura, é possível executar as mesmas tarefas com um número exponencialmente menor de neurônios. Eles mostraram que se a situação que você simula tem 100 variáveis ​​de entrada, é possível obter a mesma confiabilidade usando 2.100 neurônios em uma camada ou 2.10 neurônios em duas camadas. Eles descobriram que havia vantagens em pegar pequenas peças e combiná-las em níveis mais altos de abstração, em vez de tentar cobrir todos os níveis de abstração de uma só vez.

"O conceito de profundidade da rede neural está conectado à possibilidade de expressar algo complexo, executando várias etapas simples", disse Rolnik. "Parece uma linha de montagem."

Rolnik e Tegmark provaram a utilidade da profundidade forçando as redes neurais a executar uma tarefa simples: multiplicar funções polinomiais. (Estas são equações com variáveis ​​elevadas a graus naturais, por exemplo, y = x 3 + 1). Eles treinaram as redes, mostrando exemplos de equações e os resultados de sua multiplicação. Então eles disseram às redes neurais para calcular o resultado da multiplicação de equações que eles não tinham visto antes. Redes neurais mais profundas aprenderam como fazer isso com muito menos neurônios do que os pequenos.

E, embora seja improvável que a multiplicação vire nosso mundo de cabeça para baixo, Rolnik diz que uma idéia importante foi descrita no trabalho: "Se uma rede neural superficial não pode sequer se multiplicar, você não deve confiar nela com outra coisa".


David Rolnik

Outros pesquisadores estão investigando a questão da largura mínima suficiente. No final de setembro, Jesse Johnson , ex-matemático da Universidade de Oklahoma e agora pesquisador da empresa farmacêutica Sanofi, provou que, em algum momento, nenhuma profundidade poderia compensar a falta de largura.

Para entender isso, imagine os cordeiros no campo, mas que sejam cordeiros do punk rock: cada um deles será pintado em uma de várias cores. A rede neural deve desenhar uma borda em torno de todas as ovelhas da mesma cor. Em essência, essa tarefa é semelhante à classificação de imagens: uma rede neural possui um conjunto de imagens (que representa como pontos em um espaço multidimensional) e precisa agrupar imagens semelhantes.

Johnson provou que uma rede neural não lidará com essa tarefa se a largura das camadas for menor ou igual à quantidade de dados de entrada. Cada uma de nossas ovelhas pode ser descrita por dois dados de entrada: as coordenadas de sua localização no campo, x e y. Então a rede neural marca cada ovelha com cor e desenha uma borda ao redor da ovelha da mesma cor. Nesse caso, para resolver o problema, você precisa de pelo menos três neurônios por camada.

Mais especificamente, Johnson mostrou que, se a razão entre a largura e o número de variáveis ​​não for suficiente, a rede neural não será capaz de desenhar loops fechados - e uma rede neural teria que desenhar esse loop se, por exemplo, todas as ovelhas vermelhas tivessem se acumulado no meio do pasto. "Se nenhuma das camadas for mais espessa que o número de medições de entrada, a função não poderá criar alguns formulários, independentemente do número de camadas", disse Johnson.

Esse trabalho começa a construir o núcleo da teoria das redes neurais. Até agora, os pesquisadores são capazes de fazer apenas as declarações mais simples em relação ao relacionamento entre arquitetura e funcionalidade - e essas declarações são muito poucas em comparação com o número de tarefas resolvidas pelas redes neurais.

Portanto, embora a teoria das redes neurais não possa mudar o processo de seu design em um futuro próximo, estão sendo criados projetos para uma nova teoria de como os computadores são treinados - e suas consequências serão ainda mais fortes do que uma pessoa que sai para o espaço.

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


All Articles