1.- Definición Se puede definir la Clasificación Automática de Textos

Anuncio
1.- Definición
Se puede definir la Clasificación Automática de Textos, también denominada
Categorización de Textos o Topic Spotting, como la tarea de asignar
automáticamente un conjunto de documentos a una o más categorías
preexistentes a través de un conjunto predefinido de documentos
precategorizados sobre los que el sistema lleva a cabo un proceso de aprendizaje
supervisado.
Existe otra definición posible, y es aquella en la que la asignación de
documentos se produce sobre categorías generadas también de forma
automática por el clasificador. Este tipo de aproximación no requiere de la
intervención humana para la creación del corpus de documentos inicial, ni para
la preclasificación de sus elementos ni para el establecimiento de un lenguaje
documental. Sin embargo, este tipo de aproximaciones no organizan la
documentación en torno a materias, aunque pueden crear las materias a partir
de las agrupaciones de documentos detectadas. Denominaremos a este tipo de
clasificación automática como no supervisada, o simplemente bajo la etiqueta
de técnicas de agrupación de documentos.
2.- Clasificación Automática vs. Clasificación Manual
Por lo que se refiere la clasificación automática, casi todos los enfoques que se
enfrentan al problema de categorizar textos de forma automática tienen su
núcleo en algoritmos que permiten el aprendizaje, digamos la parte “inteligente”
del sistema.
Echemos un vistazo al proceso normal que realiza un clasificador humano; este
proceso se puede definir como:
“... el acto de organizar el universo del conocimiento en algún orden sistemático.
Ha sido considerada la actividad más fundamental de la mente humana. El acto
de clasificar consiste en el dicotómico proceso de distinguir cosas u objetos que
poseen cierta característica de aquellos que no la tienen y agrupar en una clase
cosas u objetos que tienen la propiedad o característica en común.”1
Si traducimos esto a términos de análisis documental tendríamos (siguiendo los
tres pasos fundamentales indicados por Blanca Gil en su manual de lenguajes
documentales) que clasificar básicamente consiste en:
1) Examinar un documento para obtener una idea clara de sus contenidos.
2) Sintetizar dichos contenidos en un tema principal
3) Contrastar este tema principal o materia con un lenguaje clasificatorio
con el objeto de determinar qué categoría se aproxima más a él y
representar el documento mediante la notación propia de dicho lenguaje.
1
M.L. CHAN; Cataloging and classi_cation: an introduction. New York: McGraw-Hill,
1981, p209, citado en. GIL URIDICIAIN, Blanca. Manual de Lenguajes Documentales. Madird, Noesis,
1996. Página 38.
Con esto se posibilitaría además que el almacenamiento ordenado y la
recuperación de información fueran posibles. Podemos representarlo con un
esquema:
SISTEMA DE
CLASIFICACIÓN
DOCUMENTO
Examen del
documento
Identificación
de contenidos
Obtención
de la materia
por síntesis
Obtención de la
categoría por
comparación de
materias
REPRESENTACIÓN
En el esquema anterior hemos descompuesto la tarea de clasificar en varias
tareas más pequeñas con el objeto de permitir la comparación con la forma de
operar de un clasificador automático. Varias de estas tareas no pueden ser
afrontadas de forma natural por un clasificador artificial, sino que deben ser
llevadas a cabo a partir de otros caminos que en principio deberían producir
resultados similares. Analicemos paso por paso el recorrido que un clasificador
automático llevaría a cabo para clasificar un documento cualquiera conforme a
una clasificación preestablecida.
El primero de los problemas importantes es el que media entre el examen del
documento y la identificación de los contenidos. Un sistema de
clasificación automática afronta la tarea de modo muy similar a como lo haría
un indizador automático. De hecho cualquier sistema de clasificación
automática debe utilizar los resultados del proceso de representación de
documentos ya descrito.
Durante esta fase se representa el documento mediante la elección de una parte
de los términos de que está compuesto y su ponderación para intentar expresar
en lo posible los contenidos del documento. Parece obvio que el proceso no tiene
nada que ver con el que realiza un ser humano, ya que la lectura es secuencial y
la ponderación de la importancia de las palabras es estadística. Dejando a un
lado consideraciones de eficacia vamos a suponer que el sistema lo lleva a cabo
con cierta corrección.
En este momento el sistema tendría una representación de los documentos más
o menos acertada que reflejaría sus contenidos. El sistema no comprende lo que
estos contenidos significan pero los representa de una forma que simula este
entendimiento. Los términos de indización ya son utilizables para responder a
necesidades informativas.
El siguiente salto consiste en conectar esta representación que lleva
implícita los contenidos del documento con una materia que los sintetice.
Dado que el sistema no ha llegado a comprender los contenidos del documento
parece lógico que no pueda llevar a cabo la complicada labor de pasar del
análisis a la síntesis tal y como lo haría un ser humano. De hecho el clasificador
nunca dará este paso, no puede averiguar qué materia sintetizaría mejor el
documento en conjunto. Simplemente carece del utillaje necesario para hacerlo,
a no ser que encuentre en la suma de los términos de indización una
representación de dicha materia, lo que en cualquier caso nosotros no hacemos
al clasificar algo. Incluso en este último caso un clasificador tampoco podría
decidir cuál es la materia en concreto, ya que desconoce las materias y su
significado.
El último escollo de importancia es el que conecta la materia de un
documento con una categoría de la clasificación. Para un ser humano
esta no es una tarea especialmente difícil, ya que las clasificaciones, sean
jerárquicas, mixtas o facetadas, se orientan precisamente a facilitar la
localización de materias determinadas. Podríamos describir este proceso como
un periplo de categoría a subcategoría en el caso más frecuente de las
clasificaciones jerárquicas. Un agente humano comprobaría la pertenencia de la
materia sobre la que versa el documento a cada una de las clases principales de
la clasificación hasta encontrar la correcta y luego iría descendiendo por sus
subclases hasta encontrar la que mejor se adaptara a la materia del documento.
En resumen, compara la materia del documento con la materia subyacente en
una categoría hasta encontrar una correspondencia. Un clasificador artificial no
podría llevar a cabo esta tarea de forma directa, ya que de nuevo desconoce las
materias y su significado.
Como podemos observar el trabajo de un clasificador humano no puede
ser llevado a cabo directamente por un clasificador automático. La
parte inteligente de un clasificador automático no intenta emular el
comportamiento de un ser humano, sino aprovecharse de él para llegar a las
mismas conclusiones mediante caminos diferentes. La forma en que se hace
esto es mediante la utilización de conjuntos de documentos de
entrenamiento. Estos documentos de entrenamiento han sido
preclasificados por expertos, y el sistema los representa en sus propios
términos mediante técnicas estadísticas de indización para poder utilizarlos.
2.- Perspectiva general del funcionamiento de un sistema de
clasificación automática.
La forma en que el sistema aprovecha las decisiones previas de los clasificadores
humanos difiere de clasificador a clasificador, aunque todos llevan a cabo un
proceso general inductivo que establece una serie de formas de actuar que
repetidas sobre documentos nuevos pueden llevarles a clasificar con acierto un
documento. Dicho de otra forma, existe una fase previa a la clasificación
durante la cuál el clasificador lleva a cabo un proceso de aprendizaje
del que se infieren una serie de condiciones de pertenencia que un
documento cualquiera debería satisfacer para poder ser considerado
como clasificable bajo una categoría determinada.
Clasificar se reduce entonces a evaluar las condiciones de pertenencia para un
documento y una clase en concreto, emitiendo una decisión afirmativa o
negativa. El clasificador permanece ajeno al significado de los documentos o al
significado de las clases durante todo el proceso, pero si tomamos por buena la
premisa de que la representación de un documento a partir de la selección y
ponderación de las palabras que lo componen puede llegar a contener de forma
implícita los temas acerca de los que trata dicho documento, es posible que el
sistema sea capaz de establecer la cercanía temática de dichos documentos. A
través de comparaciones entre ellos podrá establecer la pertenencia de un
documento determinado a una clase determinada, ya que el clasificador ha sido
entrenado para apreciar determinadas características y asociarlas con una
categoría.
Representamos en el siguiente esquema las fases de aprendizaje y clasificación
para un clasificador automático, donde las condiciones de pertenencia se
refieren a las condiciones de pertenencia a una clase determinada, y la decisión
de la clasificación generalmente será positiva o negativa.
Aprendizaje
Clasificación
Documentos + Representaciones
+ Conocimiento previo
Proceso General
Inductivo
Condiciones de
pertenencia a clases
Documento + Representación
Evaluación de
condiciones
Decisión de
clasificación
Como se podrá observar el proceso en su conjunto depende de la evaluación de
unas condiciones de pertenencia generadas durante el aprendizaje. Esto puede
dar una idea clara de la importancia que un algoritmo de aprendizaje puede
llegar a tener en un sistema de clasificación automática.
2.1.- Entrenamiento
La mayor parte de los clasificadores llevan a cabo algún tipo de entrenamiento
previo antes de que el clasificador esté listo para enfrentarse a tareas reales de
categorización. Esto no es estrictamente necesario, ya que se puede utilizar un
proceso de aprendizaje sencillo y clasificar documentos justo después. Sin
embargo suele ser conveniente llevar a cabo un entrenamiento completo. Se
pueden distinguir tres fases principales en el entrenamiento, el
aprendizaje, la parametrización y la evaluación, que describiremos a
continuación, aunque antes será necesario conocer la base sobre la que se lleva a
cabo dicho entrenamiento.
Para llevar a cabo la fase de entrenamiento es necesario disponer de
conocimiento previo de expertos en forma de decisiones de categorización
asignadas a cada uno de los documentos. Esto se materializa en un conjunto de
documentos preclasificados y marcados para que el sistema pueda leer la clase
de pertenencia de cada uno de los documentos.
Este corpus de documentos preclasificado se denomina por lo general colección
de pruebas. Para propósitos de entrenamiento esta colección se divide en varios
conjuntos de documentos, todos compuestos de documentos preclasificados,
que se denominan: Conjunto de Aprendizaje, Conjunto de Validación y
Conjunto de Evaluación.
El aprendizaje, que mediante un proceso general de inducción es capaz de
proporcionar modelos en forma de condiciones de pertenencia, tiene como
objetivo posibilitar una fase posterior de clasificación. En realidad existen
clasificadores que son capaces de efectuar decisiones correctas sobre
documentos nuevos en base a conocimiento previo desde hace al menos 20
años. El problema es que a pesar de que las decisiones de clasificación se
tomaban de forma automática, la codificación de este conocimiento en forma de
condiciones de inclusión era completamente manual, lo que requería
literalmente cientos de horas de trabajo.
De esta forma, tenemos que el verdadero objetivo de la aplicación del
aprendizaje automático es generar de forma automática las condiciones de
pertenencia a las clases, mientras que las decisiones de clasificación son mucho
más fáciles de tomar y se basan en la aplicación de funciones de relevancia
(medidas de similitud) ya conocidas en Recuperación de Información.
Para generar de forma automática las condiciones de pertenencia a clases es
necesario llevar a cabo este proceso de aprendizaje, durante el cual el algoritmo
de aprendizaje analiza los documentos preclasificados y las decisiones de los
clasificadores humanos para establecer modelos. En realidad existen dos formas
bien distintas de llevar a cabo esto, lo que da lugar a dos tipos básicos de
clasificadores, los clasificadores lineales y los clasificadores basados en
ejemplos. Explicaremos esto más adelante.
A estas alturas el clasificador funcionará, aunque probablemente lo haga de
forma deficiente. Con el objeto de mejorar estas deficiencias comienza un
proceso heurístico de parametrización, que básicamente consiste en evaluar
el comportamiento de un clasificador ya “enseñado” sobre un conjunto de
documentos distintos (que por lo tanto no intervinieron durante la fase de
aprendizaje) que se denomina conjunto de validación. El hecho de que todos los
documentos estén clasificados de antemano permite comprobar el nivel de
correspondencia entre las decisiones del clasificador y las decisiones óptimas
(suponiendo que los agentes humanos las hubieran tomado, lo que no ocurre
siempre). Después se procede al ajuste de los parámetros del clasificador, como
por ejemplo variaciones sobre el modelo de representación, el umbral a partir
de cuál se considera que un documento forma parte de una categoría...etc, y se
vuelve a probar una y otra vez hasta que todas las decisiones sean correctas.
Una vez se han llevado a cabo las fases de parametrización y aprendizaje se
mide de nuevo la efectividad del clasificador. Para esto se suelen utilizar
medidas de evaluación estándar como la precisión y la exhaustividad sobre un
conjunto similar a los anteriores cuyos documentos sin embargo no han
participado hasta ahora en el proceso, y que se suele denominar conjunto de
evaluación. Esto da una medida bastante buena de la efectividad real del
clasificador, y si está por debajo de la esperada el proceso de entrenamiento se
puede llevar a cabo de nuevo con diferentes particiones de la colección de
pruebas, o diferentes parámetros hasta obtener los resultados apetecidos.
2.2.- Clasificación
La clasificación de documentos nuevos consiste en la evaluación de las
condiciones establecidas para cada categoría con respecto de un documento en
concreto. Si un documento nuevo cumple con las condiciones de pertenencia
que hemos deducido durante el aprendizaje, se considerará que debe asignarse a
la misma.
De esta forma el proceso de clasificación se lleva a cabo por lo general de forma
muy rápida, recayendo la mayor parte del peso sobre el proceso de aprendizaje.
Dependiendo del sistema de clasificación automática de documentos elegido
estas decisiones se tomarán conforme al cumplimiento de reglas lógicas
utilizando parámetros probabilísticos o comparaciones entre vectores.
Podemos ilustrar mejor el funcionamiento de un sistema de clasificación
automática de documentos analizando algoritmos concretos. Estableceremos
una tipología básica de clasificadores automáticos a continuación.
3.- Tipos de clasificadores automáticos
Podemos clasificar los distintos sistemas es en torno a tres conceptos, grado de
detalle de las operaciones de clasificación, área de pertenencia de los
documentos y producto final del sistema de clasificación. Básicamente estos tres
factores hacen referencia a la finura con que podemos determinar una decisión
de clasificación determinada, la capacidad de llevar a cabo múltiples decisiones
no excluyentes sobre un mismo documento y la forma en que dichas decisiones
se le presentará al usuario final.
3.1 Clasificadores binarios y clasificadores real-valuados
La mayor parte de los modelos de clasificación existentes deciden sobre la
pertenencia de un documento a una categoría eligiendo entre dos valores:
verdadero (el documento pertenece a la categoría) y falso (el documento no
pertenece a la categoría). Este tipo de clasificación se conoce como binaria.
Por otra parte existe también la posibilidad de que la decisión del clasificador
incluya una noción del grado de pertenencia de un documento a una clase. De
esta forma un documento puede pertenecer a una clase en un grado que va de 0
a 1, siendo 0 el grado de exclusión máximo (el documento no trata en absoluto
de la materia identificada para esta clase) y 1 el grado de pertenencia máximo
(tratando el documento netamente al tema de la clase sobre la que le
evaluamos). En este caso estaríamos hablando de un clasificador real-valuado
(por los número reales en que se basan las valoraciones que hacemos de los
documentos con respecto de las clases).
Los clasificadores basados en reglas DNF, Naive Bayes, Redes Neuronales,
Clasificadores Lineales basados en el Algoritmo de Rocchio, Árboles de
Decisiones y Support Vector Machines entre otros producen funciones de
clasificación binarias. Son bastantes menos los algoritmos que se rigen por una
decisión gradual de la pertenencia a clases de los documentos, de manera que
sólo K-vecinos, LLSF, WORD y algunas versiones bastante recientes de SVM
(Support Vector Machines) son capaces de clasificar en torno a estos
parámetros.
3.2 Ranking de categorías o asignación directa de categorías
Dado un documento cualquiera el objetivo de un clasificador es asignarle una o
varias categorías a las que se supone que el documento pertenece, lo que se
refleja en dos productos distintos, un ranking de categorías, o una asignación
directa de categorías. El primero de estos resultados es más exactamente un
listado de categorías candidatas, a cada una de las cuales el clasificador asigna
un valor de confianza. Es mucho más fácil crear rankings con un tipo de
clasificador que genere decisiones basadas en números reales.
Este tipo de estimaciones es muy deseable cuando el clasificador mantiene una
relación de interactividad con el usuario, y por lo tanto son de la mayor utilidad
en los casos en los que el proceso de clasificación no es realmente automático,
sino asistido, o semiautomático. Esto supone que la decisión final de clasificar
un documento bajo una categoría cae directamente en manos de un usuario.
Además, un ranking puede proporcionar la oportunidad de que un usuario
consulte categorías relacionadas, escoja entre la que le parezca más adecuada, o
de que una segunda aplicación haga uso de los matices expresados en dicho
ranking.
La asignación automática de categorías se utiliza en sistemas completamente
automáticos que no requieren de la intervención del usuario, al menos para la
toma de decisiones de clasificación. Este tipo de sistemas pueden también
utilizar un ranking de categorías, aunque lo hacen como un paso intermedio
para la obtención de la categoría final, eligiendo la categoría más votada del
ranking, la que tiene asignado un peso más alto...etc.
3.3 Clasificadores de Categorización Múltiple y clasificadores de
Categorización Simple
Existe la posibilidad de asignar una o varias categorías a un mismo documento,
siendo la segunda posibilidad la más flexible. Para el primero de los casos, se
asume que dado un documento sólo se le puede asignar una categoría de entre
las n categorías existentes. Básicamente esta tarea se puede llevar a cabo
mediante dos tipos de clasificadores también mencionados antes, los
clasificadores binarios y los basados en decisiones graduales.
Para el caso de los clasificadores binarios esto se produciría cuando un mismo
documento cumpliera las condiciones de pertenencia a varias clases de forma
simultánea. Para el caso de los clasificadores graduales esto ocurriría si
seleccionamos las categorías para las que el documento muestra un mayor
grado de pertenencia.
4.- Algoritmos de clasificación automática
En realidad muchos de los tipos de clasificadores mostrados antes se pueden
obtener configurando de formas distintas un mismo algoritmo de clasificación
automática. Un algoritmo que genere valores de 0 a 1 para tomar decisiones de
clasificación se puede convertir fácilmente en un clasificador binario decidiendo
que las asociaciones detectadas entre categorías y documentos se pueden dividir
en 2, las que superen el umbral de 0,5 (u otro cualquiera) y las que no lo
superen. Es bastante más difícil hacerlo a la inversa, por otra parte.
Un clasificador que genere decisiones graduales de pertenencia de un
documento a una clase seguramente puede presentar los resultados para cada
clase de forma gradual y ordenada (en un ranking) a un usuario para que tome
la decisión final. Pero seguramente también puede prescindir de este paso y
ofrecer sólo la categoría más votada del ranking, asignando de forma directa el
documento a la misma.
Por último, un clasificador que puede decidir el grado de pertenencia de un
documento a varias clases puede así mismo escoger sólo una como resultado,
ignorando las clases que estima menos adecuadas.
En general existen dos ramas de algoritmos de clasificación automática, que
pueden ser configurados de formas diversas, como ya hemos visto. Estas ramas
son las de los algoritmos lineales y las de los algoritmos basados en ejemplos.
4.1.- Algoritmos lineales
Para un algoritmo de clasificación lineal, existe un periodo de aprendizaje bien
diferenciado, durante el cuál se examinan las decisiones de los expertos con
respecto a la pertenencia de varios documentos a diferentes clases.
Durante este proceso se establecen perfiles que codifican las condiciones que un
documento nuevo debería cumplir para pertenecer a una clase determinada. De
esta forma se genera una especie de clasificador propio para cada categoría, que
incluye las nociones que se estima son relevantes para que un documento sea
incluido en la clase.
Un ejemplo clásico de algoritmo de clasificación lineal es el algoritmo de
Rocchio (Ver tema 5). Este algoritmo sirve para reformular consultas en torno al
conocimiento de un experto acerca de la relevancia de los documentos
recuperados durante una búsqueda. Modificaba la consulta original
introduciendo parámetros que le permitían hacer una nueva consulta más
cercana a los documentos relevantes, al tiempo que dicha consulta se alejaba de
los documentos que se interpretaban como irrelevantes.
La aplicación del algoritmo de Rocchio a la clasificación automática se basa en el
mismo principio. Los expertos actúan como usuarios que emiten juicios acerca
de la relevancia de determinados documentos con respecto de ciertas consultas
(que en este caso equivalen a categorías de un sistema de clasificación). Para
cada categoría se interpretan que los documentos preclasificados por expertos
bajo la misma son documentos relevantes. Al mismo tiempo, los documentos
clasificados bajo otras categorías se interpretan como no relevantes. Después se
crea un documento tipo que reúne las características apreciadas en los
documentos relevantes, al mismo tiempo que excluye las características de los
documentos relevantes.
De esta forma obtenemos un documento tipo (mezcla de los atributos léxicos de
muchos otros documentos preclasificados) que sirve como regla de pertenencia
a una clase (un perfil). De esta forma clasificar un documento nuevo se reduce a
compararlo con todos los perfiles disponibles (uno por categoría), y a decidir el
perfil con el que guarda mayor grado de similitud (lo que se hace utilizando una
función de relevancia).
Por ejemplo:
Disponemos de un sistema de clasificación con varias categorías, c1, c2, c3, etc.
Disponemos de los juicios de clasificadores humanos acerca de la categoría a la
que pertenecen múltiples documentos de la colección, (pongamos unos 10 por
categoría). Podemos crear un perfil para C1 a partir de los 10 documentos que
sabemos están clasificados bajo dicha materia. Al mismo tiempo sabemos que
los otros documentos clasificados bajo el resto de las materias no corresponden
con la misma, y los introducimos en el perfil como los “documentos a evitar”.
Llamemos a este perfil P1.
Para clasificar un documento dx lo comparamos con P1, P2, P3, P4…etc.
Decidimos clasificar dx en la categoría con cuyo perfil guarda más parecido.
4.2 Algoritmos basados en ejemplos
Estos algoritmos tienen una fase de aprendizaje menos distiguible que en el caso
anterior. Se dice de este tipo de algoritmos que son perezosos, porque no
evalúan los documentos clasificados por los expertos hasta un momento antes
de emitir su decisión de clasificación.
No generan un perfil para cada categoría del sistema de clasificación, ni crean
por tanto condiciones de pertenencia para cada categoría. Tienen un núcleo de
decisión único que funciona cada vez que se requiere de la clasificación de un
documento nuevo, y que relaciona dicho documento con los ejemplos
preclasificados y a su vez con las categorías a las que pertenecen los mismos.
Un ejemplo clásico es el algoritmo de k-vecinos. Este algoritmo funciona en
cuatro fases:
-
-
1) Se compara el nuevo documento con cada uno de los documentos
preclasificados. Como resultado de esta comparación se elabora un
ranking en el que los documentos preclasificados más similares al
documento que queremos clasificar aparecen más arriba.
2) Se seleccionan los k documentos preclasificados más similares al
documento a clasificar. K es un valor establecido de forma aleatoria, pero
que generalmente va de 2 a 10.
3) Se considera la similitud de cada documento preclasificado con
respecto del nuevo documento como un voto a favor de la categoría a la
que pertenece el documento preclasificado.
4) Se selecciona la categoría más votada y se clasifica el nuevo documento
bajo la misma.
En realidad podemos considerar los valores de la decisión de clasificación
sumándolos, en lugar de considerarlos como un voto, lo que mejora los
resultados, aunque sólo es posible si el sistema es capaz de crear estimaciones
graduales de la similitud de un documento con respecto de otro.
Por ejemplo, si hemos utilizado una representación de los documentos binaria
(útil para los modelos clásicos de teoría de conjuntos o probabilístico) no
podremos aprovecharnos de estas características, aunque el sistema seguirá
funcionando bastante bien.
Descargar