Redes Neurais – Deep Learning

1.1.1 – Regressao
1.1.1.7 – Redes Neurais – Deep Learning
1.1.1.7.1 – Perceptron Multicamadas – MLP/FNN
LEGENDA
Principal
Ramo
Metodo
Problemas
Modelo
Arquitetura

O que é regressão com perceptron multicamadas

A regressão com redes neurais é um método poderoso. Ela usa uma arquitetura chamada perceptron multicamadas (MLP). Diferentemente da árvore, a MLP aprende funções suaves e complexas. Por exemplo, podemos prever o consumo de energia elétrica. A rede é composta por neurônios artificiais interconectados. Cada neurônio aplica uma transformação matemática simples. Essa transformação é frequentemente não linear. O aprendizado ocorre por meio de um processo chamado retropropagação. Iniciantes podem pensar na MLP como um “matemático universal”.

As características principais incluem flexibilidade e capacidade de generalização. Primeiramente, a MLP pode aproximar qualquer função contínua. Além disso, ela lida bem com dados de alta dimensionalidade. Contudo, seu treinamento pode ser mais demorado. A interpretabilidade é menor em comparação com árvores. Por essa razão, é importante entender sua arquitetura. Modelos bem ajustados produzem predições precisas e estáveis. Eles são amplamente usados em problemas do mundo real.

Arquitetura da rede neural

A arquitetura MLP possui três tipos de camadas. A camada de entrada recebe as características dos dados. Cada característica é conectada a todos os neurônios seguintes. Em seguida, vêm uma ou mais camadas ocultas. Cada camada oculta contém neurônios com funções de ativação. Finalmente, a camada de saída produz o valor numérico previsto. Para regressão, essa camada usa ativação linear. O número de neurônios ocultos é um hiperparâmetro crucial. Redes mais largas e profundas são mais expressivas.

Uma fórmula descreve a operação de um neurônio. Primeiro, calcula-se a soma ponderada das entradas: \(z = \sum_{i=1}^{n} w_i x_i + b\). Depois, aplica-se a função de ativação \(a = f(z)\). Funções comuns são ReLU, tangente hiperbólica e sigmoide. A ReLU é definida como \(f(z) = \max(0, z)\). Ela é frequentemente usada em camadas ocultas. A saída final da rede é uma combinação linear dessas ativações. Todo esse processamento é feito simultaneamente para todos os dados.

Hiperparâmetros importantes

Os hiperparâmetros controlam o treinamento da MLP. A taxa de aprendizado define o tamanho dos passos de ajuste. O número de épocas é quantas vezes vemos todos os dados. O tamanho do lote (batch) afeta a estabilidade do gradiente. A escolha da função de ativação impacta a convergência. Além disso, a regularização evita overfitting. Ela é aplicada por meio de penalidades nos pesos. A inicialização dos pesos também é um fator relevante. Esses parâmetros são ajustados empiricamente.

Uma fórmula central é a da retropropagação do erro. O erro quadrático médio é frequentemente minimizado: \(MSE = \frac{1}{N}\sum_{i=1}^{N} (y_i – \hat{y}_i)^2\). A atualização dos pesos segue a regra do gradiente descendente: \(w_{novo} = w_{velho} – \eta \frac{\partial MSE}{\partial w}\). Nessa equação, \(\eta\) é a taxa de aprendizado. O gradiente é calculado pela regra da cadeia. Esse processo é repetido até a convergência do erro. Sem ajuste cuidadoso, a rede pode não aprender corretamente.

Exemplo prático em Python

O código abaixo deve ser executado no Google Colab. Ele cria dados sintéticos com ruído e uma tendência cúbica. Uma MLP com uma camada oculta é treinada para regressão. O gráfico mostra os dados reais e a predição da rede. Certifique-se de ter as bibliotecas instaladas. A seguir, o código completo é apresentado.

A normalização dos dados é aplicada antes do treinamento. Ela é necessária porque redes neurais são sensíveis a escalas. A MLP usada tem 100 neurônios em uma camada oculta. A função ReLU é escolhida para evitar gradientes desvanecentes. O gráfico final mostra uma curva suave ajustada aos dados. Diferentemente da árvore, não há degraus visíveis. Isso demonstra a natureza contínua da regressão neural. Para melhores resultados, experimente mais neurônios ou camadas. Ajustar hiperparâmetros é uma prática comum e recomendada.

Deixe um comentário