Multilayer Perceptron (MLP) – Perceptrón Multicapa
¿Qué es un Multilayer Perceptron (MLP)?
Un Multilayer Perceptron (MLP) es un tipo de red neuronal artificial
Compuesta por múltiples capas de neuronas
Transforman datos de entrada en predicciones.
A través del aprendizaje supervisado.
Es una de las arquitecturas más básicas de aprendizaje profundo
Se usa ampliamente en clasificación, regresión.
Reconocimiento de patrones.
Tipo de red neuronal
Feedforward (los datos fluyen en una sola dirección).
Usa aprendizaje supervisado
Se entrena con un conjunto de datos etiquetado.
Aprende a través de backpropagation
Ajusta los pesos con Descenso de Gradiente.
Arquitectura de un MLP
Un MLP está compuesto por tres tipos de capas:
Capa de entrada (Input Layer)
Recibe los datos de entrada.
Capas ocultas (Hidden Layers)
Procesan la información mediante pesos y funciones de activación.
Capa de salida (Output Layer)
Genera la predicción final.
Ejemplo de una arquitectura de MLP para clasificación de imágenes (28×28 píxeles)
Entrada
784 neuronas (28 × 28 píxeles aplanados).
Capa oculta
128 neuronas con función de activación ReLU.
Salida
10 neuronas con activación Softmax para 10 clases.
Funcionamiento de un MLP
Propagación hacia adelante (Forward Propagation)
Cada neurona en una capa recibe entradas ponderadas.
Aplica una función de activación.
xj → Entrada
wij → Pesos de la conexión
bi → Sesgo
f → Función de activación (ReLU, Sigmoide, etc.)
Retropropagación (Backpropagation)
El error entre la salida real y la predicción se minimiza.
Ajustando los pesos mediante descenso de gradiente.
import torch
import torch.nn as nn
import torch.optim as optim
# Definir el modelo MLP
class MLP(nn.Module):
def __init__(self):
super(MLP, self).__init__()
self.modelo = nn.Sequential(
nn.Linear(784, 128), # Capa oculta con 128 neuronas
nn.ReLU(),
nn.Linear(128, 10), # Capa de salida con 10 clases
nn.Softmax(dim=1)
)
def forward(self, x):
return self.modelo(x)
# Crear modelo y definir pérdida y optimizador
modelo = MLP()
criterio = nn.CrossEntropyLoss()
optimizador = optim.Adam(modelo.parameters(), lr=0.001)
Explicación
Se usa PyTorch para definir un MLP con una capa oculta.
Se usa ReLU como función de activación en la capa oculta.
Softmax en la salida para clasificación multiclase.
CrossEntropyLoss como función de pérdida.
Aplicaciones del MLP en IA
Clasificación de imágenes
Ej: MNIST, CIFAR-10.
Predicción de series de tiempo.
Reconocimiento de voz.
Análisis de sentimiento en NLP.
Sistemas de recomendación.
MLP es la base de muchas redes neuronales modernas.
Aprende patrones complejos en los datos a través de múltiples capas.
Backpropagation y optimización con descenso de gradiente son claves en su entrenamiento.






