DocThor – Un auto-catalogador de Documentos automático en función del contenido

Jul 5, 2011   //   by wpuser   //   Semántica  //  3 Comments

 

Desde el departamento de IA,  hemos creado un pequeño aplicativo, que con técnicas de Minería de Textos y Algoritmos de Clasificación Aplicados, permite catalogar documentos en función de su contenido, en tres modos de trabajo:

– Manual

– Aprendizaje Supervisado.

– Aprendizaje No Supervisado.

 

 

 

 

 

 

 

La filosofía del aplicativo es sencilla. Tenemos un conjunto de categorías, y dentro de las mismas, un conjunto de Tags asignados. Un Tag puede estar más de una categoría. Según el modo de trabajo, las categorías son introducidas por los usuarios expertos (modo Manual), o son definidas de forma automática por el sistema, de dos maneras:

– Aprendizaje Supervisado:

Existen ya documentos catalogados con anterioridad (histórico), y el sistema, en base al contenido de dicha catalogación, extrae de los “tags” más representativos de cada categoría (se realiza la clasificación a partir de un árbol de decisión), y crea un modelo de clasificación que se evalua contra el resto de documentos no categorizados.

 

 


 

 

-Aprendizaje No Supervisado.

En este caso, no existe ningún documento categorizado, y el sistema, por similitud de contenido entre los documentos, los clasifica en “clusters” de conocimiento (segmentación de la información), en base a redes neuronales autoasociativas (SOM), que además, como veremos a continuación, permiten crear un mapa “GIS” que representa dicho conocimiento.

Una vez que los documentos ya están segmentados, se sigue el mismo proceso que en el Aprendizaje Supervisado, para la extracción de los “tags” representativos asignados a la categorías. En este caso, las categorías tendrán nombres genéricos (CategoriaA, B, …), y tendrá que ser el usuario experto, “a posteriori”, el que les de nombres en función del contenido.

 

 

 

 

 

 

“Vectorización de los documentos”

Hemos comentado que la clasificación se hace en función del contenido del documento. Efectivamente, gracias a una técnica de Minería de Textos, denominada “vectorización”, seleccionamos las palabras del documentos, las “lematizamos” (tomamos su raíz), y después, generamos un vector que contiene tantas columnas como palabras tenga el conjunto de documentos, y tantas filas como documentos. El valor de cada columna es la frecuencia relativa inversa de la palabra con respecto al documento, es decir, lo relevante que es para el documento (cuantas más veces se repita, más relevante), e inversamente proporcional a lo repetida que sea en el resto de documentos (si en todos los documentos, en un entorno de contabilidad, por ejemplo, aparece “cuenta”, dicho término no es relevante en general, para clasificar los documentos…).

En la siguiente imagen se muestra un ejemplo de los documentos “vectorizados” del ejemplo anterior:

 

 

 

 

En este caso (ejemplo de las noticias de la intranet de Ibermática), el árbol de decisión utilizado para categorizar generado de forma automática es el siguiente (árbol de decisión generado por el sistema):

 

Por último, como los documentos están “vectorizados”, por comparación de vectores, y otras técnicas (SOM), se puede generar un mapa conceptual en dónde los documentos más cercanos en un mapa serán los que estén en los mismo “valles”, mientras que las montañas indicarán ausencia de documentos, y separación entre segmentaciones “temáticas”:

Los documentos pueden ser de cualquier tipo (word, excel, pdf, http, xml, …), y estar ubicados en directorios concretos, bases de datos, gestor de contenidos  o en Web.

3 Comments