Digitalización y Clasificación Automática de documentos:
Desde los sistemas clásicos de digitalización de documentos se ha evolucionado a los sistemas actuales que permiten, por ejemplo, procesar 100.000 páginas diarias, agruparlas en documentos, clasificar esos documentos y extraer metadatos de los mismos, todo ello de forma automática, sobre documentos sin estructura fija e incluso con caracteres manuscritos.
Vamos a repasar su funcionamiento en líneas generales.
Un poco de historia:
Los sistemas clásicos de digitalización de documentos en general constaban de un ordenador aislado, un escáner, una pantalla grande (o dos) y un formulario en pantalla para introducir datos. El usuario debía introducir el documento, digitalizar, teclear los campos correspondientes y guardar, tras lo cual el documento y la ficha recogida se enviaban a otros sistemas.
Poco a poco se introdujeron funciones de OCR (Reconocimiento Óptico de Caracteres) para convertir la imagen de la página a un documento de texto. El OCR se complementó con OMR (Reconocimiento Óptico de Marcas, aplicado a cuestionarios con casillas) y con ICR (Reconocimiento Inteligente de Caracteres, es decir caracteres manuscritos), lo que permite ampliar las posibilidades de reconocer los distintos elementos de la página. Esto en lo que a conversión de imagen a texto se refiere.
Por otra parte del tratamiento de la página completa se evolucionó a la posibilidad de extraer zonas concretas de texto, lo que permitía extraer información de formularios con una estructura fija. Pero esto requería conocer qué tipo de formulario se manejaba. Esto se complementó con funciones básicas para clasificar automáticamente el documento, por medio de búsqueda de imágenes o logotipos, palabras concretas en zonas concretas (Ej. “Contrato”), lo que permitía identificar el documento digitalizado y en función de ello conocer qué metadatos extraer y de qué zonas.
Sin embargo, quedaban problemas importantes por resolver para conseguir la automatización completa:
- ¿Cómo clasificar un documento cuando no tiene una estructura fija? (Ej. Hipotecas, Poderes. Cartas de reclamación,..)
- ¿Cómo extraer metadatos de un documento cuando no tiene una estructura fija?
- ¿Cómo separar automáticamente las páginas de cada documento? (evitando la manipulación y el uso de alternativas como digitalizar cada documento separado, introducir códigos de barras o páginas en blanco entre cada documento, …)
Esto se ha conseguido también de forma que ahora se dispone de diversos productos de distintos fabricantes que, tras un adecuado entrenamiento, pueden realizar todas las operaciones anteriores.
Proyectos de Clasificación Automática con herramientas avanzadas:
Una vez se dispone de una herramienta de este tipo en una institución, ¿Cómo se utilizan? ¿Qué pasos deben seguirse para disponer de un sistema automático?.
La forma de entrenar y las posibilidades varían mucho entre los distintos productos, pero en grandes líneas podríamos hablar de 4 fases:
- Análisis de la documentación y el proceso.
- Entrenamiento.
- Pruebas.
- Puesta en producción.
Análisis de la documentación y el proceso.
Este es el punto más importante. Debe realizarse un análisis de los tipos de documento y crearse conjuntos de los mismos para entrenar al sistema y para realizar pruebas. Así por ejemplo, para una expediente de hipoteca, podría crearse grupos de documentos de “Escrituras”, “Nóminas”, “Dni”, “Formulario banco”, “Registro de la Propiedad”, …
No es necesario que los documentos ejemplo elegidos sean iguales, lo importante es que sea el mismo tipo documental. Incluso dependiendo del producto a utilizar y de los algoritmos de clasificación elegidos, puede ser interesante que los documentos sean diferentes para que el sistema “conozca” más variantes y pueda extraer los elementos comunes a los diversos tipos.
En ocasiones el tratamiento automático puede complementarse con reglas “manuales” como ”si en la parte superior aparece ‘IVA’ y en la esquina superior derecho ‘300’, es un tipo documental “Declaración Trimestral IVA”.
En ocasiones, para optimizar el tratamiento y mejorar la automatización, puede ser conveniente definir varios grupos similares. Por ejemplo, si en un caso se recibiera un gran número de nóminas de una empresa y organismo X, podría definirse el tipo “Nominas X”, solo con ejemplos de nóminas de X, y el tipo “Otras nóminas” con ejemplos de todos los tipos. Esto podría aumentar el número de documentos de cada tipo clasificados automáticamente y evitar errores de clasificación.
Las definiciones deben estar orientadas a mejorar la automatización. Cuando se envíen al gestor documental o al destino elegido podrá cambiarse si se desea el tipo documental utilizado y asignar el ”auténtico”. Así en el ejemplo anterior, ambos tipos de nóminas se almacenarían como “Nóminas” en el gestor documental.
Para cada tipo documental debe definirse qué información desea extraerse y cómo localizarla. Puede ser tan sencillo como leer el contenido de un recuadro o ser necesario reglas más complejas (“debe buscarse en la primera página un código compuesto de 4 letras + “-“ + 5 números”, “debe buscarse en cualquier página del documento el texto ‘como representante legal de’ y leer el nif escrito a continuación”).
Adicionalmente, se definirán las reglas para el conjunto de cada paquete de documentos (“forman un expediente completo con datos comunes”, “debe incluir un formulario inicial”, “Debe contener al menos un documento de tipo A y uno de tipo B”, “cada documento es independiente del resto”, …).
Entrenamiento y parametrización del producto.
Una vez definidos todos los criterios desde un punto de vista documental (los tipos documentales, los ejemplos a utilizar, relaciones entre ellos, los elementos a extraer, …) deberá entrenarse el sistema de acuerdo a las posibilidades del mismo.
Los sistemas más avanzados permiten entrenar por medio de ejemplos, de forma que puede definirse un tipo documental, suministrarle 40 o 50 imágenes multi-página de documentos de ese tipo y el sistema “aprende” y crea sus propias reglas. Esas dependen no solo del contenido y la apariencia de cada tipo documental sino además de la comparación con el resto de los documentos del proyecto. Así, si dos tipos documentales incluyen documentos con textos y apariencia muy similar, las reglas generadas para discriminarlos pueden ser más complejas que si los tipos son muy diferentes.
La extracción de los metadatos, salvo en los casos de formularios con estructura fija, en que bastaría indicar elementos como la zona y el tipo de texto esperado, requerirá más trabajo, ya que deben formalizarse y traducirse los criterios “humanos” antes recogidos (ej: “debe buscarse en cualquier página del documento el texto ‘como representante legal de’ y leer el nif escrito a continuación”) a expresiones o funciones que admita el sistema utilizado (ej: Se utilizará un localizador/ancla de texto, a continuación se utilizará una expresión regular con el formato …)
Pruebas y ajustes.
Tras el entrenamiento y parametrización inicial llegará el momento de realizar pruebas introduciendo al sistema expedientes reales, con documentos de diverso tipo sin separar y utilizando siempre ejemplares no utilizados para el entrenamiento (ya que el sistema se los ha “aprendido” y los resultados no serían representativos).
Estas pruebas mostrarán si el entrenamiento ha sido adecuado y sacarán a la luz posibles carencias, formatos que tienden a confundirse, etc. lo que obligará a iniciar un ciclo iterativo para ajustar el sistema hasta conseguir el grado de automatismo adecuado con un mínimo número de errores o documentos mal clasificados.
Las expectativas y umbrales admitidos dependen lógicamente del tipo de documento, proceso, entidad, etc. Evidentemente el riesgo e impacto de clasificar mal un libro de familia, un cheque o un informe médico son muy diferentes y además dependen del proceso que los espere y los controles y plazos del mismo.
Se dispondrá adicionalmentede la posibilidad de ajustar los umbrales de confianza requeridos para cada operación, de forma que podrá indicarse por ejemplo: “Para decidir que este documento es un ‘ Análisis Clínico’ debe tener una confianza en el resultado del 95%, en otro caso, debe remitirse a un usuario para su revisión en pantalla”.
Con unos ajustes adecuados (y dependiendo desde luego del tipo de documentos, calidad de imagen, etc.) puede conseguirse automatizar las clasificación y la extracción de metadatos de un 80% o 90% de los documentos.
Puesta en producción.
Por último, deberá desplegarse el sistema en la infraestructura y organizarse el equipo de trabajo.
En el caso más general, el proceso suele estructurarse en 4 etapas:
- Digitalización (que podría ser en un centro especializado con escáneres de alto rendimiento o de forma distribuida por los propios usuarios)
- Clasificación y separación automática, durante el cual el sistema analiza el lote de páginas recibidas y procede a la agrupación de las páginas y clasificación en documentos.
- Clasificación y separación manual, que se producirá para los lotes en los cuales no se ha podido clasificar algún documento (o se ha clasificado pero sin la confianza requerida)
- Extracción automática de metadatos, durante la cual el sistema extraerá los metadatos definidos (y aplicará las reglas especificadas, como por ejemplo comprobar la letra de un DNI).
- Extracción manual, en la que se presentará al usuario los elementos dudosos para su corrección.
Podrá estructurarse diversos equipos de profesionales especializados en los diversos tipos de documentos o expedientes, de forma que cada uno solo reciba los documentos asignados. Igualmente podrá estructurarse las funciones, de forma que por ejemplo usuarios más especializados sean los encargados de corregir las dudas de clasificación, mientras que otro grupo de usuarios sean los encargados de corregir o introducir los metadatos.
Hay muchos fabricantes con tecnologías y rendimientos muy diferentes y como es habitual, lo más recomendable es evaluar los productos concretos con los documentos y procesos propios, ya que las ventajas de automatismo de un producto pueden verse compensadas con la mejor usabilidad o precio de otro.
Incluyo una lista de los principales :
- KTM de Kofax
- Captiva de Emc2
- FlexiCapture de Abbyy
- Document Reader de A2ia
- Datacap de IBM
- Atril de Ipsa
- Capture de Perceptive
- Parascript
- eFlow de TIS
- Athento de Yerbabuena
Algunos de los cuales tiene versiones de evaluación o limitadas que pueden permitir acercarse a este ámbito.
Espero que esta pequeña introducción sirva para despertar interés sobre este sector, que tiene muchas aplicaciones.