IA 101
O que são Redes Neurais?

O que são Redes Neurais Artificiais (ANNs)?
Muitos dos maiores avanços em IA são impulsionados por redes neurais artificiais. Redes Neurais Artificiais (ANNs) são a conexão de funções matemáticas unidas em um formato inspirado nas redes neurais encontradas no cérebro humano. Essas ANNs são capazes de extrair padrões complexos de dados, aplicando esses padrões a dados não vistos para classificar/reconhecer os dados. Dessa forma, a máquina “aprende”. Essa é uma visão geral rápida sobre redes neurais, mas vamos dar uma olhada mais detalhada nas redes neurais para entender melhor o que elas são e como funcionam.
Perceptron Multicamada Explicado
Antes de olharmos para redes neurais mais complexas, vamos dar uma olhada em uma versão simples de uma ANN, um Perceptron Multicamada (MLP).

Imagine uma linha de montagem em uma fábrica. Nessa linha de montagem, um trabalhador recebe um item, faz alguns ajustes nele e, em seguida, o passa para o próximo trabalhador na linha, que faz o mesmo. Esse processo continua até que o último trabalhador na linha coloque os toques finais no item e o coloque em uma esteira que o levará para fora da fábrica. Nessa analogia, há várias “camadas” na linha de montagem, e os produtos se movem entre as camadas à medida que se movem de trabalhador para trabalhador. A linha de montagem também tem um ponto de entrada e um ponto de saída.
Um Perceptron Multicamada pode ser pensado como uma linha de produção muito simples, feita de três camadas no total: uma camada de entrada, uma camada oculta e uma camada de saída. A camada de entrada é onde os dados são alimentados no MLP, e na camada oculta, alguns “trabalhadores” lidam com os dados antes de passá-los para a camada de saída, que fornece o produto para o mundo exterior. No caso de um MLP, esses trabalhadores são chamados de “neurônios” (ou sometimes nodes) e, quando lidam com os dados, manipulam-nos por meio de uma série de funções matemáticas.
Dentro da rede, há estruturas que conectam nó a nó chamadas “pesos“. Pesos são uma suposição sobre como os pontos de dados estão relacionados à medida que se movem pela rede. Em outras palavras, pesos refletem o nível de influência que um neurônio tem sobre outro neurônio. Os pesos passam por uma “função de ativação” ao sair do nó atual, que é um tipo de função matemática que transforma os dados. Eles transformam dados lineares em representações não lineares, o que permite que a rede analise padrões complexos.
A analogia com o cérebro humano implicada por “rede neural artificial” vem do fato de que os neurônios que compõem o cérebro humano estão unidos de forma semelhante à como os nós em uma ANN estão ligados.
Embora os perceptrons multicamada existam desde a década de 1940, havia uma série de limitações que os impediam de ser especialmente úteis. No entanto, ao longo das últimas décadas, uma técnica chamada “backpropagation” foi criada, que permitiu que as redes ajustassem os pesos dos neurônios e, portanto, aprendessem de forma muito mais eficaz. A backpropagation altera os pesos na rede neural, permitindo que a rede capture melhor os padrões reais dentro dos dados.
Redes Neurais Profundas
Redes neurais profundas tomam a forma básica do MLP e a tornam maior, adicionando mais camadas ocultas no meio do modelo. Então, em vez de haver uma camada de entrada, uma camada oculta e uma camada de saída, há muitas camadas ocultas no meio e as saídas de uma camada oculta se tornam as entradas para a próxima camada oculta, até que os dados tenham passado por toda a rede e sido retornados.
As múltiplas camadas ocultas de uma rede neural profunda são capazes de interpretar padrões mais complexos do que o perceptron multicamada tradicional. Diferentes camadas da rede neural profunda aprendem os padrões de diferentes partes dos dados. Por exemplo, se os dados de entrada consistem em imagens, a primeira parte da rede pode interpretar a claridade ou escuridão dos pixels, enquanto as camadas posteriores podem identificar formas e bordos que podem ser usados para reconhecer objetos na imagem.
Diferentes Tipos de Redes Neurais

Há vários tipos de redes neurais, e cada um dos vários tipos de redes neurais tem suas próprias vantagens e desvantagens (e, portanto, seus próprios casos de uso). O tipo de rede neural profunda descrito acima é o tipo mais comum de rede neural e é frequentemente referido como uma rede neural feedforward.
Uma variação das redes neurais é a Rede Neural Recorrente (RNN). No caso das Redes Neurais Recorrentes, mecanismos de looping são usados para reter informações de estados anteriores de análise, o que significa que elas podem interpretar dados em que a ordem importa. RNNs são úteis para derivar padrões de dados sequenciais/cronológicos. Redes Neurais Recorrentes podem ser unidirecionais ou bidirecionais. No caso de uma rede neural bidirecional, a rede pode tirar informações de partes posteriores da sequência, bem como de partes anteriores da sequência. Como a RNN bidirecional leva mais informações em consideração, ela é melhor capaz de tirar os padrões certos dos dados.
Uma Rede Neural Convolucional é um tipo especial de rede neural que é hábil em interpretar os padrões encontrados dentro de imagens. Uma CNN opera passando um filtro sobre os pixels da imagem e obtendo uma representação numérica dos pixels dentro da imagem, que ela pode, em seguida, analisar para padrões. Uma CNN é estruturada de forma que as camadas convolucionais, que extraem os pixels da imagem, venham primeiro, e, em seguida, as camadas densamente conectadas feed-forward, que aprenderão a reconhecer objetos, vêm após isso.












