CNN desde cero para predecir la pCR en DCE-MRI de mama (BreastDCEDL)

Pesos del modelo final de mi trabajo de Aprendizaje Automático: una CNN 2D entrenada desde cero en PyTorch, sin modelos preentrenados, que estima la probabilidad de respuesta patológica completa (pCR) a partir de un corte de resonancia DCE previo al tratamiento (fases PRE, EARLY y LATE). Su salida se combina con tres variables clínicas mediante una regresión logística (fusión tardía).

Uso exclusivamente educativo. No es un dispositivo médico. No sirve para diagnosticar ni para decidir tratamientos.

Ficheros

Fichero Contenido
modelo.pt state_dict de la CNN (98.049 parámetros, 392 KB)
modelo.json Arquitectura, preprocesado, umbral, hiperparámetros, SHA-256 de modelo.pt y métricas agregadas de validación
fusion.json Modelo combinado: variables, escalador (media y desviación de train), coeficientes, intercepto, umbrales y métricas de validación cruzada

SHA-256 de modelo.pt: e86a36a9b9e7b28a1aa5e30e3121d74a5b185eff88b824011ce9d4e6a7cd6e1a

Modelo

  • Entrada: 3 × 160 × 160. Las tres fases PNG de 256 × 256 (uint8) se apilan en el orden PRE, EARLY, LATE, se dividen entre 255 y se recorta una ventana de 160 × 160 centrada en la caja del tumor, sin reescalar. Sin normalización ImageNet. El preprocesado exacto está en preprocesado.py del repositorio.
  • Arquitectura: 4 bloques Conv 3×3 → BatchNorm → ReLU → MaxPool 2 (16, 32, 64 y 128 filtros), promedio global, Dropout 0,35 y Linear 128 → 1 (un logit).
  • Entrenamiento: BCEWithLogitsLoss sin pos_weight; AdamW, lr 1e-3 con bajada lineal a 0, weight decay 1e-2, lote 32, 12 épocas fijas (la última, sin elegir época), 3 cortes al azar por paciente y época, semilla 42. Fold 0 de una validación cruzada de 5 folds por paciente (878 pacientes de entrenamiento).
  • Fusión: regresión logística sobre el subtipo HR/HER2 (indicadores), log(1 + volumen tumoral), la edad y el logit de la CNN, ajustada con las probabilidades out-of-fold de los 5 folds y reajustada con todo train. Umbral: el de mayor sensibilidad con especificidad ≥ 0,85 en train (0,431 por paciente; 0,433 por corte).

Resultados

Test independiente de 176 pacientes (53 con pCR), evaluado una sola vez con el modelo congelado. AUC por paciente con IC95 por bootstrap:

Modelo Validación cruzada (train) Test
Solo cohorte (referencia) 0,523 0,543 (0,461–0,622)
Solo CNN 0,545 0,572 (0,477–0,661)
Clínico 0,686 0,674 (0,590–0,758)
Combinado 0,691 0,679 (0,596–0,760)

Con el umbral congelado, el combinado da en test: sensibilidad 0,283, especificidad 0,854, precisión 0,455 (15 VP, 38 FN, 18 FP, 105 VN). La imagen apenas añade información a las variables clínicas (combinado − clínico: +0,005, IC95 −0,021 a +0,029).

Limitaciones

  • Test de las mismas cohortes que el entrenamiento (I-SPY1, I-SPY2, Duke); sin validación externa.
  • El recorte necesita la caja del tumor. El modelo falla en Duke (AUC 0,515 con 9 pCR).
  • Un único corte 2D, una sola semilla. Resultado retrospectivo: no demuestra utilidad clínica.

Datos y licencia

Entrenado con BreastDCEDL (Fridman et al., Scientific Data, 2026, doi:10.1038/s41597-026-06589-6), construido a partir de I-SPY1, I-SPY2 y Duke (The Cancer Imaging Archive), bajo CC BY-NC 4.0. Por eso los pesos se publican con la misma licencia (CC BY-NC 4.0): uso no comercial y con atribución.

Autor: Álvaro González Fernández, 2026.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support