Arquitecturas Avanzadas: ResNet, Inception y DenseNet
Las arquitecturas avanzadas han permitido entrenar redes neuronales profundas con miles de capas, resolviendo problemas como el gradiente que desaparece y mejorando la eficiencia del aprendizaje. En esta guía aprenderás las tres arquitecturas más influyentes en visión artificial moderna.
Tabla de contenidos
- Problema del gradiente en redes profundas
- ResNet
- Inception
- DenseNet
- Diferencias clave
- Ejemplo con Keras
- Ejercicios
1. Problema del gradiente en redes profundas
Las redes profundas sufren del problema del gradiente que desaparece: a medida que las capas aumentan, el gradiente se vuelve demasiado pequeño para actualizar los pesos. Las arquitecturas avanzadas solucionan este problema.
2. ResNet
ResNet introduce conexiones residuales que permiten que el gradiente fluya sin perderse.
y = F(x) + x
Esto permite entrenar redes de más de 1000 capas.
3. Inception
Inception usa múltiples tamaños de filtros en paralelo para capturar diferentes tipos de patrones.
Conv 1x1
Conv 3x3
Conv 5x5
Pooling
→ concatenación
Es eficiente y reduce el costo computacional.
4. DenseNet
DenseNet conecta cada capa con todas las anteriores, reutilizando características.
xₙ = [x₀, x₁, x₂, ..., xₙ₋₁]
- Mejor flujo de gradiente
- Menos parámetros
- Mayor eficiencia
5. Diferencias clave
- ResNet: conexiones residuales
- Inception: múltiples filtros en paralelo
- DenseNet: conexiones densas entre capas
6. Ejemplo con Keras
from tensorflow.keras.applications import ResNet50
model = ResNet50(weights=None, input_shape=(224,224,3), classes=10)
model.summary()
7. Ejercicios
- Explica el problema del gradiente que desaparece.
- Define qué es una conexión residual.
- ¿Qué hace el módulo Inception?
- Explica la idea principal de DenseNet.
- Menciona una diferencia clave entre ResNet e Inception.
# pista resnet
"F(x) + x"
# pista inception
"Filtros múltiples en paralelo"