¿Qué?
En este artículo nos apoyaremos en nuestra propia versión de las 5W (o las 7 circunstancias de Hermágoras de Temno) para dar una respuesta a alto nivel a algunas cuestiones que atañen al análisis de documentos.
¿Quién?
El análisis de documentos se puede apoyar en técnicas matemáticas, estadísticas, de machine learning o deep learning para su resolución técnica. Sin embargo, el campo verdaderamente protagonista en esta tarea es el Procesamiento del Lenguaje Natural (PLN) o Natural Language Processing (NLP). Un área de la computación que combina inteligencia artificial y lingüística, que aborda el problema de transformar el lenguaje natural en un lenguaje formal procesable por una máquina. De esta manera, un ordenador puede explotar la información presentes en las manifestaciones del lenguaje humano: textos, grabaciones de voz, letras de canciones, etc.
¿Dónde?
Para realizar un análisis de documentos, lo primero que tenemos qué saber es de dónde sacar los datos que necesitamos. Según as necesidades de lo queramos saber y las circunstancias del proyecto, tenemos a nuestra disposición múltiples fuentes de datos:
- El fichero
Si el documento se encuentra en un fichero digital, podemos explotar datos propios del mismo. Resultan de interés datos como su nombre, fecha de creación, formato o extensión (.docx, .pdf, .txt, etc), usuario propietario del fichero, tamaño del archivo, etc. - Metadatos del fichero
En algunos formatos de fichero podemos encontrar una capa de metadatos con información específica sobre el documento que alberga. Y en muchos casos, estos metadatos ofrecen información sobre la publicación del documento. Entre estos datos se encuentra el autor, la editorial, la fecha de publicación, el título del documento, etc. - El texto
El propio texto del documento es la fuente de datos base de un análisis NLP, hasta el punto de que en muchos casos esta es la única entrada de datos del sistema. - El documento
Si el texto se estructura en un documento, tenemos ante nosotros una fuente excelente de información. Las cabeceras, los pie de página, los índices, los títulos de capítulo, las notas a pie de página, etc. concentran gran cantidad de datos en muy pocas palabras. Con estos elementos se facilita obtener información como el autor, la editorial, las referencias bibliográficas, los temas tratados en el contenido del documento, etc. De hecho, puede darse el caso de que sea más eficaz analizar sólo la introducción o los títulos de un documento, que estudiar todo su texto. - Las fuentes abiertas
También debemos tener en consideración la posibilidad de encontrar información sobre un documento fuera del mismo. En este punto, podemos buscar reseñas, fichas técnicas, resúmenes, opiniones, trabajos académicos, artículos periodísticos… Nos acercamos así al área de OSINT (Open-Source INTeligence o inteligencia en fuentes abiertas), con la que podremos obtener información que han aportado otros humanos sobre nuestro documento.
Por otra parte podremos hacer uso de las fuentes abiertas para enriquecer semánticamente nuestro análisis. Por ejemplo, si en nuestro texto se nombran empresas, podemos añadir información sobre las mismas (tamaño, sector, facturación…) o un enlace a su web oficial. O si se emplean términos técnicos, podríamos incluir su definición. - Otros documentos
Finalmente, debemos tener en cuenta que en ocasiones necesitamos conocer otros documentos que nos sirvan de contexto para el nuestro. Este es el caso, por ejemplo, de las noticias. Así, para ubicar en el espectro político una línea editorial, resulta necesario disponer de noticias de otras fuentes con las que compararla.
¿Cómo?
Una vez tenemos los datos, podemos aplicar técnicas de NLP para extraer conocimiento de ellos. Entre las técnicas más conocidas e interesantes del análisis de documentos se encuentran:
- Análisis de sentimiento.
Consiste en identificar y extraer información subjetiva (sobre el sujeto que escribe) de contenido de diversos tipos. Típicamente se obtiene una valoración sobre cuán positiva o negativamente se está tratando un tema en un texto. Aunque también pueden obtenerse otras métricas más afinadas como la detección de ironía, afecto, alegría, etc. - Análisis de la Estructura de Documentos.
Mediante esta herramienta podemos identificar los componentes estructurales principales de un documento, extrayendo así títulos, cabeceras, asuntos, destinatarios, etc. De manera rápida seremos capaces de obtener una tabla de contenidos que nos aporte una visión de la estructura del mensaje. - Detección de entidades.
Estas técnicas permiten localizar la mención de entidades dentro de un texto. Además, clasifica estas entidades en una categoría, como personas, lugares, empresas, organismos gubernamentales, cantidades económicas… - Clasificación de textos
La clasificación de documentos nos permite asignar un texto a una o más categorías conocidas y predefinidas. Con ello podemos detectar correo spam o asignar temáticas a un libro. Puesto que en conocemos a priori las clases de textos posibles, se hace uso de técnicas denominadas de aprendizaje supervisado. - Clustering de textos.
La agragación o clustering nos permite descubrir automáticamente la estructura implícita en una colección de documentos. Con ello podemos agrupar automáticamente los textos más similares o relacionados entre sí o determinar cuántos tipos de textos distintos hay. Puesto que en clustering no tenemos un número prefijado de grupos se hace uso de técnicas de aprendizaje no supervisado. - Resumen
Estas técnicas nos permiten conocer el contenido del texto sin tan siquiera haberlo leído. Típicamente nos ofrecen un breve texto alternativo que podemos leer en lugar del texto original. Pero también es frecuente que se obtengan términos clave y métricas que nos ayuden a entender el contenido.
Pero quedan muchas más técnicas por explorar, como la semejanza de documentos o la obtención de textos representativos de un tema. Y, quizá la más relevante, la vectorización, que nos permite expresar numéricamente un texto y nos abre la puerta a la aplicación de técnicas matemáticas y analíticas punteras en el sector.
¿Para qué? ¿Cuándo? ¿Por qué?…
Si quieres saber para qué podemos querer hacer análisis de documentos, lo mejor es que leas el artículo de nuestro blog en el que contamos 10 casos de uso muy interesantes.
El cuándo y el porqué esperamos que nos los digas tú al plantearnos el caso de uso que te interesa resolver.