Capítulo 6: Metodología de Clasificación
6 METODOLOGÍA DE CLASIFICACIÓN
Las 20 clases de texturas que se han utilizado para el reconocimiento de patrones han sido tomadas de la base de imágenes Brodatz. Se ha elegido esta base de datos porque es la usada típicamente en procesamiento de imágenes y por tanto los resultados pueden ser comparados universalmente con otros estudios sobre el mismo tema.
Las imágenes Brodatz, de dimensión 640x640 píxeles, se han clasificado en 20 grupos según el tipo de textura que representen. De modo que se toma una imagen patrón de cada tipo de textura, y luego se divide en cien imágenes muestra de 64x64 coeficientes. Con lo cual se van a comparar dos mil imágenes muestra.
La primera parte del trabajo ha finalizado con la obtención de los cuatro vectores de características que determinarán el tipo al que pertenece cada imagen muestra:
♦ Vector de energía, Eni con n=1, 2, 3,4 e i=V, H, D Æ 12 características
♦ Vector de histograma, αni y βni Æ 24 características
♦ Vector de co-ocurrencia, C1 ni … C8 ni Æ 96 características
♦ Vector de características de histograma y de co-ocurrencia Æ 120 características
En la segunda parte se va a llevar a cabo el reconocimiento de patrones propiamente dicho. El reconocimiento de patrones consiste en la construcción de un sistema de clasificación a partir de un conjunto de vectores de características para los cuales se conocen sus clases.
Cuando se habla de clasificación puede tener dos significados distintos. Se puede tener un conjunto de observaciones con el objetivo de establecer la existencia de clases o grupos en los datos. O bien se puede saber que existen determinadas clases y que el objetivo sea establecer una regla por la que podamos clasificar una nueva observación dentro de una de las clases existentes. El primer tipo se conoce como aprendizaje no supervisado (o clustering), el segundo como aprendizaje supervisado. Este trabajo se centra en el segundo, el aprendizaje supervisado. En estadística, tradicionalmente se ha utilizado para este propósito el análisis discriminante pero en los últimos tiempos se han desarrollado nuevas técnicas, en parte gracias al desarrollo experimentado por la capacidad de los soportes informáticos.
Los métodos de clasificación han sido utilizados en muchas disciplinas, por ejemplo, en biología (genética), medicina (diagnóstico de enfermedades), astronomía, ingeniería, control, robótica e incluso en economía.
6.1 SELECCIÓN DE CARACTERÍSTICAS.ALGORITMO SFFS
Lo primero que hay que estudiar es cuáles de las características de los precedentes vectores son las más idóneas para el reconocimiento de patrones de textura, ya que en reconocimiento de patrones ocurre lo que se conoce como “maldición de la dimensionalidad” (Curse of Dimensionality), la cual impone que el resultado de una clasificación no mejora necesariamente con un incremento del número de características.
Para tamaños pequeños de muestra, el resultado del clasificador mejora al agregar nuevas características hasta alcanzar un máximo, para luego decaer.
El problema de selección de características es equivalente a buscar en un grafo dirigido, donde el nodo raíz corresponde al conjunto de todas las características. El número total de posibles subconjuntos de un conjunto de n-elementos es 2n. En el grafo, cada nodo corresponde a un subconjunto de características y cada rama representa la inclusión del subconjunto. Los subconjuntos se codifican como tiras binarias, donde el entero 1 indica que una característica está presente en un subconjunto y 0 indica que la característica está ausente.
Capítulo 6: Metodología de Clasificación
Existen distintos métodos de selección de características. Una primera distinción puede ser entre métodos basados en la teoría estadística de reconocimiento de patrones y aquellos basados en redes neuronales artificiales. Dentro de los primeros, a su vez, se diferencia entre métodos óptimos o sub- óptimos, con solución única o múltiple, determinístico o estocástico. Esquemáticamente, lo métodos de selección de características son:
Figura 23: Métodos de selección de características
Dentro de los métodos que mantienen una solución única se encuentran los algoritmos secuenciales, los cuales agregan o eliminan características iterativamente hasta satisfacer algún criterio de detención. Hay dos categorías: los métodos hacia delante SFFS (forward) que comienzan con el conjunto vacío y van agregando características y los métodos hacia atrás SBFS (backward) que comienzan con todas las características disponibles y van eliminando una a una.
Estos métodos son sub-óptimos y tienen el problema de que las características descartadas en el método de búsqueda hacia atrás no pueden volver a seleccionarse. Del mismo modo, una vez seleccionadas las características en el método de búsqueda hacia delante, éstas no pueden ser descartadas posteriormente. Una solución a estas dificultades es permitir que "floten" los valores que controlan tanto la inclusión como la exclusión de características.
Dado un número finito de ejemplos de entrenamiento, existe un número óptimo de características necesarias para clasificar. Es crucial, para ello, adoptar un esquema de selección o extracción de características. En este trabajo se ha escogido el esquema Sequential Forward Feature Selection, SFFS.
El algoritmo SFFS (Sequential Forward Floating Selection) [10] que empieza con el conjunto vacío y va incluyendo nuevas características por medio de un procedimiento secuencial hacia adelante, seguido por una serie de exclusiones condicionales de la peor característica en el nuevo subconjunto de características seleccionadas. Las características permanecen o son excluidas del conjunto en función de su efectividad clasificadora. Se ha escogido este método porque es mucho más rápido que otros algoritmos existentes, como el de ramificación y acotamiento, y su eficiencia computacional permite el uso de métodos de búsqueda flotante hasta dimensión 100.
Capítulo 6: Metodología de Clasificación
6.2 PROCEDIMIENTOS DE CLASIFICACIÓN
Algunos de los procedimientos de clasificación (discriminante lineal, árboles de decisión y basados en reglas, vecino más próximo…) fueron desarrollados hace ya algunos años. Como es lógico, han sido refinados y extendidos, pero actualmente todavía representan las ramas más importantes en clasificación, tanto a nivel aplicado como a nivel de investigación.
6.2.1 EldiscriminanteLineal
y sus Extensiones
El discriminante lineal es uno de los procedimientos de clasificación más antiguos y es el que mayoritariamente se utiliza en los paquetes estadísticos. La idea es dividir el espacio muestral mediante una serie de líneas en el espacio bidimensional, planos en el caso de tres dimensiones y, en general, hiperplanos para muchas dimensiones.
La línea que divide dos clases se define, de tal forma que corte por la mitad la línea que une los centros de esas clases. La dirección de la línea se determina por la forma de los grupos de puntos. La recta, el plano o hiperplano será una combinación lineal de las variables que caracterizan a los ejemplos. Al ser un procedimiento geométrico, la naturaleza de los datos es importante, debiendo ser variables cuantitativas.
Se incluyen en este grupo aquellos procedimientos que empiezan con combinaciones lineales de las medidas, incluso si estas combinaciones están sujetas después a transformaciones no lineales. Se pueden citar seis procedimientos más de este tipo: discriminante lógico, discriminante cuadrático, perceptrón multicapa (backpropagation y cascade), DIPOL92 y projection pursuit.
6.2.2 Árboles de Decisión y Métodos basados en Reglas
Los árboles de clasificación están compuestos por nodos y ramas. Cada nodo representa una cuestión o decisión sobre una de las características de los ejemplos. El nodo inicial se suele llamar nodo raíz.
De cada nodo pueden salir dos o más ramas dependiendo de que la respuesta a la cuestión planteada sea binaria o no. Finalmente, se alcanzan los nodos terminales u hojas y se toma una decisión sobre la clase a asignar.
El desarrollo del árbol se realiza de modo que la concentración en los nodos (calculada a través de la entropía) vaya aumentando. La naturaleza de la información es poco relevante, siendo un procedimiento ideal para datos cualitativos.
En este grupo de pueden incluir gran cantidad de procedimientos entre los que destacan: NewID, AC2, Cal5, CN2, C4.5, CART, IndCART, árbol de Bayes e Itrule.
6.2.3 Estimaciones de la densidad
Este grupo es un poco menos homogéneo, pero sus métodos tienen en común que el procedimiento está muy relacionado con la estimación de la densidad local de probabilidad en cada punto del espacio muestral. Se incluyen en este grupo los siguientes métodos: vecino más próximo, funciones de base radial, Bayes simplificado, árboles múltiples, mapas autoorganizados de Kohonen, aprendizaje por vectores de cuantificación (LVQ). Relacionado con los anteriores, el método de estimación de la densidad del núcleo, aunque a diferencia de ellos, aquí se estima la densidad de probabilidad para un núcleo.
De ellos, los más importantes son el método del vecino más próximo y las redes neuronales. El primero se basa en la idea de que lo más probable es que las observaciones de la misma clase estén cercanas entre sí. Para una nueva observación, se fija, por ejemplo, en las k observaciones más cercanas de todas las almacenadas previamente y clasifica la nueva observación de acuerdo con la clase mayoritaria entre sus vecinos.
Capítulo 6: Metodología de Clasificación
Las Redes Neuronales Artificiales (RNA) son un método no paramétrico de clasificación, que permite obtener un grado elevado de precisión. Esta técnica pretende imitar el funcionamiento del cerebro humano, en lo referente a su estructura neuronal, que de manera simplificada constituye una red de neuronas interconectadas lo que posibilita el procesamiento en paralelo. Así, en el caso de las redes neuronales artificiales los nodos, o unidades equivalentes a las neuronas, reciben como entradas la suma ponderada de las salidas de otras unidades, que es como se cree que actúan las neuronas humanas.
6.3 CLASIFICADOR ÓPTIMO PARA RECONOCIMIENTO DE IMÁGENES
Los problemas de reconocimiento de imágenes son aplicables en una amplia variedad de contextos.
En algunos casos hay que clasificar la imagen entera (o un objeto en la imagen), mientras que en otros la clasificación se realiza a partir de la segmentación de una imagen. Michie [11] considera por separado ambos grupos. En el primero, el reconocimiento de objetos, incluye cinco conjuntos, en concreto el conjunto de Karhunen-Loeve, el de los dígitos, la silueta de vehículos, los cromosomas y la escritura manual. Los resultados obtenidos se pueden comprobar tanto cuantitativamente como gráficamente en las siguientes tabla y figura:
KL Dígitos Vehículos Cromosomas Letras
Dis. Cuadrático 0,025 0,054 0,150 0,084 0,113
knn 0,020 0,047 0,275 0,123 0,070
Discrim. Lógico 0,051 0,051 0,192 0,131 0,234
D. Lineal 0,075 0,075 0,216 0,107 0,302
B.P. 0,049 0,049 0,207 - 0,327
C4.5 0,180 0,180 0,266 0,175 0,132
CART - 0,160 0,235 - -
R. Defec. 0,900 0,900 0,750 0,960 0,960
Tabla 6: Tasas de error en los conjuntos de reconocimiento de objetos
Figura 24: Tasas de error en los conjuntos de reconocimiento de objetos
Estos autores señalan su decepción por el comportamiento del algoritmo de retropropagación (B.P.) en estos problemas, ya que los que propusieron este método destacaron su habilidad para modelar
Capítulo 6: Metodología de Clasificación
Por el contrario, el discriminante cuadrático y los k vecinos más próximos son los métodos que en general se comportan mejor. También destaca negativamente el pobre comportamiento de los árboles de clasificación en este caso.
A la vista de estos resultados, para evaluar el poder de discriminación de las características se ha empleado un clasificador K-nearest neighbor, knn (vecino más cercano). Además, se ha elegido el clasificador knn por otras razones:
♦ Es un esquema más flexible y eficiente que los resultados de otros clasificadores.
♦ Knn no necesita un entrenamiento exhaustivo.
♦ Es fácil de usar en conjunción con el algoritmo SFFS
Como se ha comentado anteriormente, la clasificación de un vector de características x̃ se lleva a cabo buscando los k vectores de entrenamiento ỹ más cercanos, aquellos con los que la distancia d(x̃,ỹ) sea mínima. Dichos vectores de entrenamiento conforman una matriz de entrenamiento. El vector x̃ es asignado a la clase a la que pertenezcan la mayoría de los k vectores más cercanos.
Si la distancia medida entre vectores se elige para que sea euclídea, entonces las características con mayores varianzas tienden a dominar esta medida. Para evitar que eso ocurra, se computan la mediana y la desviación típica de cada característica de todas las clases, luego las características se normalizan restando la mediana y dividiendo entre la desviación típica.
Como complemento, la estimación de los resultados de clasificación se lleva a cabo mediante un método leave-one-out. Este método elige secuencialmente cada vector de datos, correspondiente a una de las dos mil imágenes muestra que hay que reconocer, y la clasifica, mediante la regla knn en este caso, usando como vectores de entrenamiento los 1999 vectores correspondientes a las muestras restantes. De este modo, cada muestra disponible a clasificar es empleada también como muestra de prueba.
Con esto termina el proceso de reconocimiento de patrones. Los resultados obtenidos se muestran en el apartado 8, donde se comprueba si del método usado para la clasificación es efectivo. Antes se explica detalladamente (apartado 7) los algoritmos utilizados para llevar a la práctica todo lo explicado hasta ahora.