Probar gratis
5 min lectura Guide 761 of 877

Gestión de Proyectos de Machine Learning

Los proyectos de machine learning difieren del software tradicional - los experimentos fallan frecuentemente, los timelines son inciertos y el deployment es complejo. GitScrum ayuda a equipos a gestionar trabajo de ML efectivamente.

Fases de Proyecto ML

Estructura de Fases

CICLO DE VIDA DE PROYECTO ML:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ FASE 1: DEFINICIÓN DEL PROBLEMA                             │
│ ─────────────────────────────                               │
│ Duración: 1-2 semanas                                      │
│                                                             │
│ Tareas:                                                     │
│ ☐ Definir problema de negocio                             │
│ ☐ Identificar métricas de éxito                           │
│ ☐ Evaluar factibilidad                                    │
│ ☐ Definir scope de MVP                                    │
│                                                             │
│ Output: Decisión go/no-go, charter de proyecto            │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ FASE 2: PREPARACIÓN DE DATOS                                │
│ ─────────────────────────────                               │
│ Duración: 2-4 semanas                                      │
│                                                             │
│ Tareas:                                                     │
│ ☐ Recolección de datos                                    │
│ ☐ Exploración de datos                                    │
│ ☐ Feature engineering                                     │
│ ☐ Creación de pipeline de datos                           │
│ ☐ Split train/test                                        │
│                                                             │
│ Output: Dataset limpio, set de features, pipeline de datos│
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ FASE 3: EXPERIMENTACIÓN                                     │
│ ─────────────────────────────                               │
│ Duración: 2-6 semanas (timeboxed)                         │
│                                                             │
│ Tareas:                                                     │
│ ☐ Modelo baseline                                         │
│ ☐ Iteraciones de experimento                              │
│ ☐ Selección de modelo                                     │
│ ☐ Tuning de hyperparámetros                               │
│                                                             │
│ Output: Modelo entrenado cumpliendo criterios (o decisión de parar)│
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ FASE 4: PRODUCTIONIZACIÓN                                   │
│ ───────────────────────────                                │
│ Duración: 2-4 semanas                                      │
│                                                             │
│ Tareas:                                                     │
│ ☐ Infraestructura de serving de modelo                    │
│ ☐ Monitoreo                                               │
│ ☐ Setup de A/B testing                                    │
│ ☐ Rollout                                                 │
│                                                             │
│ Output: Modelo en producción                               │
│                                                             │
│ ─────────────────────────────────────────────────────────── │
│                                                             │
│ FASE 5: MANTENIMIENTO                                       │
│ ──────────────────────                                     │
│ Ongoing                                                    │
│                                                             │
│ Tareas:                                                     │
│ ☐ Monitoreo de modelo                                     │
│ ☐ Detección de drift                                      │
│ ☐ Reentrenamiento                                         │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Gestión de Experimentos

Tareas de Experimento

TAREA DE EXPERIMENTO ML:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ ESTRUCTURA DE EXPERIMENTO:                                  │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ ML-EXP-05: Test BERT para clasificación de sentimiento ││
│ │                                                         ││
│ │ HIPÓTESIS:                                               ││
│ │ BERT fine-tuneado superará sentimiento basado en reglas ││
│ │ actual por 15%+ en F1 score.                            ││
│ │                                                         ││
│ │ BASELINE:                                                ││
│ │ Actual basado en reglas: 0.72 F1                        ││
│ │                                                         ││
│ │ CRITERIO DE ÉXITO:                                       ││
│ │ ≥ 0.85 F1 en test set                                   ││
│ │                                                         ││
│ │ TIMEBOX:                                                 ││
│ │ 1 semana máximo                                         ││
│ │                                                         ││
│ │ APPROACH:                                                ││
│ │ ☐ Fine-tune bert-base-uncased                          ││
│ │ ☐ Usar training set etiquetado (10K ejemplos)          ││
│ │ ☐ 5-fold cross validation                              ││
│ │ ☐ Comparar con baseline                                ││
│ │                                                         ││
│ │ RECURSOS:                                                ││
│ │ • GPU: 1x V100                                          ││
│ │ • Tiempo de training: ~4 horas                          ││
│ │                                                         ││
│ │ CONDICIONES DE PARADA:                                   ││
│ │ • F1 < 0.75 después de 3 epochs → Parar, probar otro   ││
│ │ • Training diverge → Revisar datos, reiniciar          ││
│ │ • Tiempo excedido → Documentar resultados, decidir     ││
│ └─────────────────────────────────────────────────────────┘│
│                                                             │
│ OUTCOMES DE EXPERIMENTO:                                    │
│                                                             │
│ ✅ ÉXITO:                                                  │
│ Cumplió criterios, proceder a productionización           │
│                                                             │
│ ⚠️ PARCIAL:                                                │
│ Alguna mejora, decidir si vale continuar                  │
│                                                             │
│ ❌ FALLA:                                                  │
│ Debajo de baseline o no vale la complejidad               │
│ → ¡Aún valioso! Documentar aprendizajes                   │
└─────────────────────────────────────────────────────────────┘

Tracking de Resultados

DOCUMENTACIÓN DE RESULTADOS DE EXPERIMENTO:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│ ACTUALIZAR TAREA CUANDO COMPLETE:                           │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ ML-EXP-05: Test BERT para sentimiento                   ││
│ │ Estado: ✅ Completo                                      ││
│ │                                                         ││
│ │ RESULTADOS:                                              ││
│ │ ─────────────────────────────────────────────────────── ││
│ │ Modelo        F1     Precision  Recall  Tiempo         ││
│ │ Baseline      0.72   0.70       0.74    -              ││
│ │ BERT-base     0.89   0.87       0.91    4.2h           ││
│ │ ─────────────────────────────────────────────────────── ││
│ │                                                         ││
│ │ OUTCOME: ✅ Éxito - excedió target 0.85                 ││
│ │                                                         ││
│ │ APRENDIZAJES:                                            ││
│ │ • BERT superó significativamente a reglas              ││
│ │ • 10K ejemplos suficientes para esta tarea             ││
│ │ • GPU training práctico para retraining diario         ││
│ │                                                         ││
│ │ PRÓXIMOS PASOS:                                          ││
│ │ → Crear ML-PROD-01 para productionización              ││
│ │                                                         ││
│ │ ARTEFACTOS:                                              ││
│ │ • MLflow run: [link]                                   ││
│ │ • Notebook: experiments/bert-sentiment.ipynb           ││
│ └─────────────────────────────────────────────────────────┘│
└─────────────────────────────────────────────────────────────┘

Mejores Prácticas

  1. Timebox experimentos para evitar iteración sin fin
  2. Define criterios de éxito antes de empezar
  3. Documenta todo - éxitos y fallas
  4. Baseline primero antes de modelos complejos
  5. Separa exploración de entrega en planning
  6. Productionización es la mitad del trabajo - planifica para ella

Soluciones Relacionadas