Cómo se le enseña odontología a un modelo de IA, paso a paso

Cómo se le enseña odontología a un modelo de IA, paso a paso

Capítulo 4 de la serie Sprint DGX (desde el Capítulo 1). Cómo se inyecta conocimiento dental en un VLM general por etapas, y por qué al terminar todavía no tenemos «el modelo».

A un modelo de IA no se le enseña odontología de un tirón. Igual que no se forma a un dentista metiéndole un manual entero en la cabeza el primer día, especializar un modelo de visión general en clínica dental es un proceso por etapas: primero el vocabulario, luego la mirada, después las tareas reales. En este capítulo abrimos el capó del entrenamiento. Cuatro etapas secuenciales sobre Gemma 4 31B-IT, ejecutadas sobre un nodo de ocho H100 en poco más de medio día de cómputo, que llevan la precisión del modelo en el examen público MMOral-Bench de 43,58 % a 54,18 %: +10,6 puntos. Y por qué, aun así, lo que sale de la tercera etapa todavía no es «el modelo del sprint» sino el cimiento sobre el que se diseña todo lo demás.

Las cuatro etapas del entrenamiento del VLM dental: DKI (vocabulario), DCA (concepto-imagen), SFT (tareas clínicas) y RLT (refuerzo), que suben la precisión +10,6 puntos en MMOral-Bench.

Por qué cuatro etapas y no un solo fine-tuning

Hacer SFT directo de un VLM generalista con un corpus dental funciona, pero deja capacidad sobre la mesa. La arquitectura por etapas inyecta el dominio de forma progresiva, cada una construyendo sobre la anterior:

Etapa Qué aprende Modalidad Torre de visión
DKI, inyección de conocimiento Vocabulario clínico, terminología dental, conceptos SNOMED/ICD Solo texto Congelada
DCA, alineamiento concepto-imagen Asociar concepto y región (caries en este parche, restauración en aquel) Multimodal Congelada (alineador activo)
SFT, fine-tuning supervisado Tareas clínicas de principio a fin (Q&A, diagnóstico, plan) Multimodal Congelada
RLT, refuerzo (GRPO) Recompensa basada en reglas contra el grafo de conocimiento Multimodal Congelada

La decisión de no descongelar la torre de visión en ninguna etapa es deliberada: las panorámicas y periapicales dentales no son lo bastante distintas, distribucionalmente, de las imágenes naturales como para justificar reentrenar el encoder, y un encoder mal ajustado destruye más capacidad de la que añade. La adaptación al dominio va por el alineador y por el backbone del lenguaje (vía LoRA), no por la visión.

El stack es común a las tres etapas: ms-swift 4.1.0, transformers 5.5.3, peft 0.18.1, torch 2.11.0+cu130, sobre el contenedor nvcr.io/nvidia/pytorch:24.09-py3 (subido desde el 24.01 inicial por compatibilidad con H100).

Etapa 1: DKI

Objetivo: inyectar vocabulario clínico dental sobre Gemma 4 31B-IT. Solo texto; la visión y el alineador no se tocan.

Los hiperparámetros que importan:

Parámetro Valor
Precisión bfloat16, atención SDPA
Adaptación LoRA rank 8, alpha 16, dropout 0,05, sobre todas las capas lineales
Congelado torre de visión + alineador
Longitud de secuencia 4.096 tokens
Épocas 1
Batch 1 por GPU × 4 de acumulación de gradiente → efectivo 32 (8 GPU)
Learning rate 1·10⁻⁵, scheduler coseno, warmup 0,1
Paralelismo DeepSpeed ZeRO-2 + gradient checkpointing

No usamos packing porque requiere flash_attn, que no estaba disponible en este contenedor; el overhead del padding es asumible a este tamaño de batch.

El corpus de esta etapa son ~239.000 registros de texto clínico limpio, el mismo dataset depurado que ya había entrenado nuestro modelo de producción anterior (un LLaMA 3.1 8B con LoRA dental). Descartamos a propósito un corpus mayor (~588.000 registros) que incluía historiales clínicos: introducía variabilidad que degradaba el SFT posterior. Más datos no es mejor si el ruido domina: el criterio sobre qué entra al corpus pesa tanto como el volumen.

El entrenamiento converge limpiamente en menos de seis horas; el adapter resultante se fusiona a pesos completos para servir de base a la etapa siguiente.

Etapa 2: DCA

Objetivo: alinear conceptos visuales (lesión, restauración, prótesis, anatomía) con sus referentes en el texto. Multimodal, pero la visión sigue congelada: lo que se actualiza vía LoRA es el alineador, la capa que proyecta las features visuales al espacio del lenguaje.

El dato de esta etapa son 1.908 pares imagen-descripción verificados a mano, filtrados de un conjunto inicial de ~11.000 pares generados con Claude Sonnet sobre ~5.700 imágenes del corpus propio. El filtrado descartó las descripciones con baja correlación con el contenido visual: para alinear concepto e imagen, la calidad del par importa mucho más que la cantidad.

Es una etapa deliberadamente breve, cuestión de minutos, por lo pequeño del dato. Su función no es enseñar al modelo a hablar de imágenes, sino anclar el vocabulario clínico de la etapa 1 a representaciones visuales, para que el SFT siguiente parta de una base multimodal coherente.

Etapa 3: SFT

Objetivo: fine-tuning de tareas clínicas de principio a fin. Multimodal completo: el modelo recibe imagen + prompt clínico y devuelve respuesta.

La configuración es idéntica en estructura a las dos anteriores (mismo LoRA rank 8/alpha 16, mismo ZeRO-2, mismo learning rate coseno, misma longitud de 4.096), cambiando solo el dato: ~265.000 ejemplos que mezclan texto e imagen, todos clínicos.

Resultado, tras casi ocho horas de entrenamiento:

  • MMOral-Bench (closed, n=491): 54,18 %.
  • Delta sobre Gemma 4 base: +10,6 puntos (43,58 % → 54,18 %).

Los +10,6 puntos se miden sobre las mismas 491 preguntas cerradas del benchmark, con el mismo extractor de respuestas. Es un delta comparable de verdad, no una métrica movida.

Lo que todavía no está resuelto

La etapa 3 produce un checkpoint funcional y mejor que la base, pero no es «el modelo del sprint». Quedan tres cosas que los capítulos siguientes abordan:

  1. MMOral-Bench está dominado por panorámicas. En clínica llegan también periapicales e intraorales, y en otra proporción. Hace falta evaluar con probes específicos de cada modalidad (Cap 5).
  2. El corpus de esta etapa no incluye datasets externos especializados (DENTEX para panorámicas, Vident-real para intraorales). Incorporar datos externos no es automático: exige comprobar caso por caso que suman, en lugar de restar.
  3. La evaluación de respuestas abiertas todavía no se ha corrido. Antes de afirmar que +10,6 puntos en cerradas se traducen en mejora clínica real, hay que medirla.

Estado al cerrar esta fase

  • Pipeline de cuatro etapas operativo; las tres primeras completadas.
  • Cómputo total de las tres etapas: poco más de medio día sobre 8×H100 SXM.
  • MMOral-Bench (closed): 54,18 % (+10,6 puntos sobre la base).
  • Probes específicos y ablación, en cola para los días siguientes.

Próximo capítulo: probes propios panorámico (DENTEX, 50 preguntas) e intraoral (Vident-real, 75 preguntas), bilingües español/inglés, para medir si esos +10,6 puntos se sostienen cuando cambias el tipo de imagen y el idioma de la pregunta.

Compartir:
IA aplicada a problemas realesExplora nuestras soluciones
Cómo se le enseña odontología a un modelo de IA, paso a paso | Blog | Quantum Howl