Redes Neuronales (Neural Networks)
En esta guía aprenderás los fundamentos avanzados de las redes neuronales artificiales, la base de los modelos modernos de Inteligencia Artificial. Este módulo es esencial para comprender arquitecturas como CNN, RNN, LSTM y Transformers.
Tabla de contenidos
- Qué es una red neuronal
- Arquitectura básica
- Funciones de activación
- Forward pass y Backpropagation
- Funciones de pérdida
- Entrenamiento
- Overfitting y regularización
- Tipos de redes neuronales
- Ejemplo práctico con Keras
- Ventajas y desventajas
- Resumen
1. Qué es una red neuronal
Una red neuronal artificial (ANN) es un modelo matemático inspirado en el cerebro humano. Aprende patrones complejos ajustando pesos y conexiones entre neuronas.
- Neuronas (nodos)
- Pesos y sesgos
- Funciones de activación
- Capas (entrada, ocultas y salida)
2. Arquitectura básica
Una red neuronal procesa datos a través de capas conectadas. Cada capa transforma la información mediante operaciones lineales y funciones de activación.
Salida = f(W₂ · f(W₁ · X + b₁) + b₂)
3. Funciones de activación
Las funciones de activación permiten que la red aprenda relaciones no lineales.
- ReLU
- Sigmoid
- Tanh
- Leaky ReLU
- Softmax
4. Forward pass y Backpropagation
El entrenamiento de una red neuronal se basa en dos pasos:
- Forward pass: la red calcula la salida.
- Backpropagation: ajusta los pesos minimizando el error.
W = W - η · ∂L/∂W
5. Funciones de pérdida
- MSE (regresión)
- Cross‑Entropy (clasificación)
- Binary Cross‑Entropy
- Categorical Cross‑Entropy
6. Entrenamiento
El entrenamiento consiste en repetir ciclos (epochs) donde la red ajusta sus pesos.
- Learning rate
- Batch size
- Número de capas
- Número de neuronas
- Optimizadores (Adam, SGD, RMSProp)
7. Overfitting y regularización
- Dropout
- Early stopping
- Regularización L1/L2
- Batch normalization
- Data augmentation
8. Tipos de redes neuronales
- MLP (densas)
- CNN (visión)
- RNN (secuencias)
- LSTM (memoria larga)
- Transformers
- Autoencoders
- GANs
9. Ejemplo práctico con Keras
import tensorflow as tf
from tensorflow.keras import layers
model = tf.keras.Sequential([
layers.Dense(64, activation='relu', input_shape=(10,)),
layers.Dense(32, activation='relu'),
layers.Dense(1, activation='sigmoid')
])
model.compile(
optimizer='adam',
loss='binary_crossentropy',
metrics=['accuracy']
)
model.fit(X_train, y_train, epochs=20, batch_size=32)
10. Ventajas y desventajas
- Aprenden funciones complejas
- Escalan con datos
- Base de modelos modernos
- Requieren muchos datos
- Entrenamiento costoso
- Difíciles de interpretar
11. Resumen
Las redes neuronales son modelos capaces de aprender patrones complejos mediante capas, activaciones y ajuste de pesos. Son la base de arquitecturas avanzadas como CNN, RNN, LSTM y Transformers.
12. Ejercicios
- Define qué es una red neuronal.
- Explica qué es una función de activación.
- Describe el proceso de backpropagation.
- Menciona tres tipos de redes neuronales.
- Explica qué es el overfitting.
# pista activación
"Función que introduce no linealidad en la red."
# pista backpropagation
"Ajuste de pesos usando gradiente descendente."