1.1.1.7 – Redes Neurais – Deep Learning
1.1.1.7.1 – Perceptron Multicamadas – MLP/FNN
a arquitetura mais fundamental do deep learning
O Perceptron Multicamadas (MLP) é a arquitetura neural mais básica e fundamental do deep learning. Ela consiste em uma camada de entrada, uma ou mais camadas ocultas e uma camada de saída. Cada neurônio de uma camada conecta-se a todos os neurônios da camada seguinte. Por exemplo, para classificar dígitos, a entrada são pixels e a saída são 10 classes. Primeiramente, essa arquitetura totalmente conectada (fully connected) processa informações sequencialmente. Além disso, é também chamada de Rede Neural Feedforward (FNN). MLPs formam a base para arquiteturas mais complexas como CNNs e Transformers.
como os dados fluem pela rede
O fluxo de informações em um MLP ocorre apenas em uma direção: da entrada para a saída. Primeiramente, os dados entram pela camada de entrada, onde cada neurônio representa uma característica. Depois, os valores seguem para a primeira camada oculta através de conexões ponderadas. Cada neurônio oculto soma suas entradas ponderadas e aplica uma função de ativação. Esse processo se repete camada por camada até alcançar a camada de saída. Além disso, não há conexões retroalimentadas ou loops na arquitetura. Esse fluxo unidirecional dá origem ao nome “feedforward” (alimentação para frente).
aprendendo com retropropagação
O treinamento de MLPs utiliza o algoritmo de retropropagação (backpropagation) combinado com gradiente descendente. Primeiramente, fazemos uma passagem forward para calcular a saída da rede. Depois, calculamos o erro comparando a saída com o valor desejado. Além disso, propagamos esse erro de volta pelas camadas, ajustando os pesos. O gradiente indica em que direção modificar cada peso para reduzir o erro. Esse processo repete-se por muitas épocas até o erro convergir. A retropropagação é o algoritmo que permite que redes profundas aprendam.
camadas ocultas e capacidade de representação
As camadas ocultas são responsáveis pela capacidade do MLP de aprender padrões complexos. Primeiramente, camadas ocultas permitem que a rede aprenda representações intermediárias dos dados. Uma única camada oculta pode aproximar qualquer função contínua (teorema da aproximação universal). Além disso, múltiplas camadas ocultas permitem aprender hierarquias de características progressivamente. Por exemplo, em imagens, primeiras camadas detectam bordas, camadas posteriores reconhecem objetos. O número de neurônios por camada controla a capacidade de aprendizado. Mais neurônios aumentam o poder, mas também o risco de sobreajuste.
aplicações e limitações do mlp
MLPs são amplamente utilizados em problemas com dados tabulares estruturados. Primeiramente, sistemas financeiros usam MLPs para previsão de séries temporais e risco. Além disso, problemas de classificação com características bem definidas frequentemente usam MLPs. Na bioinformática, MLPs ajudam a prever estruturas de proteínas e interações. Entretanto, MLPs não capturam padrões espaciais (como imagens) ou sequenciais (como texto) de forma eficiente. Para esses casos, arquiteturas especializadas como CNNs e RNNs são mais adequadas. Para iniciantes, MLPs oferecem a introdução perfeita ao universo do deep learning. É o primeiro passo para entender redes neurais mais avançadas.