Generalización a código real (Dublin)
Saqué el sistema de su zona cómoda. Cuando dejé atrás los casos sintéticos y lo enfrenté a código real de estudiantes, el orden de los sistemas se dio la vuelta. Es uno de los resultados que más me ha enseñado del trabajo.
1El banco Dublin DCU CS1
Hasta aquí había evaluado con esqueletos sintéticos, código que yo mismo generaba a partir de
plantillas. Para probar si lo aprendido sirve de verdad, monté una prueba fuera de distribución
sobre código real de estudiantes. Usé el conjunto público koutch/intro_prog, en concreto su
subconjunto Dublin DCU CS1, con la corrección del propio educador como verdad de referencia.
La métrica objetiva que elegí la llamo relevancia al arreglo. Mide qué fracción de los
tokens del arreglo real (el diff del educador, de código con fallo a código corregido) aparece citada en
la retroalimentación que da cada sistema. No ejecuté nada del código de los alumnos; me limité a
ast.parse más el diff, por seguridad.
2La inversión del orden
En el banco sintético el orden era D ≥ {B, C} > A; el híbrido y el afinado mandaban. Con código real ocurre justo lo contrario. El base A y el GraphRAG C citan mucho más del arreglo real que el afinado B y el híbrido D.
| Métrica | A (base) | B (QLoRA) | C (GraphRAG) | D (híbrido) |
|---|---|---|---|---|
| Relevancia al arreglo (objetiva) | 0,802 | 0,433 | 0,733 | 0,323 |
| Divulgativa (juez, 1–5) | 3,72 | 3,18 | 3,45 | 3,17 |
| Técnica (juez, 1–5) | 3,03 | 2,40 | 2,68 | 2,47 |
| Sugerencia (juez, 1–5) | 1,97 | 2,80 | 2,62 | 2,92 |
Nota. La relevancia al arreglo premia mencionar los tokens literales del arreglo. B y D fueron entrenados para dar retroalimentación conceptual en español (tipo de error, concepto, explicación), que por diseño no replica los nombres de variable del alumno, mientras que A y C tienden a citar o repetir el código. Parte del hueco refleja estilo de retroalimentación, no solo corrección. De hecho el juez puntúa la sugerencia de D por encima de A.
3La diferencia es real, no ruido
El benchmark Dublin se reportaba al principio como medias sin test formal. Lo cerré con la misma maquinaria estadística que el resto del trabajo (Friedman más Kendall's W, post-hoc con corrección y IC por bootstrap, semilla 11), recalculando las cifras desde la retroalimentación en disco. La inversión del orden ahora es estadísticamente significativa.
| Contraste | Δ media | Wilcoxon p (Holm) | IC95 % bootstrap | Nemenyi |
|---|---|---|---|---|
| A vs D | +0,479 | <0,0001 | [+0,363, +0,590] | sig. |
| C vs D | +0,409 | <0,0001 | [+0,287, +0,528] | sig. |
| A vs B | +0,369 | <0,0001 | [+0,251, +0,488] | sig. |
| B vs C | −0,299 | 0,0022 | [−0,437, −0,160] | sig. (C>B) |
| A vs C | +0,069 | 0,165 (n.s.) | [−0,039, +0,179] | n.s. |
| B vs D | +0,110 | 0,042 | [+0,017, +0,208] | n.s. (marginal) |
El contraste B vs D queda marginal. Wilcoxon con Holm lo da significativo (p=0,042) pero el más conservador Nemenyi no (ΔR=0,24 < CD=0,606). Anoto la discrepancia en lugar de quedarme con el resultado que me conviene. El resto de conclusiones se sostiene al deduplicar a los 54 casos únicos sin pseudo-réplica (Friedman p=7,6×10⁻¹⁴).
4Qué leo de esto
Esto es evidencia directa del sobreajuste a las plantillas sintéticas que ya advertía el informe. El afinado y el híbrido brillaban dentro de distribución porque habían aprendido la forma de mis 35 plantillas, no el razonamiento de fondo. Lo medí sin recurrir a impresiones.
El coseno medio intra-esqueleto es 0,962 frente al global 0,604. Las 1396 respuestas "únicas" difieren casi solo en nombres de variable dentro de cada una de las 35 plantillas. El modelo afinó la plantilla, no el razonamiento. Por eso, cuando llega código real con otra forma, lo aprendido no aflora el arreglo.
Mi conclusión defendible es sencilla. La augmentación (grafo, afinado o ambos) ayuda en distribución y mejora de forma significativa frente al LLM base; pero fuera de ella, sobre errores reales, esas ventajas no transfieren en relevancia al arreglo. Es una limitación medida, no escondida, que motiva el trabajo futuro: entrenar con datos reales o destilar retroalimentación más diversa.
Lo afinado funciona donde lo entrené y se desinfla donde no. Medirlo es parte del resultado.
5Ver también
Resultados en distribución
El banco sintético held-out (n=50) donde el híbrido D gana o empata en las siete dimensiones, con su significación estadística.
Análisis estadístico
Friedman, Wilcoxon con Holm, Kendall's W e intervalos por bootstrap; la maquinaria inferencial que también aplico aquí.
Validación del juez
Por qué el veredicto se ancla en métricas objetivas inmunes al juez y no en sus dimensiones cualitativas.
Si este trabajo te resulta útil y quieres referenciarlo, esta es la cita recomendada.
Bueno Junquero, A. (2026). Integración de un grafo de conocimiento educativo con un LLM mediante RAG. Trabajo Fin de Máster, Máster Universitario en Investigación en Inteligencia Artificial, UNED. Director, José Luis Fernández Vindel.