· 3 min de lectura · Gaia Lab

Segmentación dental y 100 semillas: cuánto cambia un modelo por pura suerte

Segmentar estructuras en imágenes dentales con redes convolucionales y transformadores, comparar seis familias de modelos contra un baseline clásico y, antes de declarar un ganador, entrenar los dos finalistas cien veces para medir la varianza entre ejecuciones.

Tres siluetas de dientes en trazo gris con una región interior coloreada, dos en teal y una en rojo, como máscaras de segmentación
Ilustración generada para la serie: máscaras sobre tres piezas.

Séptima entrega de Radiografía del clúster. Tras los bosques , la línea más austera del archivo: veinte horas de GPU en cuatro meses y una pregunta metodológica que muchos trabajos publican sin responder.

La pregunta #

Segmentar automáticamente estructuras en imágenes dentales, separar píxel a píxel la región de interés del fondo, es la base de cualquier medida o diagnóstico asistido posterior. La literatura compara arquitecturas con una sola ejecución por modelo, y las diferencias entre ellas son a menudo del orden de un punto. La línea pregunta dos cosas: qué arquitectura segmenta mejor este tipo de imagen, y cuánto de la diferencia entre dos modelos es real y cuánto es la lotería de la inicialización.

Cómo se aborda #

El conjunto es propio: imágenes y máscaras binarias de entrenamiento y prueba. El método evoluciona en cuatro pasos que se leen en los scripts:

  1. Una UNet con codificador preentrenado y pérdida focal Tversky, una función diseñada para problemas donde la región a segmentar es pequeña y los falsos negativos pesan más que los falsos positivos. Aumento de datos explícito: volteos, rotaciones, brillo, ruido y desenfoque.
  2. Un barrido a mano de la pérdida. Doce entrenamientos moviendo los parámetros de Tversky para cargar cada vez más la penalización sobre los falsos negativos, hasta encontrar el punto de equilibrio.
  3. Una comparativa de seis familias: UNet simple, UNet++ con ResNet50, DeepLabV3+ con ResNet34 y ResNet50, SegFormer (un transformador) y, como baseline clásico, un Random Forest por píxel. Cada modelo con su búsqueda de hiperparámetros de ocho configuraciones.
  4. El estudio de varianza. Los dos finalistas, UNet++ y DeepLabV3+, se entrenan cien veces cada uno con semillas controladas (1.000 más el índice), doscientas épocas y parada temprana, volcando todo a una única tabla.

Qué se aprende #

El paso cuatro es lo que distingue esta línea. Cien ejecuciones por modelo dan una distribución, no un número: permiten decir si la diferencia entre UNet++ y DeepLabV3+ supera la dispersión que produce cambiar solo la semilla. Cada entrenamiento dura unos seis minutos en una H100, así que la pregunta completa costó diez horas de GPU. Es un coste pequeño para una respuesta que convierte “el modelo A es mejor” en “el modelo A es mejor con esta probabilidad”.

Del barrido de Tversky, sin comentarios en los scripts, el porqué se lee en los diffs: cada versión sube el peso de los falsos negativos, señal de que el error que más preocupa es dejar sin segmentar parte de la estructura, no marcar de más.

En el clúster #

221trabajos21 hhoras de GPU reservadas259 hhoras de CPU reservadas20 may – 14 sepperiodo (2026)
Cifras de la línea. Cada trabajo dura minutos.
Trabajos por tipoComparativa de modelosComparativa de modelos: 104 · 47 %104 · 47 %Array de 100 semillasArray de 100 semillas: 100 · 45 %100 · 45 %ResNet y barrido TverskyResNet y barrido Tversky: 12 · 5 %12 · 5 %UNet inicialUNet inicial: 5 · 2 %5 · 2 %
Trabajos por tipo: el array de cien semillas es casi la mitad de la línea.

En la octava entrega , un modelo de lenguaje que tiene que caber en un teléfono de 4 GB.


Cifras de la contabilidad de Slurm (capacidad reservada, no uso medido) y de los sbatch archivados. Entrada anonimizada: sin usuarios, rutas, correos ni nombres de proyecto identificables. Las citas son de los comentarios de los scripts.