Skip to content

Latest commit

 

History

History
198 lines (143 loc) · 8.35 KB

File metadata and controls

198 lines (143 loc) · 8.35 KB

Análisis de Resultados CNN-LSTM Secuencial - Sleep Staging

Análisis completo del entrenamiento cnn_lstm_seq_full_20251214_041519.

Note

Modelo Secuencial: CNN para extracción de características + LSTM bidireccional para modelado de contexto temporal multi-epoch. Input: secuencias de 11 epochs consecutivas.

Resumen Ejecutivo

Métrica Test Set Mejor Validación
Accuracy 80.04% -
Cohen's Kappa 0.721 0.702
F1 Macro 73.19% 75.85%
F1 Weighted 79.65% -
Tiempo 316 min 291 epochs

Important

Kappa 0.72 = Acuerdo "substancial" según Landis & Koch. Mejor resultado de todos los modelos entrenados. La mejora respecto a CNN1D (0.68) se atribuye a la combinación de arquitectura híbrida CNN+LSTM y contexto multi-epoch.


Visualización de Resultados

Matriz de Confusión

Confusion Matrix

Curvas de Entrenamiento

Training Curves


Análisis Detallado

Aspectos Positivos

  1. Mejor rendimiento general: Kappa 0.72 supera a todos los modelos anteriores
  2. Contexto multi-epoch funciona: Procesar secuencias de 11 epochs aprovecha transiciones entre etapas
  3. Buena generalización: Val → Test gap mínimo en Kappa (~2.7%), consistente
  4. Convergencia temprana: Mejor modelo en epoch 144, early stopping funcionó correctamente
  5. Arquitectura efectiva:
    • CNN: 3 bloques (32→64→128 filtros) para extracción de features por epoch
    • LSTM Bidireccional: 2 capas (64→32 unidades) para contexto temporal
    • Feature dim: 128 para representación compacta

Aspectos a Mejorar

  1. N1 sigue siendo el estadio más difícil: A pesar de las mejoras globales, N1 muestra confusión significativa con W y N2. Esto es inherente a su naturaleza transicional.
  2. Tiempo de entrenamiento: 316 min, más lento que otros modelos
  3. Dataset secuencial reducido: 65,814 secuencias vs 133,504 epochs individuales

Análisis por Clase

Stage Observación
W (Wake) Bien clasificado, pocas confusiones
N1 Más difícil - confusión con W y N2, inherente a su naturaleza transicional
N2 Buen rendimiento, algunas confusiones con N1/N3 en bordes
N3 Excelente, patrones de onda delta muy distintivos
REM Bien clasificado, ligera confusión con N2

Note

N1 representa solo ~5-8% del tiempo de sueño y es un estadio de transición breve. Incluso expertos humanos tienen desacuerdo significativo en N1 (inter-scorer kappa ~0.5 para N1 específicamente).

Análisis de Curvas

Observaciones del historial:

Época Val Loss Val Accuracy Val Kappa Val F1 Macro Nota
3-30 Alta varianza 65-82% 0.46-0.68 0.58-0.74 Warmup y exploración
33-90 ~0.58-0.80 ~73-82% ~0.53-0.66 ~0.64-0.74 Convergencia inicial
114 0.695 75.9% 0.624 0.716 Mejora significativa
135 0.634 78.4% 0.676 0.743 Cerca del mejor
144 0.831 73.4% 0.702 0.759 Mejor F1 Macro
150-294 ~0.56-0.80 ~70-82% ~0.62-0.67 ~0.71-0.76 Fluctuación

Note

El mejor modelo se guardó en epoch 144 basado en val_f1_macro (evaluación cada 3 epochs via SeqSleepMetricsCallback). Las columnas val_kappa y val_f1_macro se registran cada 3 epochs, mientras que val_loss/val_accuracy se registran en cada epoch.


Comparación con Otros Modelos

Modelo Arquitectura Kappa F1 Macro Tiempo Enfoque
LSTM Unidireccional 96 units 0.530 58.6% 202 min Single-epoch
LSTM Bidireccional 96×2 units 0.521 58.2% 372 min Single-epoch
LSTM Bi + Attention 96×2 + attn 0.651 68.1% 200 min Single-epoch
CNN1D Baseline 3 bloques res 0.680 70.83% 105 min Single-epoch
CNN-LSTM Seq CNN + BiLSTM 0.721 73.2% 316 min Multi-epoch
DeepSleepNet CNN + BiLSTM ~0.76 - - Multi-epoch
Inter-scorer humano - 0.75-0.85 - - Gold standard

Tip

El modelo alcanza ~96% del rendimiento humano (0.72/0.75), el mejor resultado hasta ahora. El enfoque multi-epoch es clave.


Impacto del Contexto Multi-Epoch

Aspecto Single-Epoch (CNN1D) Multi-Epoch (CNN-LSTM) Mejora
Kappa 0.680 0.721 +6.0%
F1 Macro 70.8% 73.2% +3.4%
Accuracy 76.9% 80.0% +4.0%
Contexto 30 segundos 5.5 minutos (11 epochs × 30s) 11x

Important

Hallazgo clave: La arquitectura híbrida CNN-LSTM con contexto multi-epoch logra el mejor rendimiento. La CNN extrae features por epoch mientras la BiLSTM modela transiciones temporales. Se requeriría un ablation study para cuantificar la contribución individual de cada componente.


Configuración del Experimento

{
    "execution_mode": "full",
    "seq_length": 11,                    # Secuencias de 11 epochs consecutivas
    "seq_stride_train": 2,               # Stride para train
    "seq_stride_val": 2,                 # Stride para validación
    "seq_stride_test": 11,               # Sin overlap en test
    "cnn_filters": [32, 64, 128],        # 3 bloques CNN
    "cnn_kernel_sizes": [5, 5, 3],       # Tamaños de kernel
    "feature_dim": 128,                  # Dimensión de features
    "lstm_units": [64, 32],              # 2 capas LSTM
    "bidirectional": True,
    "dropout_rate": 0.3,
    "learning_rate_initial": 3e-4,
    "warmup_epochs": 5,
    "batch_size": 64,
    "effective_batch_size": 128,         # 2x T4 GPUs
    "epochs": 300,
    "early_stopping_patience": 50,
    "class_weight_clip": 1.5,
    "streaming": True,                   # TFRecords en streaming
}

Dataset:

  • Train: 65,814 secuencias
  • Val: 11,313 secuencias
  • Test: 2,686 secuencias
  • Split: 70/15/15 por sujeto (sin data leakage)
  • Normalización: z-score por canal
  • Canales: 4 (EEG Fpz-Cz, EEG Pz-Oz, EOG horizontal, EMG submental)

Interpretación de Resultados

¿Por qué el contexto multi-epoch mejora tanto?

  1. Transiciones entre etapas: Las reglas AASM consideran el contexto previo. Por ejemplo, REM después de NREM tiene patrones diferentes que REM aislado.

  2. Patrones de micro-arquitectura: Los ciclos de sueño (~90 min) tienen estructura predecible. El modelo puede aprender estas regularidades.

  3. Reducción de ambigüedad: Epochs ambiguos (N1↔W, N1↔N2) se desambiguan con contexto temporal.

  4. Robustez a artefactos: Artefactos transitorios afectan epochs individuales, pero el contexto ayuda a compensar.

Recomendaciones

Modelo Actual

  • Usar como modelo principal para análisis offline
  • Comparar por clase para identificar mejoras específicas

Mejoras Futuras

  1. Mecanismo de atención: Añadir atención temporal entre epochs

    • Potencial: +3-5% Kappa
    • Implementación: Attention layer después de BiLSTM
  2. Aumentar seq_length: Probar 15-21 epochs para capturar ciclos más largos

    • Trade-off: Mayor memoria, potencial overfitting
  3. Ensemble con CNN1D: Voting entre modelos single y multi-epoch

    • Potencial: +2-3% Kappa
  4. Optimización de hiperparámetros: Bayesian optimization para arquitectura

    • Feature dim, LSTM units, dropout

Conclusión

Aspecto Resultado
Entrenamiento Exitoso (291 epochs, early stopping, estable)
Rendimiento Excelente (Kappa 0.72), mejor modelo hasta ahora
Mejora vs single-epoch +6% en Kappa vs CNN1D, +10% vs LSTM con atención
Próximo paso Añadir atención temporal, optimizar hiperparámetros

Hallazgo principal: La arquitectura híbrida CNN-LSTM con contexto multi-epoch logra Kappa 0.72, acercándose al rendimiento humano (~96% del gold standard). La CNN extrae features locales por epoch, mientras la BiLSTM modela las transiciones temporales entre epochs.

Implicación práctica: Para sleep staging, siempre considerar arquitecturas que capturen contexto temporal. El overhead computacional se justifica con la mejora significativa en rendimiento.