Saltar al contenido
TutorialNivel intermedio2-3 horas· Revisado el 18 de octubre, 2026· Página 3 de 3

Clasificar: ¿Machado o Bécquer?

Páginas de este taller
En esta página

5. Antes de entrenar: cómo saber si un resultado es de fiar

Entrenamos una regresión logística, un clasificador lineal sencillo que deja ver qué palabras usa como pistas. Pero antes hay dos decisiones de método que cambian los resultados más que cualquier técnica.

La línea base. Con el mismo número de fragmentos de cada autor, responder al azar acierta el 50 %. Cualquier cifra hay que leerla frente a ese 50 %, no frente al 0 %.

Separar por poema.

¿Lo tienes?

Partes los fragmentos al azar: cuatro versos de un poema pueden caer en el entrenamiento y los cuatro siguientes en la prueba. ¿Qué le pasa a la exactitud?

Esa trampa se llama fuga de datos. Lo correcto es que cada poema entero quede o en el entrenamiento o en la prueba. Para no depender de una sola partición, usamos validación cruzada: repartimos los poemas en cinco grupos, entrenamos cinco veces dejando fuera un grupo distinto y promediamos.

from sklearn.model_selection import GroupKFold, cross_val_score
from sklearn.pipeline import make_pipeline
from sklearn.linear_model import LogisticRegression
from sklearn.feature_extraction.text import TfidfVectorizer

modelo = make_pipeline(TfidfVectorizer(token_pattern=r"(?u)\b\w+\b"),
                       LogisticRegression(max_iter=2000))
notas = cross_val_score(modelo, X, autores, cv=GroupKFold(5), groups=poema)
print(notas.mean(), notas.min(), notas.max())

groups=poema es la línea que evita la fuga: le dice a scikit-learn que los fragmentos de un mismo poema van siempre juntos. token_pattern hace que cuente también palabras de una letra, como y o á.

6. Un 89 % por la razón equivocada

Empezamos sin normalizar nada. El modelo acierta el 89 %, y sus mejores pistas son estas:

  • Bécquer: á, Que, De, Y, Del, Como, En, Las
  • Machado: bajo, Alvargonzález, tarde, mil, agua, era
¿Lo tienes?

El primer modelo acierta el 89 % y sus mejores pistas de Bécquer son «á», «Que» y «De». ¿Qué pasará con una rima de Bécquer copiada de una edición moderna?

El modelo no ha aprendido a Bécquer: ha aprendido la edición. Es un atajo, una regularidad del corpus que permite acertar sin resolver la tarea. (En Machado asoma otro: Alvargonzález, el protagonista de un poema largo. Una pista que solo sirve para ese poema.)

Un atajo se demuestra cambiando algo que no debería importar. El cuaderno moderniza los fragmentos de Bécquer de la prueba (sin tilde en a ni mayúscula a principio de verso, salvo tras punto) y se los da a los dos modelos:

Salida real

La prueba del atajo: modernizar la ortografía de Bécquer

Saeta que voladora / Cruza, arrojada al azar, / … → Saeta que voladora / cruza, arrojada al azar, / …

Sin normalizar, edición antigua94 %
Sin normalizar, ortografía moderna27 %
Normalizado, edición antigua91 %
Normalizado, ortografía moderna91 %

Porcentaje de fragmentos de Bécquer de la prueba (74) que cada modelo atribuye a Bécquer.

La idea: Cambia algo que no debería importar y mira si la predicción cambia. Si cambia, el modelo había aprendido un atajo.

7. Comparar técnicas sin el atajo

Con el texto normalizado, comparamos las representaciones de la segunda parte:

Salida real

¿Machado o Bécquer? Exactitud evaluando por poemas

Al azar (línea base)50 %
Bolsa de palabras sin normalizar89 % (87-91)
Bolsa de palabras normalizada74 % (70-80)
TF-IDF normalizado73 % (70-82)
TF-IDF sin palabras vacías74 % (65-79)
TF-IDF de n-gramas de caracteres78 % (71-88)
Embeddings de spaCy (media)75 % (70-79)
Solo palabras vacías63 % (56-70)

Fragmentos de 4 versos, 339 por autor. Media de cinco rondas de validación cruzada; entre paréntesis, la peor y la mejor ronda.

La idea: Sin el atajo, casi todas las técnicas quedan entre el 73 % y el 78 %, y sus márgenes se solapan: con este corpus, la elección de técnica importa menos que normalizar bien y evaluar bien.

Tres lecturas:

  • Las diferencias son pequeñas y los márgenes se solapan. La bolsa de palabras, TF-IDF y los embeddings quedan casi empatados. Los n-gramas de caracteres (trozos de dos a cuatro letras) van un poco por delante: captan terminaciones verbales y palabras cortas a la vez.
  • Quitar las palabras vacías no ayuda.
  • Los embeddings no ganan, y se pierde algo valioso: ya no hay pistas que leer, porque sus 300 dimensiones no corresponden a palabras. Al promediar los vectores de un fragmento, además, se diluyen las palabras concretas que distinguen a los autores. La técnica más reciente no es siempre la mejor para una tarea concreta.

8. Tema o estilo

Mira la última fila de la demostración anterior: un modelo que solo ve palabras vacías, justo las que se suelen quitar, acierta el 63 %. Sin una sola palabra de contenido, supera con claridad el azar.

Es la idea central de la estilometría: las palabras gramaticales (pronombres, artículos, preposiciones, formas de ser y estar) se usan de forma poco consciente, no dependen del tema y delatan al autor aunque este cambie de asunto. Así atribuyeron Mosteller y Wallace los Federalist Papers en los años sesenta, y en eso se apoya la medida Delta de Burrows, que compara las frecuencias de las palabras más comunes de un texto, casi todas gramaticales.

Salida real

Tema y estilo: las pistas de cada modelo

TF-IDF sin palabras vacías (tema)

Bécquer: sé, allí, ojos, luz, beso, palabras, oscuro, dolor, pupila

Machado: rosas, montes, campo, oh, tierra, hacia, España, agua, bajo, tarde

Solo palabras vacías (estilo)

Bécquer: me, yo, que, qué, lo, al, cuando, soy, mía

Machado: esta, los, eran, este, quien, hay, ha, una, era, está

La idea: Las palabras de contenido dicen de qué escribe cada uno. Las gramaticales, cómo: Bécquer habla en primera persona y en presente; Machado describe y narra en imperfecto.

Las dos listas cuentan cosas distintas y complementarias. Las de contenido dicen de qué escribe cada uno: la amada, los ojos, el dolor; el campo, la tierra, España. Las gramaticales dicen cómo: me, yo, soy, mía frente a era, eran, está, hay. Bécquer habla en primera persona y en presente; Machado describe y narra en imperfecto. Es una caracterización que reconocería cualquier profesor de literatura, y ha salido de contar palabras.

9. Cuánto texto hace falta

Salida real

Cuánto texto hace falta

Al azar (línea base)50 %
2 versos71 % (68-74)
4 versos73 % (70-82)
8 versos84 % (77-92)

La idea: Cuanto más largo el fragmento, más pistas. Con dos versos, casi uno de cada tres fragmentos sale mal atribuido.

Por eso la atribución de autoría seria trabaja con textos largos, y por eso conviene desconfiar de quien atribuye un mensaje corto a alguien «por su estilo».

10. Por qué decide lo que decide

En una regresión logística, cada palabra empuja hacia un autor con un peso. El cuaderno incluye una función, quien_lo_escribio, que da la probabilidad y las palabras que más han pesado:

quien_lo_escribio("""Yo voy soñando caminos
de la tarde. ¡Las colinas
doradas, los verdes pinos,
las polvorientas encinas!""")
Bécquer 42% · Machado 58%
  empujan hacia Bécquer: yo, las, verdes, voy
  empujan hacia Machado: tarde, caminos, de, los, la

Acierta, pero por poco: el yo tira hacia Bécquer y la tarde y los caminos hacia Machado. Prueba con tus propios versos. Ten en cuenta que el modelo siempre responderá Machado o Bécquer, porque no conoce otra opción: es un conjunto cerrado. Un poema de Rosalía de Castro saldrá atribuido a uno de los dos con toda tranquilidad. Una probabilidad cercana al 50 % es la única señal de que no se parece claramente a ninguno.

11. Leer los errores

Con una partición por poemas, el modelo TF-IDF falla 43 de 168 fragmentos. Los cuatro poemas con más errores son de Machado, y tienen algo en común. Este es uno de ellos:

Hay en mis venas gotas de sangre jacobina,
pero mi verso brota de manantial sereno;
y, más que un hombre al uso que sabe su doctrina,
soy, en el buen sentido de la palabra, bueno.

Es el «Retrato», en primera persona. El poema con más errores es otro monólogo, «Heme aquí ya profesor», y entre los fallos aparecen también un poema de amor («Arde en tus ojos un misterio, virgen») y un diálogo («¡Mi hora!—grité—»). Cuando Machado dice yo y habla de amor, el modelo oye a Bécquer. El error tiene una explicación literaria, y esa explicación dice qué le falta al modelo: con cuatro versos no puede saber de qué libro ni de qué época vienen.

Para seguir

Referencias

Dónde encaja en el recorrido