Conceitos básicos · Leitura de 7 min

O que é uma rede neural, explicada como uma cadeia de decisões

Não há neurônios de verdade ali dentro. Há números trocando a bola. Vou desenhar isso para você, camada por camada.

Uma rede neural não tem neurônios. Tem números. E esses números ficam trocando a bola, de um lado para o outro, até que uma resposta sai na outra ponta. É só isso. O nome é emprestado da biologia (alguém viu um diagrama do cérebro e gostou da analogia), mas por dentro não há nada vivo: há uma tabela de números que multiplica o que entra, soma um pouco e empurra tudo para a frente. Se você tirar a palavra "neurônio" da cabeça e trocá-la por "uma cadeia de decisões que vão se apurando", quase tudo o que vem a seguir fica transparente.

O que é uma rede neural, dito sem enfeites: um procedimento para transformar uma lista de números de entrada em uma lista de números de saída, passando-os por várias etapas em que cada etapa apura um pouco o resultado. A palavra-chave é etapa. Vamos chamá-las de camadas, e são o coração da coisa.

01 · a entradaTudo começa convertido em números

Antes que uma rede possa "decidir" qualquer coisa, o mundo precisa entrar pela porta convertido em cifras. Uma foto é uma grade de pixels, e cada pixel é um número de brilho. Uma palavra é um vetor de coordenadas. A temperatura de hoje, o preço de ontem, as batidas por minuto: tudo o que você entrega a uma rede chega como uma lista de números, nada mais. A rede nunca vê um gato nem uma palavra; vê uma coluna de valores.

Essa coluna é a camada de entrada. Não faz nada de inteligente: apenas segura os dados exatamente como chegaram. A inteligência, se é que o nome cabe, acontece no que vem depois: em como esses números se combinam vez após vez.

A rede nunca vê um gato. Vê uma coluna de números, e aprende a dobrá-la até a resposta cair sozinha.

02 · a camadaMultiplicar, somar, dobrar: a decisão mínima

Aqui está o mecanismo inteiro, e é mais simples do que sua fama sugere. Cada número de uma camada se conecta com cada número da seguinte. Cada conexão tem um peso: um número que diz o quanto aquele sinal importa. Para calcular um valor da camada seguinte, a rede pega todas as entradas, as multiplica pelos seus pesos, soma os resultados e acrescenta um pequeno ajuste chamado viés. Multiplicar e somar. Isso é uma reta.

Mas uma cadeia de puras retas se achata em uma única reta, e com isso você não distingue um gato de uma torradeira. Falta um ingrediente: depois de multiplicar e somar, cada valor passa por uma função de ativação, uma pequena dobra que decide se o sinal segue vivo ou se apaga. A mais comum hoje, a ReLU, faz algo quase bobo: se o número é negativo, vira zero; se é positivo, deixa passar. Essa dobra, repetida em milhares de pontos, é o que permite à rede curvar o espaço e separar coisas que uma reta jamais separaria.

Figura 1 · una neurona es multiplicar, sumar y doblar
x₁ x₂ x₃ × w₁ × w₂ × w₃ Σ + viés ativação y
Cada entrada é multiplicada pelo seu peso, tudo é somado com um viés, e o resultado passa por uma dobra (a ativação) antes de sair. Repita isso por milhares de conexões e você tem uma camada. Elaboração própria a partir de Goodfellow, Bengio & Courville (2016), cap. 6 [1].

03 · a profundidadePor que várias camadas são empilhadas

Uma única camada já toma decisões, mas decisões pobres. A potência aparece quando você põe uma camada atrás da outra, e outra, e outra. A cada trecho a rede constrói descrições um pouco mais abstratas do que entrou. Numa rede que olha imagens, isso é quase visível: as primeiras camadas detectam bordas e manchas de cor; as intermediárias combinam essas bordas em olhos, rodas, texturas; as últimas juntam essas partes em "gato", "carro", "rosto". Ninguém disse à rede o que era uma borda nem um olho. Ela deduziu empilhando multiplicações [2].

Por isso as redes com muitas camadas são chamadas de profundas, e a disciplina, aprendizado profundo. A profundidade não é enfeite: é a diferença entre uma máquina que traça um risco e outra que reconhece um rosto. Cada camada é uma etapa de refinamento; a resposta não aparece de repente, ela se decanta.

A ideia é antiga. Em 1958 o psicólogo Frank Rosenblatt apresentou o perceptron, a primeira rede treinável: uma única camada que já multiplicava entradas por pesos e decidia sim ou não [3]. Prometeu demais, caiu em desgraça quando se demonstrou que uma única camada não conseguia resolver problemas simples como o "ou exclusivo", e foi preciso esperar décadas e várias camadas a mais para que a ideia florescesse. O que hoje chamamos de rede neural é, no fundo, muitos perceptrons empilhados e apurados com paciência.

Aprender é ajustar os pesos, nada mais

Uma rede recém-nascida traz pesos ao acaso e responde qualquer coisa. "Treiná-la" significa mostrar exemplos com a resposta correta e corrigir cada peso um pouquinho na direção que reduz o erro. Repetido milhões de vezes, esse gotejar de correções deixa os pesos exatamente onde a rede acerta. Os pesos ajustados são a única coisa que a rede "sabe": são a sua memória e o seu critério.

04 · a saídaDa última camada a uma resposta

No fim da cadeia há uma camada de saída com tantas casas quantas respostas possíveis. Se a rede classifica animais, talvez tenha uma casa por espécie, e cada uma guarda um número de confiança. Um último passo converte esses números em algo legível (probabilidades que somam 100 %) e a casa mais alta vence. "Com 92 % de confiança, isto é um gato." A rede não tem certeza de nada; apenas reporta para que lado se inclinou a soma de todas as suas multiplicações.

Figura 2 · la respuesta se decanta capa por capa
entrada camada oculta camada oculta saída gato outro
A mesma coluna de números atravessa as camadas ocultas, se transforma em cada uma e termina em duas casas de saída onde a mais alta vence. Diagrama esquemático; o número real de nós e camadas varia por modelo. Elaboração própria.

E esse é o mecanismo completo. Números que entram, camadas que os multiplicam, somam e dobram, e uma casa que se acende no fim. Nem magia nem cérebro: uma cadeia de decisões onde cada elo apura um pouco o que recebeu. Quando alguém lhe disser que uma IA "pensa", traduza mentalmente: ela está deslizando uma coluna de números por uma escada de multiplicações, e no último degrau se decanta uma resposta. O assombroso não é que haja neurônios (não há), mas que empilhar aritmética simples, muitas vezes, baste para reconhecer um rosto.

Fontes

  1. Goodfellow, I., Bengio, Y. & Courville, A. (2016). Deep Learning. MIT Press, cap. 6 ("Deep Feedforward Networks"). Disponível em deeplearningbook.org.
  2. LeCun, Y., Bengio, Y. & Hinton, G. (2015). Deep learning. Nature, 521, pp. 436-444. DOI: 10.1038/nature14539.
  3. Rosenblatt, F. (1958). The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain. Psychological Review, 65(6), pp. 386-408. DOI: 10.1037/h0042519.

Aprenda mais sobre IA

Ver tudo Aprenda IA