[ad_1]
El procesamiento inteligente de documentos (IDP) ha encontrado una amplia aceptación en las organizaciones comerciales y gubernamentales. Gartner estima que el mercado de desplazados internos crecerá más del 100 % año tras año y se espera que alcance los 4800 millones de dólares en 2022.
IDP ayuda a transformar datos estructurados, semiestructurados y no estructurados de una variedad de formatos de documentos en información procesable. El procesamiento de datos no estructurados se ha vuelto mucho más fácil con los avances en el reconocimiento óptico de caracteres (OCR), el aprendizaje automático (ML) y el procesamiento del lenguaje natural (NLP).
Las técnicas IDP han crecido enormemente, permitiéndonos extraer, clasificar, identificar y procesar datos no estructurados. Con servicios impulsados por IA/ML como Amazon Textract, Amazon Transcribe y Amazon Comprehend, crear una solución IDP se ha vuelto mucho más fácil y no requiere habilidades especiales de IA/ML.
En esta publicación, mostramos cómo puede usar Amazon Textract para extraer datos significativos y procesables de una variedad de archivos PDF complejos en múltiples formatos. Los archivos PDF son desafiantes; Pueden contener una variedad de elementos de datos, como encabezados, pies de página, tablas con datos en varias columnas, imágenes, gráficos y oraciones y párrafos en varios formatos. Examinamos la fase de extracción de datos de IDP y cómo se vincula con los pasos de un proceso de documentos, como la ingesta, la extracción y el posprocesamiento.
descripción general de la solución
Amazon Texttract ofrece diferentes opciones de extracción de datos según su caso de uso. Puede usar formularios, hojas de cálculo, extracciones basadas en consultas, reconocimiento de escritura a mano, facturas y recibos, documentos de identidad y más. Todos los datos extraídos se devuelven con coordenadas de cuadro delimitador. Esta solución utiliza construcciones de CDK de IDP de Amazon Textract para crear el flujo de trabajo de procesamiento de documentos que maneja la invocación asíncrona de Amazon Textract, la extracción de respuestas sin formato y la persistencia en Amazon Simple Storage Service (Amazon S3). Esta solución agrega un componente de procesamiento posterior de Amazon Textract al flujo de trabajo base para manejar la extracción de texto basada en párrafos.
El siguiente diagrama muestra el flujo de procesamiento de documentos.
El flujo de procesamiento de documentos incluye los siguientes pasos:
- El flujo de extracción de documentos se inicia cuando un usuario carga un documento PDF en Amazon S3.
- Un evento de notificación de objeto de S3 generado por el nuevo objeto de S3 con un
uploads/
Prefijo que activa el flujo de trabajo asíncrono de AWS Step Functions. - La función AWS Lambda
SimpleAsyncWorkflow
El decisor valida el documento PDF. Este paso evita el procesamiento de documentos no válidos. - TextractAsync es una construcción IDP-CDK que abstrae la invocación de Amazon Textract
Async
API, maneja los mensajes de Amazon Simple Notification Service (Amazon SNS) y el procesamiento de flujos de trabajo. A continuación se presentan algunos pasos generales:- La construcción llama a la API asíncrona StartDocumentTextDetection de Amazon Texttract.
- Amazon Texttract procesa el archivo PDF y publica un evento de estado de finalización en un tema de Amazon SNS.
- Amazon Textract almacena los resultados paginados en Amazon S3.
- Construct maneja el evento de finalización de Amazon Textract y devuelve el prefijo de salida de los resultados paginados al flujo de trabajo principal.
- La función Lambda del posprocesador de Textract utiliza el contenido extraído en el depósito de resultados de Amazon S3 para recuperar los datos del documento. Esta función itera a través de todos los archivos y extrae datos utilizando cuadros delimitadores y otros metadatos. Realiza varias optimizaciones de procesamiento posterior para agregar datos de párrafos, identificar e ignorar encabezados y pies de página, combinar oraciones distribuidas en páginas, procesar datos en varias columnas y más.
- La función Textract Postprocessor Lambda almacena los datos de ventas agregados como un archivo CSV en Amazon S3.
Implemente la solución con AWS CDK
Para implementar la solución, inicie el kit de desarrollo de la nube de AWS (AWS CDK) con AWS Cloud9 o desde su sistema local. Si realiza el lanzamiento desde su sistema local, debe instalar AWS CDK y Docker. Siga las instrucciones en el repositorio de GitHub para la implementación.
La pila crea los componentes clave que se muestran en el diagrama de arquitectura.
Probar la solución
El repositorio de GitHub contiene los siguientes archivos de ejemplo:
- Ejemplo_Cambio Climático.pdf – Contiene encabezados, pies de página y oraciones que fluyen a lo largo de las páginas
- ejemplo_multi-columna.pdf – Contiene datos en dos columnas, encabezados, pies de página y conjuntos que fluyen a través de las páginas
Siga estos pasos para probar la solución:
- Cargue los archivos PDF de muestra en el depósito de S3 creado por la pila: la carga del archivo activa el flujo de trabajo de Step Functions a través de la notificación de eventos de S3.
- Abra la consola de Step Functions para ver el estado del flujo de trabajo. Debe encontrar una instancia de flujo de trabajo por documento.
- Espere a que se completen los tres pasos.
- En la consola de Amazon S3, navegue hasta el prefijo S3 mencionado en la ruta JSON
TextractTempOutputJsonPath
. La siguiente captura de pantalla de la consola de Amazon S3 muestra los resultados paginados de Amazon Textract (en este caso, los objetos 1 y 2) creados por Amazon Textract. La tarea de posprocesamiento guarda los párrafos extraídos del PDF de muestra comoextracted-text.csv.
- Descargar el
extracted-text.csv
Archivo para ver el contenido extraído.
Que sample_climate_change.pdf
El archivo tiene oraciones que fluyen a través de las páginas como se muestra a continuación.
El posprocesador identifica e ignora el encabezado y el pie de página y combina el texto en un párrafo en todas las páginas. El texto extraído para el párrafo combinado debería verse así:
“Los impactos de esta magnitud podrían extenderse más allá de las fronteras nacionales y agravar aún más el daño. El aumento del nivel del mar y otros cambios relacionados con el clima podrían impulsar a millones de personas a migrar: más de una quinta parte de Bangladesh podría quedar bajo el agua si el nivel del mar aumenta 1 m, lo que es posible para fines de siglo. Los impactos relacionados con el clima han provocado conflictos violentos en el pasado, y el conflicto es un riesgo grave en áreas como África occidental, la cuenca del Nilo y Asia central”.
Que sample_multi_column.pdf
El archivo tiene dos columnas de texto con encabezado y pie de página como se muestra a continuación.
El posprocesador identifica e ignora el encabezado y el pie de página, procesa el texto de las columnas de izquierda a derecha y combina oraciones incompletas en las páginas. El texto extraído debe formar párrafos a partir del texto de la columna izquierda y separar los párrafos del texto de la columna derecha. La última línea de la columna de la derecha está incompleta en esta página y continúa en la columna de la izquierda de la página siguiente; el postprocesador debe combinarlos como un solo párrafo.
Costos
Con Amazon Textract, paga a medida que lo usa, según la cantidad de páginas del documento. Para conocer los costos reales, consulte Precios de Amazon Textract.
Limpiar
Cuando haya terminado de experimentar con esta solución, limpie sus recursos mediante la consola de AWS CloudFormation para eliminar todos los recursos proporcionados en este ejemplo. Esto le ayudará a evitar gastos de funcionamiento en su cuenta.
Conclusión
Puede usar la solución presentada en esta publicación para crear un flujo de trabajo de extracción de documentos eficiente y procesar el documento extraído según sus requisitos. Si está creando un sistema inteligente de procesamiento de documentos, puede procesar aún más el documento extraído con Amazon Comprehend para obtener más información sobre el documento.
Para obtener más información sobre Amazon Textract, visite Recursos de Amazon Textract para encontrar recursos de video y publicaciones de blog, y lea las preguntas frecuentes de Amazon Textract. Para obtener más información sobre la arquitectura de referencia de IDP, consulte Procesamiento inteligente de documentos. Háganos saber sus pensamientos en la sección de comentarios o en la sección de problemas del repositorio de GitHub del proyecto.
Sobre el Autor
Sathya Balakrishnan es arquitecto sénior de entrega al cliente en el equipo de servicios profesionales de AWS y se especializa en soluciones de datos y aprendizaje automático. Trabaja con clientes financieros federales de EE.UU. Le apasiona desarrollar soluciones pragmáticas para resolver los problemas comerciales de los clientes. En su tiempo libre le gusta ver películas y hacer caminatas con su familia.
[ad_2]