Un estudio de Microsoft y la U. de Tsinghua muestra que un modelo de programación pequeño puede rendir al entrenarse solo con datos sintéticos.

El entrenamiento de modelos de programación enfrenta un límite cada vez más evidente: la escasez de datos de alta calidad. Un nuevo estudio desarrollado por investigadores de Microsoft y la Universidad de Tsinghua plantea una alternativa interesante: entrenar modelos exclusivamente con datos sintéticos puede no solo igualar, sino superar el rendimiento de modelos más grandes entrenados con datos reales.
El trabajo presenta a X-Coder, un modelo de 7 mil millones de parámetros que logra mejores resultados que competidores de 14 mil millones, utilizando únicamente tareas, soluciones y casos de prueba generados de forma sintética.
Datos sintéticos es información artificial creada por sistemas de IA mediante algoritmos de aprendizaje automático. Imitan características estadísticas de datos reales sin revelar información personal, utilizados para entrenar modelos, análisis y pruebas.
Los experimentos muestran una relación directa entre el número de tareas distintas y el desempeño del modelo:
Los resultados indican que, con el mismo presupuesto computacional, aumentar la variedad de tareas es más efectivo que generar múltiples soluciones para una misma tarea. Un conjunto con 64 mil tareas distintas y una sola solución supera a otros con menos tareas y más variantes de respuesta.
El análisis del estudio permite observar con mayor claridad cómo influye el tipo de datos en el desempeño del modelo:
Esta comparación refuerza una idea central del estudio: la variedad de problemas es el principal factor para mejorar la capacidad de generalización del modelo.
Para construir estos conjuntos de entrenamiento, los investigadores de Microsoft y la U. de Tsinghua desarrollaron un sistema llamado SynthSmith. A diferencia de enfoques anteriores que reescriben tareas existentes, este sistema genera problemas desde cero.
El funcionamiento de SynthSmith se puede seguir paso a paso en el esquema, comenzando por la Generación de tareas:
En la franja inferior del esquema se muestra cómo, a partir de cada tarea, se generan los elementos necesarios para la validación:
La última etapa, ubicada a la derecha del esquema, corresponde a la validación final:
El rendimiento de X-Coder se puede resumir de forma directa a partir de los resultados reportados en el estudio:
El estudio explica que el mejor rendimiento del modelo no se debe solo a la cantidad de datos, sino al tipo de problemas con los que fue entrenado.
Según los autores, las tareas creadas con SynthSmith están pensadas para ser más largas y más difíciles de resolver paso a paso, lo que obliga al modelo a razonar durante más tiempo antes de llegar a una respuesta.
Dicho de forma simple, estos problemas hacen que el modelo tenga que pensar más. En promedio, necesita recorrer un proceso de razonamiento mucho más extenso que el requerido por otros conjuntos de datos usados para entrenar modelos similares.
El estudio observa que esta mayor exigencia al momento de resolver los problemas coincide con mejores resultados en las pruebas, sin afirmar que sea el único factor involucrado.
Después del entrenamiento inicial, el modelo pasa por una segunda etapa de ajuste, que le permite mejorar su rendimiento en 4,6 puntos porcentuales. Para ese proceso, los investigadores indican que se utilizaron grandes recursos de cómputo, con una fase inicial más larga y otra final de una semana dedicada a afinar el desempeño.
En conjunto, los resultados del estudio muestran que el uso de datos sintéticos bien diseñados puede convertirse en una alternativa real para entrenar modelos de programación más eficientes, incluso con menos tamaño y sin depender de datos reales reutilizados.