Digital resources in the Social Sciences and Humanities OpenEdition Our platforms OpenEdition Books OpenEdition Journals Hypotheses Calenda Libraries OpenEdition Freemium Follow us

Usando Transkribus con manuscritos medievales (7): entrenando un modelo CITLab HTR+ (parte 4)

En la entrada anterior expliqué los contenidos de la ventana de resumen del entrenamiento y la importancia de los valores de los CER de entrenamiento y de validación. En la primera versión del modelo, Lucid D 0.1, utilicé 3374 líneas de texto (o 50 páginas), logrando un CER de entrenamiento de 1.15% y un CER de validación de 2.97%.

Este es el paso final del entrenamiento en Transkribus. Ahora tenemos un modelo que puede ser utilizado para transcribir un manuscrito. Para hacerlo, hay que dar clic en Ejecutar (Run), en la opción Reconocimiento de texto (Text recognition) de la barra lateral.

Barra lateral, cliente experto de Transkribus

Inmediatamente se abrirá una nueva ventana donde podemos configurar la operación de reconocimiento de texto.

Pestaña de reconocimiento de texto, cliente experto de Transkribus

En esta ventana hay que elegir la página o el rango de páginas (Current page o Pages) a transcribir –en el caso de esta prueba, solo hice reconocimiento de cinco páginas–; luego hay que seleccionar qué tipo de simplificación de polígonos deseamos (Do polygon simplification o Keep original line polygons). Esta opción permite reducir la complejidad de los trazos de línea y, consecuentemente, el tamaño del archivo que se conserva en el servidor de Transkribus. Para manuscritos, lo mejor es desmarcar Realizar simplificación de polígonos (Do polygon simplification). También aquí podemos habilitar la búsqueda de palabras clave (Enable keyword spotting), si estamos utilizando un modelo que reconoce distintas áreas de texto en la transcripción (cabeceras, notas a pie).

Además, hay un recuadro para seleccionar modelos HTR utilizados recientemente y otro para buscar un modelo específico (Select HTR model). Una vez seleccionado el modelo, su nombre aparece en el cuadro en blanco entre los modelos recientes y buscar modelos. Luego damos clic a OK. Lo siguiente será una ventana de advertencia sobre el trabajo que se iniciará:

Ventana de advertencia, cliente experto de Transkribus

La ventana informa la cantidad de páginas del trabajo y el costo en créditos de Transkribus (a ver, que con los 500 créditos gratuitos por crear una cuenta se pueden hacer al menos tres manuscritos enteros). Si todo es correcto, damos nuevamente clic en Sí (Yes) y el trabajo comenzará. Mientras que la etapa anterior del trabajo, es decir, el entrenamiento de un modelo, puede tomar varias horas, la transcripción es un proceso casi instantáneo (en mi experiencia, alrededor de 15 a 20 segundos por página).

Una vez terminada la transcripción automatizada hay que revisar la exactitud del modelo que estamos utilizando por primera vez. Esta es una captura de las primeras líneas del fol. 115v de D, el primer folio transcrito utilizando el modelo Lucid D 0.1:

Reconocimiento del fol. 115v de D con modelo Lucid D 0.1

Fuera de algunas fallas, la transcripción es buena. El modelo ha sido capaz de aprender y emplear correctamente el sistema de transcripción semi-paleográfico del Hispanic Seminary of Medieval Studies. Estos son los errores de las primeras siete líneas:

Línea 1: «dore» por «dere-»
Línea 2: «see» por «ser»
Línea 3: «como» por «com<m>o», «en<n>l» por «en<e>l»
Línea 4: «ono» por «ouo»
Línea 7: «segn<n>do» por segu<n>do», «ena» por «eua»

Son errores bastante habituales en las transcripciones: confusión de n por u o viceversa, confusión de a y e por o o viceversa, confusión de r final por el signo tironiano y mal desarrollo de abreviaturas (omisión de una m marcada por lineta y desarrollo incorrecto de e marcada por lineta).

Esta tendencia me hizo sospechar que los errores no provenían del modelo sino que se originaban en mi transcripción inicial –que había sido revisada ya dos veces–. Tras una tercera, y esta vez muy concienzuda, revisión identifiqué y corregí varios errores en la transcripción base, todos relacionados con los errores que aparecieron en el primer ensayo con el modelo. Además, y para intentar reducir algo más el CER, transcribí otras 10 páginas que añadí a la transcripción base.

Lo siguiente fue emplear una característica muy útil en Transkribus: la posibilidad de re-entrenar un modelo de transcripción.

Ventana de entrenamiento de modelo, cliente experto de Transkribus

Para ello, hay que volver a la ventana de entrenamiento del modelo, elegir un nuevo nombre –esta vez, Lucid D 0.2–, seleccionar un número de épocas (100), el set de entrenamiento (62) y el set de validación (6). Lo único diferente es que antes de comenzar el entrenamiento hay que dar clic en Elegir (Choose) en la opción Modelo base (Base model) y seleccionar el modelo anterior. Con esto, le decimos a la máquina que utilice el aprendizaje de un modelo anterior para entrenar este nuevo. El resultado del nuevo entrenamiento fue el siguiente:

Modelo Lucid D 0.2

Al compararlo con el anterior:

Modelo Lucid D 0.1

Es clara la diferencia en la velocidad del descenso del CER en la curva de aprendizaje: mientras en Lucid D 0.1 el descenso hasta el 20% en el CER de validación tomó alrededor de cinco épocas, en Lucid D 0.2 se encuentra entre dos y tres épocas. De ahí en adelante, la tasa de error en el segundo modelo es inferior a 3%, algo que no se obtuvo en el primer modelo sino hasta la décima época.

Esto ocurre porque este nuevo modelo utiliza al anterior como punto de partida. El problema es que el modelo original había aprendido mal por mis errores en su transcripción inicial. Aunque el nuevo modelo utilizó una ampliada y corregida transcripción inicial, con la que logró descender un poco el CER, de 2.97% a 2.04%, los errores del primer modelo, ahora modelo base, siguen ahí. El nuevo modelo es el resultado de un nuevo entrenamiento, pero no olvida lo aprendido por el modelo anterior (es decir: 0.1 aprendió a leer mal, con 0.2 hubo un nuevo entrenamiento, pero se sumaron los errores de 0.1 a los aciertos de 0.2). El resultado: errores como los identificados arriba, pero con menor frecuencia.

Mi recomendación, por lo tanto, es no re-utilizar un modelo anterior en manuscritos (a menos que tanto la tasa de error como sus transcripciones sean completamente satisfactorias). Si vemos un error recurrente lo mejor es corregir la transcripción base y volver a entrenar el modelo desde cero.

En algunas semanas escribiré la próxima entrada de este tema –la última sobre HTR+–, donde trataré algunas cosas que quedaron en el tintero a lo largo de las pasadas siete: sorpresas, errores de usuario y problemas persistentes al entrenar modelos de transcripción de textos manuscritos en Transkribus.


Imagen de miniatura: D, fol. 126v, detalle de
transcripción usando Lucid 0.2


OpenEdition le sugiere que cite este post de la siguiente manera:
Cossío Olavide, Mario (1 de febrero de 2023). Usando Transkribus con manuscritos medievales (7): entrenando un modelo CITLab HTR+ (parte 4). Lucidarios. Recuperado 19 de abril de 2025 de https://doi.org/10.58079/r3ce


También te podría gustar...