Laboratorio de Transfer Learning
Entender beneficios de modelos pre-entrenados
Aprender fine-tuning vs extracción de características
Trabajar con ResNet, MobileNet, VGG
Aplicar transfer learning a problemas personalizados
Playground de Transfer Learning
Afina modelos pre-entrenados para tareas personalizadas
Guía de Aprendizaje
Elige tu estilo de aprendizaje
¿Qué Hace?
Demuestra adaptación de dominio mediante CNNs pre-entrenadas (ResNet, VGG, EfficientNet). Muestra congelación de extractor de features, estrategias de fine-tuning, scheduling de learning rate para capas distintas. Crítico para regímenes de pocos datos.
¿Cómo Funciona?
- 1Cargar modelo pre-entrenado (pesos ImageNet): 1000 clases, 1.28M imágenes
- 2Reemplazar capa FC final: nueva capa con num_clases objetivo
- 3Congelar capas tempranas (extractor de features): set requires_grad=False
- 4Entrenar solo cabeza de clasificador con LR alto (1e-3)
- 5Descongelar capas profundas, fine-tune con LR bajo (1e-5, 10x-100x menor)
- 6Usar learning rates diferenciales: capas tempranas 1e-6, medias 1e-5, cabeza 1e-4
Analogía Simple
Transfer learning es como contratar un experto: modelo pre-entrenado aprendió features visuales generales (bordes, texturas, partes) en ImageNet. Fine-tuning adapta conocimiento experto a tu tarea específica con datos mínimos.
Concepto Clave
Con 100 muestras: entrenar desde cero = pobre. Transfer learning = 85%+ accuracy. Pre-entrenamiento provee inicialización fuerte. Usa pesos ImageNet para visión, BERT/GPT para NLP.
Conceptos Fundamentales
Congelación de Extractor de Features
Congelar capas tempranas (aprendidas en ImageNet) → entrenamiento rápido, previene sobreajuste en datasets pequeños.
Fine-Tuning vs Extracción de Features
Extracción de features: congelar todo, entrenar solo cabeza. Fine-tuning: descongelar algunas capas, entrenar conjuntamente. Fine-tuning = mayor accuracy pero más datos necesarios.
Scheduling de Learning Rate
Usar LR discriminativo: bajo para capas congeladas (preservar features), alto para capas nuevas (aprender rápido). Relación típica: 10x-100x.
Aplicaciones del Mundo Real
Diagnóstico Médico
Imágenes médicas limitadas (100-1000). Transfer desde ImageNet → fine-tune en rayos X. 90% accuracy vs 60% entrenando desde cero.
Detección de Defectos de Manufactura
Pocos ejemplos de defectos. Transfer learning detecta rasguños, grietas, irregularidades con 50-100 muestras.
Conservación de Vida Silvestre
Clasificar especies en peligro desde cámaras trampa. Datos etiquetados limitados. Transfer learning habilita clasificación precisa.
Pruébalo Tú Mismo
Congelar vs Descongelar Capas
Congelar todo: rápido, menor accuracy. Descongelar últimas 5 capas: más lento, mayor accuracy. Experimenta con profundidad de congelación.
Experimento de Tamaño de Datos
Entrenar con 10, 50, 100, 500 muestras. Transfer learning domina con pocos datos. Converge con scratch en ~1000 muestras.
Errores Comunes a Evitar
❌ Usar mismo LR para todas las capas
¿Por Qué? Capas nuevas necesitan LR alto (init aleatoria). Capas pre-entrenadas necesitan LR bajo (preservar conocimiento). Usa LRs discriminativos.
❌ Entrenar demasiado (olvido catastrófico)
¿Por Qué? Features pre-entrenados borrados. Usa early stopping basado en val loss.
Deep residual network with 50 layers. Best for complex features.
Visualización de Capas
Conv1
9.4K params
Pool1
No params
ResBlock1
215.3K params
ResBlock2
1216.5K params
ResBlock3
7073.8K params
ResBlock4
14950.4K params
AvgPool
No params
FC (Custom)
2.0K params
Parámetros Totales
25.6M
Parámetros Entrenables
22026.2K
Parámetros Congelados
1.4M
Progreso de Entrenamiento
Época Actual: 0/20
Modo Extracción de Características
Congela todas las capas del modelo base, solo entrena clasificador final. Rápido, previene overfitting, necesita menos datos.
Modo Fine-Tuning
Descongela capas superiores, afina con learning rate bajo. Se adapta al dataset específico, necesita más datos.
Pre-entrenamiento ImageNet
Modelos entrenados en 1.2M imágenes (1000 clases). Aprendieron características universales: bordes, texturas, formas, objetos.