ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

69
ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN MÓNICA PATRICIA JARAMILLO STEVENS ADRIANA MARCUCCI BUSTOS UNIVERSIDAD DE LOS ANDES DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA BOGOTÁ D.C. 2004

Transcript of ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

Page 1: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

MÓNICA PATRICIA JARAMILLO STEVENS

ADRIANA MARCUCCI BUSTOS

UNIVERSIDAD DE LOS ANDES

DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA

BOGOTÁ D.C.

2004

Page 2: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

MÓNICA PATRICIA JARAMILLO STEVENS. Código: 199911236

ADRIANA MARCUCCI BUSTOS. Código: 199913260

Trabajo de Grado presentado como Requisito para optar por el Título de Ingeniero Electrónico

Asesor: Alain Gauthier Sellier PhD.

Coasesor: Claudia Victoria Isaza

UNIVERSIDAD DE LOS ANDES

DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA

BOGOTÁ D.C.

2004

Page 3: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

Gracias a nuestras familias Gracias a Claudia y Alain por su dedicación

Gracias a Juan Fernando y a todos aquellos que estuvieron con nosotras

Page 4: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

iv

TABLA DE CONTENIDO

Página 1. INTRODUCCIÓN …………………………………………………………………………........... 1 2. GENERALIDADES DE CLASIFICACIÓN ……………………………………………….......... 2

2.1. DEFINICIÓN ……………………………………………………………………………….. 2 2.2. TIPOS DE CLASIFICACIÓN ………………………………………………………............ 3 2.3. DIVISIÓN DE LOS MÉTODOS DE CLASIFICACIÓN …………………………….......... 3 2.4. ÁREAS DE APLICACIÓN …………………………………………………………............ 4

3. MÉTODOS ESTADÍSTICOS DE CLASIFICACIÓN …………………………………………..

5

3.1. DISCRIMINANTE LINEAL ……………………………………………………………….. 6 3.1.1. Fisher ………………………………………………………………………………..

3.1.1.1. Fisher para dos clases ……………………………………………………… 3.1.1.2. Fisher para múltiples clases ………………………………………………..

6 7 8

3.2. VECINO MÁS PRÓXIMO …………………………………………………………………. 9 3.3. K-VECINOS ……………………………………………….……………………………….. 9

4. ÁRBOLES DE DECISIÓN ………………………………………………………………............

10

4.1. CARACTERÍSTICAS DEL CONJUNTO DE PREGUNTAS ………………………..........

10

5. MÉTODOS DE AGRUPAMIENTO ……………………………………………………………..

11

5.1. DETERMINISTICO ………………………………………………………………………... 115.1.1. K-means o C-means no difuso …………………………………………………….... 5.1.2. H-means y HK-means ………………………………………………………………. 5.1.3. Método de la Montaña ………………………………………………………………

111212

5.2. DIFUSO ……………………………………………….……………………………………. 145.2.1. C-means …………………………………………………………………………….. 5.2.2. Gustafson-Kessel Means ……………………………………………………………. 5.2.3. LAMDA ……………………………………………………………………………..

5.2.3.1. Cálculo del MAD con atributos cuantitativos ………………………………..... 5.2.3.2. Cálculo del MAD con atributos cualitativos …………………………………... 5.2.3.3. Cálculo del GAD ………………………………………………………………. 5.2.3.4. Clasificación de los datos ………………………………………………………

14161718181919

6. REDES NEURONALES …………………………………………………………………………

20

6.1. MODELO DE UNA NEURONA …………………………………………………………... 206.2. FUNCIONAMIENTO DE UNA NEURONA ……………………………………………… 216.3. PARÁMETROS PARA EL DISEÑO DE UNA RED NEURONAL ARTIFICIAL ………. 216.4. APRENDIZAJE DE UNA RED NEURONAL ARTIFICIAL …………………………….. 22

Page 5: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

v

6.4.1. Redes de una capa ………………………………………………………………….. 6.4.1.1. Algoritmo de error mínimo cuadrado (LMS) ………………………………….. 6.4.1.2. Algoritmo del perceptrón ……………………………………………………… 6.4.1.3. Algoritmo del perceptrón con Bolsillo …………………………………………

6.4.2. Redes de varias capas ………………………………………………………………. 6.4.2.1. Algoritmo del perceptrón multinivel …………………………………………... 6.4.2.2. Backpropagation ………………………………………………………………..

22222323232424

7. ALGORITMOS A EVALUAR Y JUSTIFICACIÓN DE LA ELECCIÓN ……………………...

26

7.1. MÉTODOS ESTADÍSTICOS ……………………………………………………………… 267.2. MÉTODOS DE AGRUPAMIENTO ………………………………………………………. 267.3. REDES NEURONALES ……………………………………………………………………

26

8. SOFTWARE DESARROLLADO ……………………………………………………………….

27

8.1. FORMA DE INSTALACIÓN ……………………………………………………………… 278.2. INTERFAZ CON EL USUARIO …………………………………………………………..

27

9. RESULTADOS …………………………………………………………………………………..

31

9.1. BASE DE DATOS NUBES ………………………………………………………………… 9.1.1. Características de la base de datos ………………………………………………….. 9.1.2. Resultados con Fisher ………………………………………………………………. 9.1.3. Resultados con K-vecinos ………………………………………………………….. 9.1.4. Resultados con el Método de la Montaña ………………………………………….. 9.1.5. Resultados con C-means …………………………………………………………… 9.1.6. Resultados con Gustafson Kessel means …………………………………………… 9.1.7. Resultados con LAMDA …………………………………………………………… 9.1.8. Resultados con Redes Neuronales Artificiales (RNA) …………………………….. 9.1.9. Comparación de resultados con los diferentes métodos de clasificación …………..

31313232323434353538

9.2. BASE DE DATOS IRIS ……………………………………………………………………. 9.2.1. Características de la base de datos …………………………………………………. 9.2.2. Resultados con Fisher ………………………………………………………………. 9.2.3. Resultados con K-vecinos ………………………………………………………….. 9.2.4. Resultados con el Método de la Montaña ………………………………………….. 9.2.5. Resultados con C-means ……………………………………………………………. 9.2.6. Resultados con Gustafson Kessel means …………………………………………… 9.2.7. Resultados con LAMDA …………………………………………………………… 9.2.8. Resultados con Redes Neuronales Artificiales (RNA) …………………………….. 9.2.9. Comparación de resultados con los diferentes métodos de clasificación …………..

38383939404141424244

9.3. DIAGNÓSTICO DE DIABETES ………………………………………………………….. 9.3.1. Características de la base de datos ………………………………………………….

4545

Page 6: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

vi

9.3.2. Resultados con Fisher ………………………………………………………………. 9.3.3. Resultados con K-vecinos ………………………………………………………….. 9.3.4. Resultados con el Método de la Montaña ………………………………………….. 9.3.5. Resultados con C-means …………………………………………………………… 9.3.6. Resultados con Gustafson Kessel means …………………………………………… 9.3.7. Resultados con LAMDA …………………………………………………………… 9.3.8. Resultados con Redes Neuronales Artificiales (RNA) …………………………….. 9.3.9. Comparación de resultados con los diferentes métodos de clasificación …………..

4545454546464648

9.4. DIAGNÓSTICO DE FALLAS SISTEMA DE TANQUES ACOPLADOS ……………… 9.4.1. Descripción del Sistema ……………………………………………………………. 9.4.2. Datos utilizados para el diagnostico ……………………………………………….. 9.4.3. Preprocesamiento de los datos ……………………………………………………… 9.4.4. Resultados con C-means …………………………………………………………… 9.4.5. Resultados con Gustafson Kessel means …………………………………………… 9.4.6. Resultados con LAMDA …………………………………………………………… 9.4.7. Comparación de resultados con los diferentes métodos de clasificación …………..

4949505152525253

10. ANÁLISIS DEL DESEMPEÑO DE LOS MÉTODOS DE CLASIFICACIÓN …………....

55

10.1.ANÁLISIS DEL TIEMPO DE EJECUCIÓN ……………………………………………. 10.1.1. Fisher ……………………………………………………………………………….. 10.1.2. K-vecinos …………………………………………………………………………… 10.1.3. Método de la Montaña ……………………………………………………………… 10.1.4. C-means y Gustafson Kessel means ……………………………………………….. 10.1.5. Redes Neuronales Artificiales (RNA) ………………………………………………

555555555656

10.2.COMPARACIÓN DE CARACTERÍSTICAS DE LOS MÉTODOS CON BASE ALSOFTWARE DESARROLLADO ………………………………………………………….

57

11. CONCLUSIONES ………………………………………………………………………………

58

APÉNDICE A: ALGUNOS CONCEPTOS PREVIOS ……………………………………………… 61 REFERENCIAS BIBLIOGRÁFICAS ……………………………………………………………… 62

Page 7: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

1

1. INTRODUCCIÓN El problema de clasificación se basa en agrupar y discriminar objetos, descritos mediante un vector de atributos, ya sea construyendo las clases o asignando los objetos a clases previamente definidas. La clasificación de sistemas tiene un amplio rango de aplicaciones, entre las que se encuentran: diagnóstico médico y psicológico [9], aplicaciones en economía [3], supervisión y diagnóstico de fallas en sistemas automáticos complejos [7] y modelaje de sistemas no lineales [2], entre otros. Dentro de las técnicas de clasificación son reconocidos métodos estadísticos como Discriminante Lineal, K-Vecinos y el Método de la Montaña los cuales asignan una sola clase a cada individuo; Métodos difusos como, Fuzzy C-Means (FCM) y Gustafson-Kessel Means (GKMeans), que asocian a cada individuo un grado de pertenencia a cada una de las clases; las Redes Neuronales Artificiales (RNA), las cuales permiten hacer una partición del espacio de datos; y LAMDA (Learning Algorithm for Multivariate Data Análisis) el cual se basa en determinar el grado de adecuación de un individuo a las diferentes clases. En primer lugar se hace una presentación de los fundamentos de los diferentes métodos de clasificación, posteriormente se hace una selección de los algoritmos a evaluar, los cuales fueron implementados computacionalmente y por último se hace una evaluación y comparación de los diferentes algoritmos mediante cuatro aplicaciones diferentes cuya diferencia radica en la separabilidad de los datos, la interpretación de los resultados obtenidos, los métodos que se pueden aplicar, el número de atributos, el número de individuos y el número de clases, permitiendo un análisis del desempeño de los algoritmos de clasificación en un escenario bastante amplio. Con respecto a las aplicaciones trabajadas, la primera de ellas es Nubes, que es una base de datos generada con una función de densidad de probabilidad cuyas características, dos clases completamente separables entre si e individuos con solo dos atributos, hacen que sea considerada un caso de estudio simple. La segunda aplicación es Iris, cuyos individuos son tipos de flores y presenta una mayor complejidad que la anterior base de datos, debido al incremento en el número de atributos y clases. La tercera aplicación es Diagnóstico de diabetes, que es una base de datos con características de mujeres sanas y con diabetes, en la que se tienen muchos atributos y clases poco separables. La última aplicación es el Diagnóstico de fallas en un sistema de tanques acoplados de la Universidad de los Andes, la cual tiene un enfoque diferente a las anteriores, ya que implica clasificación no supervisada. El objetivo principal de este proyecto es establecer, a partir de la evaluación realizada a los algoritmos, algunos lineamientos para la elección del método de clasificación apropiado según el problema a abordar.

Page 8: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

2

2. GENERALIDADES DE CLASIFICACIÓN

2.1. DEFINICIÓN El término clasificación se puede aplicar a múltiples actividades de la vida humana, se usa en muchas áreas del conocimiento como biología (genética), astronomía, ingeniería, control, economía, medicina y robótica. De forma general la clasificación se puede utilizar en cualquier contexto en el que se toma una decisión, se hace alguna predicción o un diagnóstico, basándose en información disponible en el momento [3]. Para establecer una definición a profundidad de la clasificación es necesario introducir el concepto de clase. Una clase representa un grupo de objetos con una característica común [15]. Las características que se usan para describir los objetos, conocidas como atributos, pueden ser cuantitativas o cualitativas. Los individuos pueden tener solo atributos cualitativos, solo cuantitativos o una mezcla de los dos. Algunos parámetros empleados para caracterizar una clase son: • Mutua exclusión: Si las clases son mutuamente excluyentes un elemento puede pertenecer únicamente a una

de ellas. En el caso contrario, el mismo elemento puede pertenecer de forma simultánea a varias clases. Las clases pueden ser mutuamente excluyentes o no serlo.

• Exhaustividad: Cuando se habla de un conjunto de clases exhaustivo se hace referencia a que la unión de todas las clases conforma el espacio de decisión, es decir, no existe ninguna parte del espacio que no pertenezca a una clase. El conjunto de clases puede ser exhaustivo o no serlo.

El problema de clasificación consiste en asignar un conjunto de individuos a distintas clases. Formalmente, sea

,..., 1 mxxX = un conjunto con m vectores en un espacio n-dimensional real nℜ , que pueden verse

geométricamente como puntos en nℜ , y sea ,..., 1 cωω=Ω un conjunto con c clases, tal que mc <≤2 . Un clasificador es cualquier mapeo de la forma [15]:

Ω→ℜnF : (1)

Este mapeo se lleva a cabo teniendo en cuenta una semejanza entre los datos, es decir, alguna característica como la distancia, la conectividad o la intensidad. Se busca que cada clase tenga objetos que sean similares entre sí e individuos de clases distintas deben ser “no similares”. El criterio utilizado es, generalmente, la optimización de una función objetivo relacionada con las semejanzas entre los datos que sirve como índice del desempeño de la clasificación. Aunque también se debe tener en cuenta que el clasificador obtenido debe clasificar apropiadamente datos diferentes a los que se emplearon para generarlo, siempre que éstos provengan de la misma distribución.

Page 9: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

3

2.2. TIPOS DE CLASIFICACIÓN El problema de clasificación puede dividirse en dos tipos: Clasificación supervisada: En este tipo de clasificación se cuentan con clases previamente definidas y el objetivo es establecer unas reglas para asignar a los individuos a una de esas clases. Para poder generar las reglas de clasificación se debe tener un conjunto de objetos cuya clase se conoce a priori, llamado conjunto de entrenamiento. Para validar las reglas generadas, éstas se prueban en unos datos distintos a los del conjunto de entrenamiento. Este otro grupo de datos es conocido como conjunto de prueba y tiene una distribución estadística igual a la del conjunto de entrenamiento. Clasificación no supervisada: En este tipo de clasificación no se establecen previamente las clases sino que se determinan a partir de los datos con los que se cuenta. Lo que se busca es agrupar a los individuos que tengan la mayor similitud entre sí. 2.3. DIVISIÓN DE LOS MÉTODOS DE CLASIFICACIÓN Se considera que los métodos de clasificación pueden dividirse en cuatro grupos según el procedimiento que se lleve a cabo. El primero de los grupos son los métodos estadísticos, en los que la clasificación se realiza teniendo en cuenta características estadísticas de los datos, tales como media, mediana, funciones de densidad de probabilidad, entre otras. El segundo grupo son los árboles de decisión, en los que la clasificación se realiza mediante una serie de preguntas sobre los atributos de los individuos. El tercer grupo son los métodos de agrupamiento, en los cuales se busca generar centros de clases, ya sea de forma determinística o difusa, y agrupar los datos alrededor de dichos centroides. Por último se tiene el grupo de las redes neuronales que es una imitación del funcionamiento de las neuronas en el cerebro humano. A continuación se listan algunos de los algoritmos más sobresalientes de cada uno de los anteriores grupos: 1. Estadísticos

a. Fisher b. Vecino más próximo c. K-vecinos

2. Árboles de decisión 3. Métodos de agrupamiento

a. Determinísticos i. K-means, también conocido como c-means no difuso

ii. H-means iii. HK-means iv. Método de la montaña

b. Difusos i. C-means

ii. Gustafson-Kessel means iii. LAMDA

4. Redes neuronales a. Algoritmo de Error Mínimo Cuadrado (LMS)

Page 10: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

4

b. Perceptrón c. Perceptrón con Bolsillo d. Backpropagation

2.4. ÁREAS DE APLICACIÓN Una de cualidades sobresalientes de las técnicas de clasificación es la diversidad de áreas en las que pueden utilizarse, desde ingeniería [2], medicina [9], hasta predicciones económicas [3]. Con base en la división propuesta por Michie, Spiegelhalter y Taylor en su libro Machine Learning, Neural and Statistical Classification [16] se considera la siguiente división de los tipos de problema para los que es aplicable la clasificación: 1. Decisiones de tipo económico, tales como, evaluación de solicitudes de crédito, clasificación de empresas

en cuanto a su rentabilidad, compra y venta de acciones, toma de decisiones sobre la intervención o no de instituciones financieras, entre otros.

2. Reconocimiento de imágenes. Se busca identificar el objeto del que proviene una imagen a partir de una

serie de atributos cualitativos o cuantitativos, como patrones de luz, reconocimiento de bordes, entre otros. De esta forma se pueden clasificar imágenes enteras o segmentadas. Estas técnicas son aplicadas a reconocimiento de caracteres, silueta de vehículos, imágenes con baja resolución, manuscritos, entre otros. [4]

3. Diagnóstico Médico. Cada enfermedad está asociada a una sintomatología particular, por eso algunas

enfermedades pueden detectarse mediante una serie de síntomas y características del paciente. 4. Otro tipo de problemas, tales como, predicción de fallas de máquinas [7], determinación del nivel de

calidad de la vivienda y control de calidad (productos defectuosos y no defectuosos).

Page 11: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

5

3. MÉTODOS ESTADÍSTICOS DE CLASIFICACIÓN Los métodos estadísticos son métodos de clasificación supervisada en los cuales se busca asignar un individuo con n atributos a una de las c clases ,..., 1 cωω . En la mayoría de los casos esto se hace definiendo fronteras de

decisión en el espacio nℜ que separen objetos de distintas clases según la distribución de probabilidad de los objetos de cada una. Para generar dichas fronteras de decisión cada individuo debe tener dos tipos de variables: 1) Atributos: Son las variables independientes que describen cada uno de los objetos. Deben ser de tipo

cuantitativo, pues de lo contrario debe realizarse un procedimiento previo para convertirlos a cuantitativos. 2) Clase: Es la variable que depende de los atributos cuya función es indicar la pertenencia de un individuo a

un grupo. La clasificación estadística se realiza a partir de la suposición de que los atributos tienen una distribución de probabilidad que depende de la clase del individuo. Es decir, un individuo x de la clase iω es una observación

aleatoria de la función de probabilidad )|( ixp ω [13]. Las clases pueden ser generadas a partir de varias reglas de decisión, entre las que sobresalen [4]: 1) Mínima distancia. Calcula la distancia euclidiana entre el vector de medias del individuo y el vector de

medias de cada clase y asigna al individuo a la clase con la que se obtuvo menor distancia. 2) Distancia de Mahalanobis: Calcula la distancia de Mahalanobis entre el vector de medias del individuo y el

vector de medias de cada clase y asigna al individuo a la clase con la que se obtuvo menor distancia. 3) Decisión de máxima probabilidad: También es conocida como regla de decisión Bayesiana. Se basa en que

la probabilidad a posteriori de que un individuo x pertenezca a la clase iω está dada por:

∑=

=∈

=N

jij

iiiii

xf

xfxf

xPxfxP

1)/(

)/()(

)()/()/(

ωπ

πωωωω

(2)

Donde iπ representa la probabilidad a priori de que un individuo pertenezca a la clase iω , )/( ixf ω

representa la función de densidad (condicional) de x en la clase iω y )(xf es la función de densidad de x. La regla se basa entonces en el cálculo de una distancia ponderada dada por:

)()(cov)(5.0)ln(cov5.0)ln( 1cc

Tccc xxad µµ −−−−= − (3)

Donde ca es la probabilidad con que un individuo pertenece a la clase cω , cµ es la media de la clase cω y

ccov es la matriz de covarianza de la clase cω . A continuación se exponen algunos algoritmos estadísticos que emplean las reglas antes mencionadas: discriminante lineal, k-vecinos y vecino más próximo.

Page 12: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

6

3.1. DISCRIMINANTE LINEAL El análisis discriminante es una de las técnicas de clasificación más antiguas y la que más se emplea en programas estadísticos. La mayoría de los métodos de análisis discriminante se basan en los siguientes supuestos: 1. Normalidad: Se asume que las poblaciones a partir de las cuales se obtienen las muestras tienen una

distribución normal. 2. Homogeneidad: Las matrices de covarianza de las poblaciones deben ser iguales entre sí. Estos supuestos se adecuan bastante bien a la realidad para poblaciones lo suficientemente grandes. Por consiguiente, para poblaciones pequeñas este método no es muy confiable. La idea principal del análisis discriminante es dividir el espacio muestral con rectas en dos dimensiones, planos en el caso de tres dimensiones y, en general, hiperplanos de n dimensiones. Para cada individuo

,...,, 21 naaax = la recta, el plano o hiperplano será una combinación lineal de sus atributos, determinada

por:

0)( bxbxy T += (4)

Esta es la función discriminante lineal que contiene un vector de pesos b y un vector de bias 0b . En el caso de un espacio bidimensional la recta que divide dos clases se define de tal forma que corte por la mitad la línea que une los centros de las clases. El mejor discrimínate es aquel que permite maximizar:

clase misma una dedentroy(x)deVarianzaclases diferentes entrey(x)deVarianza (5)

Esta maximización garantiza la mínima variación entre los datos de la misma clase y la máxima variación entre datos de distintas clases [17]. Uno de los métodos más sobresalientes del análisis discriminante es el método de Fisher que se presenta a continuación. 3.1.1. Fisher [14] La idea del algoritmo de Fisher es hacer una transformación del vector de atributos x, de dimensión n, a una representación y unidimensional, tal que las variables y, provenientes de individuos de clases diferentes estén lo más alejadas posible. Esta transformación es una combinación lineal de los n atributos del vector x de la forma:

xbxy T=)( (6)

Una de las características más importantes de este algoritmo es que no supone normalidad en los datos, aunque si homogeneidad.

Page 13: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

7

3.1.1.1. Fisher para dos clases Para cada una de las clases se define:

ix : Conjunto de los in individuos con n atributos de la clase iω , con media ix (vector de dimensión n)

,...,, 21 iiniii yyyy = : Conjunto de las in variables resultantes de las combinaciones lineales de los

individuos de ix . Se define un discriminante lineal como el presentado en la Ecuación (6) en el que cada ix tiene: (1) Valor esperado:

iT

iT

ii xbxEbyyE === )|()( ω (7)

(2) Estimación agrupada de la varianza

( ) ( )221

1 1

22

2

1 2

2211

−+

−+−=∑ ∑= =

nn

yyyys

n

k

n

ky

kk (8)

El objetivo es obtener los coeficientes jb de la combinación lineal que maximicen la separación entre 1y y 2y ,

dada por:

y

TT

y s

xbxb

s

yy 2121−

=−

(9)

Al maximizar este cociente se obtiene:

( ) 121

−−= agrupadaTT Sxxb (10)

Donde agrupadaS es una combinación de las matrices de covarianza de las dos clases y está dada por:

( ) ( ) ( ) ( ) 221

21

21

111

111

1 Snn

nSnn

nSagrupada

−+−

−+

−+−

−= (11)

Una vez generados los discriminantes de la forma:

( ) xSxxxbxy agrupadaTT ⋅−== −1

21)( (12)

Se pueden clasificar nuevas observaciones de la siguiente manera: (a) Se clasifica la observación ox en 1ω si:

( ) ( ) ( )211

2101

210 21)( xxSxxxSxxxy agrupada

Tagrupada

T +−≥−= −− (13)

Page 14: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

8

(b) Se clasifica la observación ox en 2ω si:

( ) ( )211

210 21)( xxSxxxy agrupada

T +−< − (14)

3.1.1.2. Fisher para múltiples clases Corresponde a la generalización del algoritmo de Fisher para dos clases. En el que se define:

ix : Conjunto de los in individuos con n atributos de la clase iω , con media ix (vector de dimensión n)

,...,, 21 iiniii yyyy = : Conjunto de las in variables resultantes de las combinaciones lineales de los

individuos de ix . x : Vector de dimensión n que tiene en la i-ésima posición la media, sobre todos los N datos, del atributo i.

( )( )Tic

iii xxxxnB −−= ∑

=1: Matriz de muestras inter grupos.

( ) ( ) ( )( )∑ ∑∑= ==

−−=+++=−=c

i

n

j

Tiijiijagrupadac

c

iii

ixxxxSnnnSnW

1 121

1...1 : Matriz de muestras intra grupos.

Se definen discriminantes lineales como los de la ecuación (6), en el que para cada ix , se define: 1) Valor esperado:

iT

iT

ii xbxEbyyE === )|()( ω (15)

2) Varianza:

bxCovbyVars Ty )()(2 == (16)

El objetivo es obtener los coeficientes jb para cada discriminante que maximicen la separación entre los iy ,

dada por:

( ) ( )2

1

2

21

2

Y

c

ii

Y

c

ii

s

xaxa

s

yy ∑∑==

−=

− (17)

Al maximizar este cociente se obtiene que los Tb son los valores propios de la matriz BW 1− escalados de tal

forma que 1=bSb agrupadaT

Una vez generados los discriminantes, xbxy T=)( se pueden clasificar nuevas observaciones de la siguiente

manera: Se clasifica la observación x en kω si:

( ) ( ) ( )∑∑∑===

−≤−=−n

ji

Tj

n

jk

Tj

n

jkjj xxbxxbyy

1

2

1

2

1

2 , para todo ki ≠ (18)

Page 15: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

9

3.2. VECINO MÁS PRÓXIMO [16] Es un método estadístico de discriminación en el que no se requiere hacer suposiciones a cerca de la distribución de los datos. El algoritmo se basa en la idea de que puntos en el espacio nℜ , que representan a los individuos, se encuentran poco distanciados cuando pertenecen a la misma clase. De esta forma, la idea es clasificar nuevos datos teniendo en cuenta, solamente, la clase del individuo que se encuentra a una menor distancia del nuevo objeto. El algoritmo se puede resumir en tres pasos: (1) Se busca el individuo más cercano al nuevo objeto. (2) Se mira la clase de ese individuo. (3) La clase de ese individuo es la que se asigna a la nueva observación. 3.3. K-VECINOS ("K NEAREST NEIGHBOR") [1, 16] Este método fue propuesto por Fix y Hodges en el año de 1951 y puede verse como una generalización del método del vecino más próximo y al igual que éste, tampoco hace suposiciones acerca de la distribución de probabilidad de los atributos de los individuos.

El algoritmo se fundamenta en el hecho de que puntos en el espacio nℜ , que representan a los individuos de la misma clase se encuentran poco distanciados. Por consiguiente, si se eligen los k individuos más cercanos al nuevo objeto, la clase a la que éste pertenecerá será la más recurrente dentro de esos k individuos. Los k individuos más cercanos a un objeto son conocidos como sus k vecinos y pueden determinarse calculando, por cualquier método, las k menores distancias entre todos los individuos y la nueva observación. (En el apéndice A pueden encontrar distintas formas de calcular distancias) El algoritmo se puede resumir en tres pasos: (1) Se buscan los k individuos más cercanos al nuevo objeto. Usualmente k es un número impar, 1 ó 3. (2) Se busca la clase ( iω ) más recurrente entre las clases de los k vecinos. Cuando haya varías clases que se

repiten igual número de veces la clase, iω , se elige al azar entre ellas.

(3) La clase iω es la que se asigna a la nueva observación.

Page 16: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

10

4. ÁRBOLES DE DECISIÓN [1] En los árboles de decisión la clasificación se realiza a partir de una secuencia de preguntas en la cual la siguiente pregunta depende de la respuesta actual. La clasificación se hace desde la raíz hacia las hojas. En cada nodo se evalúa un atributo y se baja por la rama asociada al valor de la instancia. El proceso se repite hasta llegar a una hoja en donde está el resultado. Cada rama del árbol es una restricción sobre los valores expresada como una conjunción. El árbol se caracteriza por su eficiencia en cuanto a la minimización del número de atributos requeridos para tomar la decisión. Para construir un árbol de decisión se deben realizar los siguientes pasos: a) Elaborar el conjunto de preguntas. b) Determinar la división de los nodos. c) Seleccionar la estrategia para detener el crecimiento del árbol. d) Asignar una clase a cada nodo terminal. 4.1. CARACTERÍSTICAS DEL CONJUNTO DE PREGUNTAS Sea ix un individuo con n atributos de la forma ni aaax ,...,, 21= , entonces el conjunto de preguntas debe tener

las siguientes características: a) Cada división de los nodos depende del valor de un solo atributo de ja

b) Si el atributo ja es continuo las preguntas deben ser de la forma ¿Es pa j ≤ ?, donde p es un número real

que define una frontera de decisión. c) Si el atributo ja es categórico y puede tomar valores mbbbA ,...,, 21= entonces las preguntas deben ser de

la forma ¿ ij Aa ∈ ? donde iA es un subconjunto cualquiera de A.

Page 17: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

11

5. MÉTODOS DE AGRUPAMIENTO Los métodos de agrupamiento son métodos de clasificación no supervisada en los que se busca, en la mayoría de los casos, obtener, con una población de N datos, los centros (centroides) ic de cada una de las c clases

,..., 1 cωω , tal que Nc ≤≤2 . En general, estos centroides se obtienen mediante la minimización de una función

objetivo que mide la disimilitud (o distancia) entre los in individuos de una misma clase. En los métodos determinísticos cada individuo pertenece a una sola clase y en los difusos un objeto pertenece a una clase con determinada probabilidad. Una vez determinados los centroides se procede a clasificar los individuos, en los determinísticos se asigna a cada individuo la clase correspondiente del centroide más cercano (Esto se puede hacer con cualquiera de las métricas mencionadas en el apéndice A) y en los difusos se asigna cada individuo a la clase con mayor grado de pertenencia. 5.1. DETERMINÍSTICOS En estos métodos cada uno de los individuos kx pertenece, única y exclusivamente, a una de las c clases,

,..., 1 cωω . Los siguientes métodos son algunos de los más representativos de este grupo.

5.1.1. K-means o C-means no difuso [5, 18]

Es un método de clasificación no supervisado que permite agrupar en c clases un conjunto de individuos con n atributos. El objetivo de este algoritmo es obtener, con una población de N datos, los centroides ic de cada una de las c

clases ,..., 1 cωω , tal que Nc ≤≤2 , y a partir de estos centroides clasificar los datos asignándole la clase del centroide más cercano. El procedimiento se basa en la minimización de una función objetivo de la forma:

∑ ∑∑= ∈=

=

=

c

i

N

jjij

c

ii

i

ixcxdJ

1 11 ,),(

ω (23)

Donde ),( ij cxd es la medida de distancia entre el individuo jx y el centroide ic . Una de las métricas más

utilizadas es la distancia Euclidiana (Ver apéndice A) Las clases se definen mediante una matriz binaria de pertenencia U, de dimensión Nc × , en la que el elemento iju es 1 si el j-ésimo individuo jx pertenece a la clase iω y 0 de lo contrario. La pertenencia de un

individuo a una clase se determina buscando el centroide más cercano a ese individuo:

≠≤

=contrario lo de0

todopara ),,(),(si1 ikcxdcxdu kjij

ij

Si se utiliza la distancia euclidiana los clusters generados se pueden ver, geométricamente, como hiperesferas alrededor de los centroides que agrupan los datos más cercanos a ellos. Cada uno de los individuos puede pertenecer a una sola clase y esto hace que la matriz de pertenencia U sea estocástica, por consiguiente, tiene dos propiedades importantes:

(1) ∑=

=c

iiju

11, Nj ,...,1=∀

Page 18: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

12

(2) ∑ ∑= =

=c

i

N

jij Nu

1 1

El algoritmo se puede resumir en 5 pasos: (1) Se supone un número conocido de c clases conocido tal que Nc ≤≤2 (N cantidad de individuos) (2) Se inicializan los c centroides de las clases, esto se hace generalmente de forma aleatoria. (3) Se determina la matriz de pertenencia U. (4) Cada uno de los centroides se mueve al centro de masa de cada partición:

= ∑

∈ ikkk

ii

xx

nc

ω,

1 (24)

(5) Se repiten los pasos 3 y 4 hasta que los centroides se modifiquen menos que cierta tolerancia predefinida o

cuando la función objetivo sea menor que cierto límite. Uno de los inconvenientes de este algoritmo es que no garantiza la convergencia a una solución óptima global, pues existe la posibilidad de que la solución obtenida sea un mínimo local, esto depende en gran medida de la inicialización de los centroides. 5.1.2. H-means y HK-means [10] H-means es un algoritmo propuesto como una mejora, en tiempo de convergencia, del algoritmo k-means. El procedimiento es exactamente igual al de k-means (Ver numeral 5.1.1) y la diferencia radica en que los c centroides iniciales se seleccionan aleatoriamente entre los individuos a clasificar. Este procedimiento en algunos casos puede detenerse en una solución degenerada, en la cual se presentan algunas clases vacías. La heurística modificada que permite solucionar este inconveniente es conocida como HKmeans, en la cual las clases vacías son insertadas en la solución como nuevas clases de un solo punto. 5.1.3. Método de la Montaña [18, 20, 21] Este es un método de agrupamiento difuso no supervisado propuesto por Yager y Filev cuyo fundamento está en el procedimiento que llevan a cabo los seres humanos al momento de generar clases de manera visual. El objetivo de este algoritmo es obtener, a partir de una población de N datos, los centros (centroides) ic de

cada una de las c clases ,..., 1 cωω , tal que Nc ≤≤2 . Es un procedimiento sencillo que se basa en escoger los n centroides de las clases de entre un conjunto de l posibles centros, obtenidos mediante una discretización del espacio n-dimensional. Esta elección se lleva a cabo mediante una medida de densidad conocida como función de la montaña. Los pasos que se llevan a cabo en el método de la montaña son: (1) Discretización del espacio objetivo:

En este primer paso se forma el conjunto V de los l posibles centros de clases. Para encontrar los elementos del conjunto se diseña una rejilla de discretización del espacio n-dimensional de decisión como la presentada en la Figura 5.1.

Page 19: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

13

Figura 5.1. Rejilla de discretización

Las intersecciones de las líneas que conforman la rejilla son los posibles centroides y, por lo tanto, los elementos de V. La rejilla de discretización puede estar uniformemente espaciada pero no es necesario. Es importante resaltar que el tiempo de ejecución del algoritmo dependerá en gran medida de la rejilla que se genere.

(2) Construcción de la función de la montaña: La función de la montaña representa una medida de la densidad de datos alrededor de los posibles centroides. La altura de la función de la montaña en un punto Vv∈ es:

∑=

=N

i

ixvd

evm1

22

),(

)( σ (25)

Dondeσ es una constante positiva que depende de cada aplicación y que determina la altura y la suavidad de la función de la montaña resultante, ix es cada uno de los N datos a clasificar y ),( ixvd es una medida

de distancia entre v y ix .

Como la función de la montaña es inversamente proporcional a la distancia que haya entre v y cada uno de los datos ix , se considera como una medida de densidad puesto que adquiere un mayor valor entre más

datos haya alrededor del punto v , por consiguiente, el objetivo es buscar entre los l posibles centroides los que tengan la mayor función de la montaña.

(3) Elección del primer centroide y destrucción de la función de la montaña: Una vez construida la función de la montaña se busca entre los l posibles centroides del conjunto V el que tenga la mayor función de la montaña y éste será el primer centroide, 1c . Para determinar el siguiente centroide es necesario utilizar un procedimiento conocido como destrucción de la función montaña, cuyo objetivo primordial es eliminar el efecto del centro identificado. La destrucción de la función de la montaña se realiza generando una función modificada de la montaña, que se obtiene al restar a la anterior función una función Gaussiana centrada en 1c . Por consiguiente, la altura de la función de la montaña modificada en un punto Vv∈ está dada por:

22mod

),( 1

)()()( β

cvd

ecmvmvm iificada

−= (26)

Donde β es una constante positiva que depende de cada aplicación, 1c es el centroide identificado, y

),( 1cvd es una medida de distancia entre v y 1c .

Page 20: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

14

Se puede ver que la cantidad restada es directamente proporcional a la altura de la función de la montaña en

1c e inversamente proporcional a la distancia entre cada punto v y 1c , logrando de esta forma que puntos

que rodean a 1c que, generalmente, también tienen valores altos de la función de la montaña, ahora tengan una función muy cercana a 0 y ya no sean elegidos como centros de clase.

(4) Determinación de los demás centroides: Una vez generada la función modificada de la montaña se busca entre los l posibles centroides del conjunto V el que tenga la mayor función de la montaña y éste será el segundo centroide, 2c , de nuevo se realiza la destrucción de la montaña y el procedimiento se repite hasta encontrar los c centros de las clases.

El algoritmo se puede resumir en 6 pasos: (1) Se supone un número de clases c, talque Nc <≤2 (2) Se discretiza el espacio objetivo. Se genera un conjunto V con todos los posibles centros de clase. (3) Se calcula la altura de la función de la montaña para todos los Vv∈ por medio de la ecuación (25) (4) Se elige el centroide ic como el elemento Vv∈ que tiene una mayor altura de la función de la montaña. (5) Se calcula la función modificada de la montaña mediante la ecuación (26) (6) Se repiten los pasos (4) y (5) hasta que se encuentre el número deseado de clases. 5.2. DIFUSOS Estos métodos son una extensión de los determinísticos en los que cada uno de los individuos a clasificar kx ,

tiene un grado, o probabilidad, de pertenencia a cada una de las c clases, ,..., 1 cωω . Este grado de pertenencia toma un valor entre 0 y 1, donde 1 significa que el individuo está justo en el mismo lugar geométrico que uno de los centroides generados con el método y, por consiguiente, el individuo pertenece por completo a esa clase. 5.2.1. C-means [5] Es un algoritmo propuesto por Bezdek en 1973 como una mejora del algoritmo k-means, pues también permite agrupar en c clases ,..., 1 cωω , tal que Nc ≤≤2 , un conjunto de N individuos con n atributos. Su diferencia radica en que cada dato puede pertenecer a una clase con un cierto grado, conocido como nivel de pertenencia. Este nivel de pertenencia se representa mediante la matriz de pertenencia U, de dimensión Nc × , en la que el

elemento iju adquiere un valor entre 0 y 1 que representa el grado de pertenencia del j-ésimo individuo jx a la

clase iω . Al igual que para K-means la matriz U, es estocástica.

El objetivo de este algoritmo es obtener los centros (centroides) ic , de cada una de las c clases y asignar a

cada individuo un grado de pertenencia a cada una de ellas. El procedimiento se basa, al igual que k-means, en la minimización de una función objetivo que mide la distancia entre los in individuos kx , de una misma clase. La función objetivo es de la forma:

Page 21: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

15

∑ ∑∑==

=

=

c

i

N

jij

mij

c

ii duJ

1 11 (27)

Donde ijd es la distancia euclidiana entre el individuo jx y el centroide ic (Ver apéndice A) y m es el nivel

de difusión entre clases que debe definirse exógenamente. Al minimizar esta función objetivo mediante multiplicadores de Lagrange [5] se obtiene:

( )

( )∑

=

==N

j

mij

N

jj

mij

iu

xu

c

1

1 (28)

1

1

12 −

=

= ∑

c

k

m

ik

ijij d

du (29)

Donde ijd es la distancia euclidiana entre el individuo jx y el centroide ic , ikd es la distancia euclidiana entre

el individuo kx y el centroide ic y m es el nivel de difusión. Como la distancia empleada en este algoritmo es la euclidiana los clusters generados se pueden ver, geométricamente, como hiperesferas alrededor de los centroides que agrupan los datos más cercanos a ellos. El algoritmo se puede resumir en 7 pasos: (1) Se supone un número de clases c, talque Nc <≤2 (2) Se elige un nivel apropiado de difusión entre las clases, m

(3) Se inicializa aleatoriamente la matriz de pertenencia U ( )Nc× talque ]1,0[∈iju y ∑=

=c

jiju

11

(4) Se calculan los centros de todas las clases. Ver Ecuación (28) (5) Se calculan, para todos los clusters c y todos los puntos N, las distancias euclidianas ( ijd ) entre todos los

centros de los clusters y cada dato. (6) Se actualiza la matriz de pertenencia de acuerdo con ijd :

Si 0>ijd entonces iju se calcula de acuerdo a la ecuación (29)

Si 0=ijd entonces el dato coincide con el centro y 1=iju

(7) Repetir desde el paso (5) hasta que el cambio en U sea menor a determinada tolerancia.

Uno de los inconvenientes de este algoritmo, al igual que para K-means, es que no garantiza la convergencia a una solución óptima global, pues existe la posibilidad de que la solución obtenida sea un mínimo local, esto depende, en gran medida, de la inicialización de la matriz U.

Page 22: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

16

5.2.2. Gustafson-Kessel means [5] Esta es una modificación, hecha por Gustafson y Kessel en 1979, al algoritmo de c-means en el que se pueden generar clusters con formas de hiperelipses teniendo en cuenta la distribución de los datos. El objetivo de este algoritmo, al igual que en c-means y k-means, es obtener, con una población de N datos, los centros (centroides) ic , de cada una de las c clases ,..., 1 cωω , tal que Nc ≤≤2 , y asignar grados de pertenencia de los individuos a las clases. El procedimiento se basa en la minimización de una función objetivo que mide la distancia entre los in

individuos kx , de una misma clase. La diferencia con c-means radica en que la distancia no se mide con la

norma euclidiana, sino con una norma adaptiva, en la que se tiene una matriz de norma inducida iA , para cada

una de las clases, obteniendo una distancia, entre el individuo jx y el centroide ic , de la forma:

( ) ( )ijiT

ijiijA cxAcxd −−= (30)

. Las matrices iA , son usadas como variables de optimización de tal forma que cada cluster adapta su norma a la forma de sus objetos, generando hiperelipsoides. La función objetivo para GK es de la forma:

∑ ∑∑==

=

=

c

i

N

jiijA

mij

c

ii duJ

1 11 (31)

Donde iju son los elementos de la matriz de pertenencia, iijAd es la norma adaptiva entre el individuo jx y el

centroide ic y m es el nivel de difusión. Para lograr una solución óptima cada iA debe fijarse de alguna manera. La más usual es mantener el volumen

constante, iiA ρ= , 0>iρ , y optimizar la “forma” del cluster. Usando multiplicadores de Lagrange [5] se

obtiene la siguiente solución óptima: (1) Matrices de norma inducida de la forma:

[ ] 1/1)det( −= in

iii FFA ρ (32)

Donde iF es la matriz de covarianza difusa del i-ésimo cluster, definida como:

=

=−−

= N

k

mik

N

k

Tikik

mik

iu

cxcxuF

1

1

)(

)()()( (33)

Donde iku son los elementos de la matriz de pertenencia ic y m es el nivel de difusión.

Page 23: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

17

(2) Centros de clases dados por:

( )

( )∑

=

== N

j

mij

N

jj

mij

iu

xuc

1

1 , para i=1, …, c. (34)

(3) Elementos de la matriz de pertenencia de la forma:

1

1

12 −

=

= ∑

c

k

m

ik

ijij d

du (35)

El algoritmo se puede resumir en 9 pasos: (1) Se supone un número de clases c, talque Nc <≤2 (2) Se elige un nivel apropiado de difusión entre las clases, m

(3) Se inicializa aleatoriamente la matriz de pertenencia U ( )Nc× talque ]1,0[∈iju y ∑=

=c

jiju

11

(4) Se calculan los centros dados por la ecuación (34) (5) Se calculan las matrices de covarianza de cada cluster definidas en la ecuación (33) (6) Calcular la matriz de norma inducida (Ver ecuación (32)) (7) Se calculan las distancias iijAd por medio de la Ecuación (30)

(8) Actualizar la matriz de pertenencia de acuerdo con iijAd .

Si 0>iijAd entonces iju se calcula con la ecuación (35)

Si 0=iijAd entonces el dato coincide con el centro y 1=iju

(9) Repetir desde el paso (5) hasta que el cambio en U sea menor a determinada tolerancia Una desventaja de este método es que no asegura la convergencia a una solución óptima. La elección de los centroides iniciales influye en el desempeño del algoritmo. Se podrían calcular estos centroides con otro método para mejorar el desempeño.

5.2.3. LAMDA (Learning Algorithm for Multivariate Data Analysis) [11, 12] LAMDA es un método de clasificación difusa, tanto supervisada como no supervisada, que se basa en analizar el grado de adecuación que tiene cada individuo a cada una de las clases y que permite la utilización de atributos cualitativos, sin necesidad de convertirlos a cuantitativos. Para llevar a cabo la clasificación cada individuo se debe analizar de forma independiente, determinando el grado de adecuación marginal, MAD (Marginal Adequacy Degree), de cada uno de sus n atributos. El iMAD corresponde a la contribución que tiene el i-ésimo atributo al grado de pertenencia del individuo a la clase m. De esta manera se halla un vector con los n MAD que representa la situación del individuo con respecto a la clase m.

Page 24: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

18

Para encontrar el grado de adecuación global del individuo a dicha clase, mGAD (Global Adequacy Degree), se combinan los n grados de adecuación marginal, mediante operadores difusos mixtos. 5.2.3.1. Cálculo del MAD con atributos cuantitativos

El MAD del individuo x, para el atributo j a la clase m, está dado por: • Función de tipo binomial

( ) jmjmjjmxxMAD −−= 11 ρρ (36)

• Función de distancia:

( ) mjmjmjmjjmddxMAD −−= − 111 ρρ (37)

mjjmj cxd −= (38)

• Función normal ( )

mj

mjj

mjjm

x

exMAD σ

µ

σ⋅

=2

2

1 (39)

Donde en cada caso jx corresponde al valor presente en el descriptor j para el individuo x, mjρ y mjc

corresponden, respectivamente, al valor medio y la mediana de los jx pertenecientes a la clase m. En el caso de

la función normal, mjµ es la media de los jx pertenecientes a la clase m y mjσ a la desviación estándar.

5.2.3.2. Cálculo del MAD con atributos cualitativos Es necesario para poder calcular los MAD conocer las modalidades que pueden tomar los atributos, pues el grado de adecuación marginal jmxMAD corresponde a la frecuencia de aparición de la clase m, para el atributo

j en la modalidad que está presente en el individuo x, es decir, mjjm fxMAD =

Tanto para clasificación supervisada como para clasificación no supervisada las frecuencias están dadas por:

1

)1()1()(

+

−+=

−−

m

kmjjk

mjk

mj n

fxff (40)

Donde jx es 1 si el descriptor j del individuo x tiene la modalidad que se está analizando y 0 de lo contrario.

Las frecuencias iniciales son el inverso de la cantidad de modalidades que tenga cada atributo. La única diferencia entre el aprendizaje supervisado y el no supervisado, es que en el primero la actualización de las frecuencias se hace solo mientras se estén analizando los datos de entrenamiento, mientras que para el no supervisado se actualizan cada que entre un nuevo dato.

Page 25: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

19

5.2.3.3. Cálculo del GAD El grado de adecuación global de un objeto a una clase se calcula haciendo una combinación de los grados marginales. El GAD para la clase m está dado por:

( ) ( ) ( )jmmmjmmmm MADxMADxMADxSMADxMADxMADxTGAD ...,,,1...,,, 2121 ααα −+= (41)

Donde α es el parámetro de exigencia y puede tomar valores entre 0 y 1 y T y S corresponden a cualquier norma T y S. 5.2.3.4. Clasificación de los datos En el caso de clasificación supervisada el objeto pertenecerá a la clase que tenga un mayor GAD, siempre y cuando este grado de adecuación supere un umbral mínimo. En el caso en que el GAD no superé dicho umbral el individuo se asigna a una clase de no información (NIC, Non Informative Class). Cuando se está haciendo clasificación supervisada los individuos que pertenezcan a la clase NIC se dice que no pertenecen a ninguna de las clases. Mientras que en el caso de aprendizaje no supervisado se genera una nueva clase con los individuos que pertenecen a la clase de no información. Cuando se trabaja con aprendizaje no supervisado en el momento de empezar la clasificación se comienza teniendo una clase NIC y cuando entre el primer individuo se genera una nueva clase de acuerdo al MAD de la clase inicial de no información. Cuando entra un nuevo individuo se evalúa si pertenece a una nueva clase existente calculando el MAD y el GAD de cada clase, de no ser así se analiza si supera el GAD de la clase NIC, en ese caso se asigna a ésta clase y de lo contrario se debe crear una nueva clase, como se hizo con el primer objeto.

Page 26: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

20

6. REDES NEURONALES ARTIFICIALES [6, 18]

Las Redes Neuronales Artificiales (RNA) son usadas para resolver problemas de clasificación. Estas, pretende imitar el funcionamiento del cerebro humano en varios aspectos: 1) Estructura: Las RNA, como su nombre lo indica, son un conjunto de neuronas interconectadas mediante

pesos sinápticos que corresponden a los “axones” del cerebro. De ésta forma, las neuronas en las RNA reciben como entradas la suma ponderada de la salida de otras neuronas.

2) Funcionamiento de cada neurona: Las RNA buscan imitar el proceso de activación de las neuronas biológicas, en las cuales el nivel de actividad eléctrica de los axones se pondera mediante el peso que da la sinapsis y así se determina la salida de la neurona, representada en cierta actividad eléctrica.

6.1. MODELO DE UNA NEURONA

Figura 6.1. Modelo de una neurona

En el modelo de una neurona artificial, como el presentado en la Figura 6.1, hay tres elementos básicos [10]: 1) Conexiones o sinapsis: Determinan el comportamiento de la neurona pues son las que tienen los pesos con

los que se pondera la entrada. 2) Sumador: Realiza la suma ponderada de las entradas con los pesos de las respectivas sinapsis. 3) Función de activación: Limita la amplitud de la salida de la neurona.

Puede ser de varios tipos:

NOMBRE DESCRIPCIÓN GRÁFICA

Limitador duro Función escalón dada por:

>≤

==0 si 1

0 si 0)()(

zz

zuzf LD

Limitador duro simétrico

>≤−

=0 si 1

0 si 1)(

zz

zf LDS

Logarítmica zezf LOG ⋅+=

−β1

1)(

Tangente hiperbólica )tanh()( zzf TH =

Page 27: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

21

Lineal positiva

>≤

=0 si z 0 si 0

)(zz

zf LP

Lineal zzf L =)(

Base Radial 2

)( zezf BR−=

Saturación Lineal

≥<<

≤=

0 si 110 si z

0 si 0)(

zz

zzf SL

Saturación Lineal Simétrica

≥<<

−≤=

1 si 111- si z

1 si 1)(

zz

zzf SLS

Tabla 6.1. Tipos de Funciones de Activación

6.2. FUNCIONAMIENTO DE UNA NEURONA Sea ix un vector en el espacio n-dimensional, de la forma ni aaax ,...,, 21= , la operación que se lleva a cabo

en la neurona es: 1) Establecer el estado interno de la neurona i:

01

.),( wawwxguk

jjijii +== ∑

= (42)

El peso 0w es necesario pues no siempre los datos tienen media 0. 2) Establecer la salida de la neurona, que corresponde a la función de activación evaluada en el estado interno

de la neurona:

( )),()(si wxgfuf ii == (43)

6.3. PARÁMETROS PARA EL DISEÑO DE UNA RED NEURONAL ARTIFICIAL

Tanto el número de capas que van a constituir la red como la cantidad de neuronas que estarán presentes en cada capa, deben ser determinados en el momento en el que se diseña la red. También existen técnicas que permiten modificar dichas cantidades durante el aprendizaje, tal es el caso de las redes autoajustables.

Page 28: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

22

En el caso específico de clasificación, la capa de salida de la RNA, corresponde al número de clases que se tenga. Es por esto, que los problemas de clasificación que se pretenden resolver con redes neuronales deben tener definido, de antemano, el número de clases. Entre mayor sea el número de clases mayor será el número de neuronas de salida, generando un aumento considerable en el tiempo de cómputo empleado en el algoritmo de aprendizaje. 6.4. APRENDIZAJE DE UNA RED NEURONAL ARTIFICIAL El aprendizaje de una red neuronal es el proceso mediante el cual los parámetros de la red, comúnmente los pesos, se adaptan a la distribución de los datos que pertenecen al conjunto de entrenamiento. De manera más específica cuando se realiza clasificación supervisada el proceso de aprendizaje se puede resumir en tres pasos: se calcula la respuesta para un individuo de entrenamiento, se compara la salida con la esperada y se modifican los pesos de la red para intentar encontrar la función que permita hacer la partición del espacio de forma adecuada. Uno de los puntos más importantes a tener en cuenta es que el objetivo no es que la red haga una adecuada partición del espacio solo con los datos de entrenamiento, sino que la red generalice, es decir, de respuestas adecuadas a estímulos nuevos. Los algoritmos de aprendizaje de RNA difieren según el tipo de red, la función de error y el algoritmo de optimización. 6.4.1. Redes de una capa Para las redes de una sola capa se encuentran, entre otros, el algoritmo de error mínimo cuadrado (LMS), algoritmo del perceptrón y algoritmo del perceptrón con bolsillo. 6.4.1.1. Algoritmo de error mínimo cuadrado (LMS) Sea eN el número de datos de entrenamiento cada uno con un vector de n atributos ni aaax ,...,, 21= y con una

clase ,..., 1 ciy ωω=Ω∈ , para este algoritmo la función de error es una función de distancia dada por:

( )[ ]∑=

−=e

i

N

ii wxgywE1

2,21)( (44)

El algoritmo debe buscar el peso óptimo, mediante gradiente descendiente, tal que:

)(min* wEww

= (45)

El algoritmo se puede resumir en 5 pasos:

1) Inicializar los pesos ( )0(w ) en un punto aleatorio 2) Escoger una pareja ( )ii yx , al azar 3) Calcular el error de la iteración k, dado por:

( )[ ]∑=

−=e

i

Nk

iik wxgywE

1

2)()( ,21)( (46)

Page 29: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

23

4) Actualizar los pesos mediante búsqueda de gradiente:

( ))()()1( kkk wwEww ∇−=+ µ (47)

Donde µ es la tasa de aprendizaje 5) Repetir los pasos 2, 3 y 4 hasta que se alcance una condición de terminación.

6.4.1.2. Algoritmo del perceptrón Sea eN el número de datos de entrenamiento cada uno con un vector de n atributos, ni aaax ,...,, 21= y con

una clase 1,1−=Ω∈iy , con estos supuestos se puede decir que los datos están clasificados correctamente si

0),( >⋅ ii ywxg , por consiguiente, la función de error del perceptrón está dada por:

( )∑=

⋅−=e

i

Nii ywxgwE

1,)( (48)

El algoritmo debe buscar el peso óptimo, por medio de gradiente descendiente, tal que

)(min* wEww

= (49)

El algoritmo se puede resumir en 5 pasos:

1) Inicializar los pesos ( )0(w ) en 0 2) Escoger una pareja ),( ii yx al azar 3) Calcular el error dado por la ecuación (48) 4) Actualizar los pesos mediante búsqueda de gradiente, de la misma forma que se hace en LMS (Ver ecuación

(47)) 5) Repetir los pasos 2, 3 y 4 hasta que se alcance una condición de terminación.

6.4.1.3. Algoritmo del perceptrón con bolsillo Este algoritmo hace los mismos supuestos y tiene la misma función de error que el perceptrón, la diferencia está en que el algoritmo va guardando en el “bolsillo” la mejor solución que haya encontrado mientras se va ejecutando y cuando se alcanza la condición de terminación el peso que se utilizará será el que esté en el bolsillo, que no es necesariamente el de la última iteración. 6.4.2. Redes de varias capas Para las redes de varías capas (como la presentada en la Fig. 6.2) también existen varios algoritmos de aprendizaje, entre los que se encuentran Perceptrón Multinivel, Backpropagation, Momento, Tasa de Aprendizaje Variable, Método de Newton, Método de Quasi-Newton, entre otros. Las redes de varias capas tienen generalmente una estructura como la que se puede ver en Fig. 6.2 con una única neurona en la capa de salida que suele tener una función de activación lineal

Page 30: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

24

Figura 6.2. Modelo de una Red Neuronal multicapa

6.4.2.1. Algoritmo del perceptrón multinivel Es la generalización del algoritmo del perceptrón presentado en el numeral 6.4.1.2 6.4.2.2. Backpropagation Sea eN el número de datos de entrenamiento cada uno con un vector de n atributos, ni aaax ,...,, 21= y con

una clase ,..., 1 ciy ωω=Ω∈ , la función de error del perceptrón está dada por:

( )[ ] ∑∑==

=−=e

i

e

i

N

p

N

ii EwxhywE11 2

1,21)( 2 (50)

Donde ),( wxh i es la salida de la red a ix . El algoritmo debe buscar el peso óptimo, mediante gradiente descendiente, tal que:

)(min* wEww

= (51)

Es importante tener en cuenta que para las neuronas de las capas internas el estado está dado por la salida de las neuronas de la capa anterior:

0. wswci

ijij += ∑ (52)

La característica más importante de este algoritmo es que los pesos se calculan desde la salida de la red hacia atrás. Para esto se utiliza una variable jδ dada por:

iij ywxh −= ),(δ , para la neurona de salida (53)

∑∂∂

∂∂=

k jk

kpj cc

cEδ , para las demás neuronas. (54)

Page 31: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

25

El procedimiento se resume en calcular la salida de la red ),( wxh i , calcular jδ desde la salida a las capas

anteriores y actualizar los pesos. Esto se puede ver en 6 pasos:

1) Inicializar los pesos ( )0(w ) en un punto aleatorio. 2) Escoger una pareja ( )ii yx , al azar

3) Calcular calcula la salida de la red ),( wxh i

4) Calcular ( ))(kwwE∇ y los jδ

5) Actualizar los pesos mediante búsqueda de gradiente (Ver ecuación (47)) 6) Repetir los pasos 2, 3 , 4 y 5 hasta que se alcance una condición de terminación.

Page 32: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

26

7. ALGORITMOS A EVALUAR Y JUSTIFICACIÓN DE LA ELECCIÓN Luego de la investigación realizada sobre cada uno de los métodos se decidió que los que se van a trabajar son: Fisher, K-vecinos, C-means, Gustafson Kessel, Método de la Montaña, LAMDA y Perceptrón Multinivel. Los criterios empleados para la selección de dichos algoritmos fueron: • Evitar en lo posible la pérdida de generalidad en la evaluación. Por lo que se procuró escoger como mínimo

un algoritmo representativo de cada grupo. • Análisis teórico de los métodos. Hay algunos métodos que son modificaciones de otros por lo que se buscó

escoger aquellos que teóricamente presentan un mejor desempeño. • Disponibilidad de herramientas elaboradas con anterioridad. 7.1. MÉTODOS ESTADÍSTICOS Durante mucho tiempo se ha considerado a los métodos estadísticos como la rama más importante en clasificación tanto a nivel aplicado como a nivel investigativo [3], razón por la cual, se considera un grupo relevante al momento de realizar un análisis comparativo de los métodos de clasificación. Dos de los métodos más utilizados, con diversidad de aplicaciones y que pueden considerarse como unos de los más representativos de este grupo son Análisis Discriminante y K-Vecinos. En cuanto al Análisis Discriminante cabe resaltar que es el método más antiguo y más utilizado en paquetes estadísticos, tales como Statistical Package for Social Sciences (SPSS) y Statistical Analysis Software (SAS) razón por la que se decidió seleccionarlo como objeto de análisis de este trabajo. Por otro lado, el método de K-Vecinos brinda un procedimiento un poco más intuitivo y una de sus características más importante es que no asume distribuciones de probabilidad a priori de los datos lo que lo hace bastante versátil. 7.2. MÉTODOS DE AGRUPAMIENTO Entre los métodos de agrupamiento se seleccionó el método determinístico de la montaña ya que es uno de los algoritmos que menos se ha empleado en la solución de problemas de clasificación, por lo cual se considera interesante implementarlo y evaluarlo. Adicionalmente se eligieron algunos métodos difusos pues son considerados una mejora a los determinísticos y, a diferencia de los métodos estadísticos, estos brindan la posibilidad de determinar grados de pertenencia de los individuos a cada una de las diferentes clases. Por consiguiente, se consideran importantes en la evaluación de algoritmos de clasificación. El método C-means es el algoritmo básico de agrupamiento difuso, es ampliamente utilizado y se cuenta con diversas herramientas computacionales para implementarlo por lo que se eligió como uno de los algoritmos para analizar en este trabajo. En cuanto a Gustafson Kessel means se considera una mejora del algoritmo de C-means en cuanto a la forma de los clusters generados por lo cual se considera interesante evaluarlo y compara su desempeño con C-means. Por último se eligió el método LAMDA ya que permite el manejo de atributos tanto cuantitativos como cualitativos sin un tratamiento previo de los mismos y no requiere una previa definición del número de clases. 7.3. REDES NEURONALES Las redes neuronales son objeto de gran cantidad de estudios, han sido ampliamente trabajadas y se ha visto que entregan muy buenos resultados. La configuración de las redes neuronales más utilizada es el perceptrón multinivel, por lo que siendo la más representativa y sencilla de trabajar será objeto de análisis de este trabajo.

Page 33: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

27

8. SOFTWARE DESARROLLADO En un primer momento se implementó el método de la montaña en Matlab pero viendo que los tiempos de ejecución eran bastante lentos (1-20 minutos) se decidió utilizar Java debido a su versatilidad y eficiencia. El programa desarrollado en Java, MITRA 1.1, es una herramienta para llevar a cabo clasificación con diferentes algoritmos: Fisher y K-vecinos, del grupo de los métodos estadísticos y C-means, Gustafson Keseel y Montaña, del grupo de los métodos de agrupamiento difuso. En este programa se encuentran implementados la mayoría de los métodos que se eligieron para evaluar en el presente trabajo, los cuales fueron desarollados en Java teniendo en cuenta su versatilidad y, además, buscando garantizar una igualdad de condiciones computacionales para todos los algoritmos y así hacer más eficiente la evaluación. 8.1. FORMA DE INSTALACIÓN Para la utilización de MITRA 1.1., sino se tiene instalada la máquina virtual de Java en el computador se debe instalar Java 2 Runtime Environment (J2RE). Ya instalado el Java 2 Runtime Environment lo único que se debe hacer es abrir runme.bat (Que se encuentra en la carpeta clasifica de MITRA 1.1) 8.2. INTERFAZ CON EL USUARIO La interfaz de la herramienta desarrollada puede verse en la siguiente figura:

Figura 8.1. Interfaz de la herramienta desarrollada

Page 34: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

28

Como se puede ver en la Fig. 8.1 la interfaz tiene 4 campos: 1) Menú con funciones adicionales a la clasificación.

En esta barra se encuentran tres opciones: a) Cargar Datos:

Hay dos submenús en la opción de cargar datos: (1) Cargar datos para generar clasificadores y (2) Cargar datos para clasificar. Los datos deben estar en un archivo de texto (.txt) y no se necesita almacenarlos en una carpeta específica. Deben tener las siguientes características: i) Cada fila corresponde a un individuo. ii) Todos los individuos deben tener el mismo número de atributos y deben estar separados con

espacios o tabuladores. iii) Los atributos y las clases deben ser cuantitativos o cualitativos representados con una sola letra iv) En el caso en que se incluya la clase de los individuos, ésta se debe introducir en la última columna

de cada fila. v) El archivo no debe tener encabezados (títulos) ni filas vacías al comienzo. Cuando se seleccione alguno de los dos submenús aparecerá una ventana de selección de archivos (Ver Fig. 8.2 (a)) en la que se debe elegir el archivo a cargar. Posteriormente aparecerá una ventana en la que se pregunta si el archivo contiene o no las clases de los individuos (Ver Fig. 8.2 (b)), una vez se responda esta pregunta los datos quedarán cargados.

Figura 8.2. Ventanas para cargar archivos

Es importante notar que no existen limitaciones en cuanto al número de individuos o atributos a cargar, aunque en ocasiones hay métodos que no se pueden correr cuando hay muchos individuos o muchos atributos dependiendo de la capacidad del computador utilizado.

b) Gráficas: Permite realizar gráficas cuando los datos tienen dos atributos. Las gráficas que se pueden realizar se encuentran clasificadas en varios grupos: i) Gráfica de los datos: Grafica los datos por clases, en el caso en el que no se conozcan las clases se

grafican todos los datos de un mismo color. En la Fig. 8.3 (a) se puede ver un ejemplo de datos graficados.

ii) Grafica de los discriminantes: Se grafican los discriminantes generados con el método de Fisher.

Un ejemplo se presenta en la Fig. 8.3 (b):

iii) Graficas del método de la montaña:

Page 35: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

29

- Graficar los centroides generados. Un ejemplo se presenta en la Fig. 8.3 (c): - Graficar los puntos de discretización del espacio: Grafica la rejilla de discretización que se

generó y con la que se obtuvieron los centroides óptimos. Un ejemplo se puede ver en la Fig. 8.3 (d)

iv) Graficas del método de c-means:

- Graficar los centroides generados - Graficar el recorrido que hacen los centroides antes de llegar al óptimo. Un ejemplo de esta

gráfica se presenta en la Fig. 8.3 (e) - Graficar las curvas de nivel de los centroides: Se realiza un bosquejo de los círculos que están

alrededor de los centroides, como se puede ver en la figura 8.3 (f)

Figura 8.3. Gráficas posibles

v) Graficas del método de Gustafson-Kessel:

- Graficar los centroides generados En este menú además se encuentra la posibilidad de borrar las gráficas generadas.

c) Ayuda: Se presenta información relevante del programa.

2) Panel de control de los algoritmos de clasificación: a) Archivo de salida:

Este campo se encuentra en los métodos estadísticos, los métodos de agrupamiento y la clasificación de nuevos datos, ya que éstos generan un archivo de salida con los resultados en formato de página web. Este archivo se generará en la carpeta de resultados de MITRA 1.1 (que no se debe borrar) con el nombre que se especifique en el campo de Archivo de Salida. Si no se ingresa ningún nombre se generará un archivo llamado resultados.html En la figura 8.1 se pueden ver los campos en los que se introduce el nombre de los archivos de salida.

b) Porcentaje de datos de entrenamiento: Tanto para los métodos estadísticos como para los de agrupamiento se debe indicar el porcentaje (0-100) de datos que se desea utilizar para generar los clasificadores. El programa seleccionará de manera aleatoria el conjunto de entrenamiento y los datos sobrantes serán los llamados datos de prueba. En la figura 8.1 se pueden ver los campos en los que se introduce el porcentaje de datos de entrenamiento.

Page 36: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

30

c) Métodos estadísticos:

i) Fisher: No requiere parámetros adicionales. ii) K- Vecinos: Se debe ingresar el número de vecinos que se desea.

d) Métodos de agrupamiento: i) Método de la montaña: Los parámetros que deben introducirse son:

- Partes por eje: Indica la cantidad de partes en las que se desea dividir cada eje a la hora de generar el espacio de discretización. Es el mismo para todos los ejes y la única condición en que sea positivo.

- Sigma: Es la constante constante positiva que determina la altura y la suavidad de la función de la montaña presentada en la ecuación (25)

- Beta: Es la constante constante positiva que se utiliza al calcular la función modificada de la montaña que se puede ver en la ecuación (26)

ii) C-means y Gustafson Kessel: Los parámetros que se deben introducir son: - Nivel de difusión entre clases: Debe ser mayor que 1

- Máximo cambio en U: Indica el criterio de convergencia del algoritmo, cuando )1()( −− kk UU es menor que el máximo cambio en U ingresado el algoritmo se detiene. Debe ser positivo.

- Rho: Este es un parámetro que solo se utiliza para el algoritmo de Gustafson Kessel y que representa el volumen de los clusters. En este programa el volumen de los clusters se asume el mismo para todos. Si no se conoce información a priori de las clases es conveniente dejar constante el Rho en 1 para que no influya a la hora de generar los clasificadores. Rho debe ser positivo [5].

e) Clasificación de nuevos datos:

La clasificación de nuevos datos se puede llevar a cabo utilizando cualquiera de los siguientes algoritmos: Fisher, K-vecinos, Montaña. C-means y Gustafson Kessel. Para poder clasificar los nuevos datos con cualquiera de estos métodos es necesario haber generado antes un clasificador con el algoritmo que se desea utilizar. En el caso de k-vecinos solo se necesita haber cargado unos datos mediante la opción Cargar datos para generar clasificadores del menú Datos. Existen dos formas de clasificar nuevos datos: i) Clasificar datos desde Archivo: En este caso los datos se deben cargan en la opción cargar datos

para clasificar del Menú Datos y se genera un archivo con las clases de los nuevos datos. ii) Clasificar datos uno a uno: En este caso se abrirá una ventana (Ver Fig. 8.4) en la que se deben

ingresar los atributos del nuevo dato separados por espacios y se obtendrá allí mismo la clase.

Figura 8.4. Ventana para Clasificar datos uno a uno

3) Gráfica: Este es el espacio de la interfaz en que se presenta la gráfica. 4) Barra con el estado del Programa o información relevante para el usuario: En esta barra de estado se

muestra lo que sucede en el programa, posibles errores, generación de archivos o gráficas, entre otros.

Page 37: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

31

9. RESULTADOS Para evaluar los algoritmos seleccionados y poder compararlos se utilizaron diferentes bases de datos que difieren en su número de clases, en su tipo y número de atributos y en la cantidad de individuos. Los datos utilizados corresponden a dos problemas de partición pura y dos problemas de diagnóstico. Los dos primeros son las bases de datos Nubes e Iris y los de diagnóstico son el diagnóstico de la diabetes y el diagnóstico de fallas en un sistema de tanques acoplados que se encuentra en el laboratorio de la Universidad de los Andes. En las pruebas en las que se conocían a priori las clases de los datos, es decir, Nubes, Iris y Diagnóstico de diabetes, se emplearon todos los algoritmos. En este caso los datos fueron divididos en dos conjuntos disjuntos entre sí: datos de entrenamiento (60%) y datos de prueba (40%), los primeros se emplearon para generar el clasificador y los segundos para validarlo. Para determinar dichos conjuntos los datos de prueba se eligieron de manera aleatoria entre todos los datos y los individuos restantes conforman el conjunto de entrenamiento. En el diagnóstico de fallas no se emplearon los métodos supervisados ya que ellos requieren conocer a priori las clases de los datos y en este caso el objetivo es determinar los estados del sistema a partir de los datos, por esta razón tampoco se separaron los datos en conjuntos sino que todos se emplearon para generar el clasificador. En todas las pruebas realizadas se buscó ajustar los parámetros del clasificador para obtener la mejor respuesta, es decir, aquella con el menor porcentaje de error en los datos de prueba porque este parámetro indica, de cierta manera, una generalización en el aprendizaje. Para realizar el ajuste, cuando había un solo parámetro se escogió el valor que arrojó el menor error en los datos de prueba y, cuando había más de uno, se variaron los parámetros independientemente, modificando uno y dejando fijos los demás. Los valores de los parámetros fijos se escogían al principio en valores aleatorios y, a medida que se iban haciendo las pruebas, en los valores que fueran dando los mejores resultados. En cuanto al software en el que se hicieron las pruebas para Fisher, K-vecinos, C-means y Gustafson Kessel se usó MITRA 1.1., para LAMDA se usó el software desarrollado en Java por Isaza en su trabajo con este método [12] y para las redes neuronales se utilizó el toolbox de Matlab. 9.1. BASE DE DATOS “NUBES” 9.1.1. Características de la base de datos Es una base de datos que fueron generados aleatoriamente con una distribución de probabilidad. Tiene 2 clases y 5000 individuos, de los cuales hay un 50% en cada una de las clases, la distribución gráfica de los datos se presenta en la Fig. 9.1. Cada uno de los individuos está descrito por 2 atributos cuantitativos.

Figura 9.1. Distribución de las clases en la base de datos Nubes

Page 38: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

32

9.1.2. Resultados con Fisher En la Fig. 9.2 se presentan los discriminantes obtenidos. El resultado obtenido se presenta en la Tabla 9.1.

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

0.7667 0.75 0.109

Tabla 9.1. Resultados de Fisher para Nubes

Figura 9.2. Discriminantes obtenidos en Nubes

9.1.3. Resultados con K-vecinos Las pruebas se hicieron variando el número de vecinos. Los resultados se presentan en la Fig. 9.3 y el mejor resultado en la Tabla 9.2.

Error en los datos de Prueba

0

0,2

0,40,6

0,8

1

1 2 3 4 5 6 7 8 9 10Número de Vecinos

% e

rror

Tiempo de Ejecución

0

5

10

15

1 2 3 4 5 6 7 8 9 10Número de Vecinos

Tiem

po (s

)

Figura 9.3. Error en los Datos de Prueba y Tiempo de Ejecución con K-vecinos para Nubes

Vecinos % Error Datos Prueba Tiempo de ejecución (Segundos)

8 0.2 6.156 Tabla 9.2. Mejor Resultado de K-vecinos para Nubes

9.1.4. Resultados con Método de la Montaña La primera prueba se hizo variando el número de partes por eje, y manteniendo constante tanto el valor de Sigma como el de Beta, en 1 y 2, respectivamente. Los resultados obtenidos se pueden apreciar en la Fig. 9.4. El mejor resultado se presenta en la Tabla 9.3.

Errores

0

2

4

2 4 6 8 10 12 14 16 18 20Partes de los Ejes

% E

rror

Error Entrenamiento Error Prueba

Tiempo de Ejecución

0

1

2

3

4

2 4 6 8 10 12 14 16 18 20Partes de los Ejes

Tiem

po (s

)

Figura 9.4. Resultados para Nubes con el Método de la Montaña variando el número de Partes por Eje

Page 39: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

33

Partes

% Error Datos Entrenamiento

% Error Datos Prueba Tiempo de Ejecución (Segundos)

13 0.5 0.4 1.75

Tabla 9.3. Mejor Resultado del Método de la Montaña para Nubes variando las partes por eje En la segunda prueba el parámetro que se varió fue σ y el valor que se utilizó para el número de partes correspondió al que arrojó mejores resultados en la anterior prueba, es decir, 13. Beta se mantuvo en el valor 2. En la Figura 9.5 se presentan los resultados de está prueba y en la tabla 9.4 se muestra el mejor resultado.

Errores

0

5

10

15

20

25

0,1 0,8 2 4 7 9 20Sigma

% E

rror

Error Entrenamiento Error Prueba

Tiempo de ejecución

1,6

1,65

1,7

1,75

1,8

0,1 0,8 2 4 7 9 20Sigma

Tiem

po (s

)

Figura 9.5. Resultados para Nubes con el Método de la Montaña variando Sigma

Sigma % Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

0.8 0.33 0.2 1.75 Tabla 9.4. Mejor Resultado del Método de la Montaña para Nubes variando Sigma

La última prueba se hizo cambiando el valor de β y dejando los otros dos parámetros fijos en los valores que arrojaron mejores resultados en las anteriores pruebas. Los resultados se muestran en la Fig. 9.6 y el mejor en la tabla 9.5

Errores

0123456

0,1 1 2 4 7 9 20Beta

% E

rror

Error Entrenamiento Error Prueba

Tiempo de ejecución

1,65

1,7

1,75

1,8

1,85

1,9

0,1 1 2 4 7 9 20Beta

Tiem

po (s

)

Figura 9.6. Resultados para Nubes con el Método de la Montaña variando Beta

Beta % Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

2 0.33 0.2 1.75 Tabla 9.5. Mejor Resultado del Método de la Montaña para Nubes variando beta

En la tabla 9.6 y en la Fig. 9.7 se presenta mejor resultado con el método de la Montaña.

Page 40: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

34

Partes por

eje Sigma Beta

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

13 0.8 2 0.33 0.2 1.75 Tabla 9.6. Mejor Resultado del Método de la Montaña para Nubes

Figura 9.7. Mejor Resultado obtenido con el Método de la Montaña para Nubes.

Centroides y rejilla de discretización

9.1.5. Resultados con C-means Se realizó una prueba en la que se dejó fijo en 0.02 el criterio de parada, es decir, el máximo cambio en U y se varió el nivel de difusión entre clases. Los resultados se pueden ver en la Fig. 9.8 y el mejor se presenta en la tabla 9.7 y en la Fig. 9.9 se pueden apreciar los centroides obtenidos y su recorrido antes de llegar al óptimo.

Errores

0

0,5

1

1,5

2

1,5 2,5 4 6 8 10 20 40Nivel de Difusión

% E

rror

Error Datos Entrenamiento Error Datos Prueba

Tiempo de Ejecución

00,20,40,60,8

11,21,4

1,5 2,5 4 6 8 10 20 40Nivel de Difusión

Tiem

po (s

)

Figura 9.8. Resultados de C-means para Nubes.

Nivel de difusión

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

10 0.5667 0.5 0.532 Tabla 9.7. Mejor Resultado de C-means para Nubes

Figura 9.9. Mejor Resultado Obtenido con C-means para Nubes.

Centroides, recorrido de los centroides y bosquejo de las curvas de nivel. 9.1.6. Resultados con Gustafson Kessel Means Teniendo en cuenta que no se tenía información a priori de los volúmenes de los cluster, éstos se mantuvieron constantes en 1 [5].

Page 41: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

35

El parámetro que se varió fue el nivel de difusión entre clases. Los resultados obtenidos se presentan en la Fig. 9.10 y el mejor de ellos se puede ver en la tabla 9.8 y la Fig. 9.11

Errores

00,5

11,5

2

2,53

1,5 2,5 4 6 8 10 20 40Nivel de Difusión

% E

rror

Error Datos Entrenamiento Error Datos Prueba

Tiempo de Ejecución

00,20,40,60,8

11,21,41,61,8

1,5 2,5 4 6 8 10 20 40Nivel de Difusión

Tiem

po (s

)

Figura 9.10. Resultados de Gustafson Kessel para Nubes.

Rho Nivel de difusión

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 3 0.8 0.8 1.031 Tabla 9.8. Mejor Resultado de Gustafson Kessel para Nubes

Figura 9.11. Mejor Resultado Obtenido con Gustafson Kessel para Nubes. Centroides

9.1.7. Resultados con LAMDA En el ajuste de los parámetros para obtener el mejor resultado se variaron las funciones con las que se calcula el Nivel de Adecuación Marginal (MAD) y el parámetro de exigencia. El mejor resultado obtenido se presenta en la Tabla 9.9:

Datos Entrenamiento Datos Prueba

Función Parámetro de

Exigencia % NIC % Error % NIC % Error Binomial Modificada 0.6 0.1667 0.7 0 0.8

Tabla 9.9. Mejor Resultado de LAMDA para Nubes 9.1.8. Resultados con Redes Neuronales Artificiales (RNA) Se hicieron pruebas variando el número de neuronas, el número de capas y la tasa de aprendizaje. En la primera prueba se uso 1 capa de neuronas, se mantuvo constante la tasa de aprendizaje en 1 y se varió el número de neuronas (Ver Fig. 9.12). El mejor resultado se presenta en la Tabla 9.10.

Número de Capas

Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 18 1 0.4333 0.3 12.547 Tabla 9.10 Mejor Resultado para Nubes de Redes Neuronales con 1 capa, tasa de aprendizaje 1

Page 42: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

36

y variando el número de neuronas

Errores

0

2

4

6

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49Número de Neuronas

% E

rror

% Error Entrenamiento % Error Prueba

Tiempo de Ejecución

01020304050

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49Número de Neuronas

Tiem

po (s

)

Figura 9.12. Resultados para Nubes con RNA de 1 capa, variando el número de neuronas y con tasa de aprendizaje 1

En la segunda prueba se mantuvo una capa, se fijó el número de neuronas en 18 y se hicieron pruebas variando la tasa de aprendizaje (Ver Fig. 9.13). El mejor resultado obtenido se presenta en la tabla 9.11

Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 18 2.9 0.7 0.25 12.61 Tabla 9.11. Mejor Resultado para Nubes de Redes Neuronales con 1 capa, 34 neuronas

y variando la tasa de aprendizaje

Errores

00,5

11,52

2,53

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9 4,1 4,3 4,5 4,7 4,9Tasa de Aprendizaje

% E

rror

% Error Entrenamiento % Error Prueba

Tiempo de Ejecución

0

10

20

30

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9 4,1 4,3 4,5 4,7 4,9

Tasa de aprendizaje

Tiem

po (s

)

Figura 9.13. Resultados para Nubes con RNA de 1 capa, 18 neuronas y variando la tasa de aprendizaje

Para la siguiente prueba se uso una red con 2 capas de neuronas. Primero se dejó fija la tasa de aprendizaje en 1 y se varió el número de neuronas de cada una de las capas (Ver Fig. 9.14). El mejor resultado obtenido se presenta en la Tabla 9.12

Page 43: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

37

Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

2 10 1 0.4 0.25 8.922 Tabla 9.12. Mejor Resultado para Nubes de Redes Neuronales con 2 capas, tasa de aprendizaje 1

y variando el número de neuronas

Errores con 2 capas TA: 0.1

0

1

2

3

4

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49Número de Neuronas

% E

rror

% Error Entrenamiento % Error Prueba

Figura 9.14. Resultados para Nubes con RNA de 2 capas, variando el número de neuronas y tasa de aprendizaje 1

En la última prueba se usaron 2 capas y el número de neuronas por capa con el que se obtuvo el mejor resultado en la anterior prueba (10) y se varió la tasa de aprendizaje (Ver Fig. 9.15). El mejor resultado se presenta en la Tabla 9.13.

Errores con 2 capas 42 neuronas

0

1

2

3

4

5

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9 4,1 4,3 4,5 4,7 4,9

Tasa de Aprendizaje

% E

rror

% Error Entrenamiento % Error Prueba

Figura 9.15. Resultados para Nubes con RNA de 2 capas, 10 neuronas y variando la tasa de aprendizaje

Número de Capas

Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

2 10 1.8 0.3667 0.15 5.391 Tabla 9.13. Mejor Resultado para Nubes de Redes Neuronales con 2 capas, 10 neuronas

y variando la tasa de aprendizaje Después de comparar los resultados obtenidos en las anteriores pruebas se vio que el mejor resultado es el obtenido con 2 capas, 10 neuronas y tasa de aprendizaje 1.8 (Ver Tabla 9.13)

Page 44: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

38

9.1.9. Comparación de resultados con los diferentes métodos de clasificación Para realizar esta comparación se escoge el mejor resultado de los obtenidos con cada uno de los métodos con el mismo porcentaje de datos de entrenamiento (60%) y de prueba (40%)

MÉTODO % Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

Fisher 0.7667 0.75 0.109 K vecinos - 0.2 6.156 Montaña 0.33 0.2 1.75 C-means 0.5667 0.5 0.532

Gustafson Kessel 0.8 0.8 1.031 LAMDA 0.7 0.8 -

Redes Neuronales 0.3667 0.15 5.391 Tabla 9.14. Comparación de Resultados para Nubes

El promedio del porcentaje de error obtenido sobre el conjunto prueba es 0.486% que indica un buen desempeño de los métodos de clasificación utilizados. Haciendo una comparación de los resultados obtenidos con cada uno de los algoritmos se puede ver que el mejor desempeño se obtiene con RNA, K-vecinos y Montaña, aunque es de resaltar que el tiempo de ejecución de los dos primeros es mucho mayor que el de los demás métodos. En cuanto a los demás algoritmos se observa un desempeño similar entre ellos, aunque es de notar que C-means genera mejores resultados que Gustafson Kessel, aunque este último es una mejora de C-means en cuanto a la forma de los clusters generados. Probablemente la forma de las hiperelipses obtenidas hizo que algunos individuos quedarán incluidos en la clase errónea. Una mejora al Software desarrollado podría incluir el cálculo y visualización de las hiperelipses que genera GK. Por último, es de notar que con Fisher se obtuvo el mínimo tiempo de ejecución y un error inferior al 1%, lo que es muy aceptable. 9.2. BASE DE DATOS “IRIS” 9.2.1. Características de la base de datos La base de datos es un Benchmark disponible en el repositorio de la Universidad de California [19] con características de diferentes tipos de flores iris: Iris Setosa, Iris Versicolor e Iris Virgínica. Tiene 150 individuos, 33.3% de cada una de las clases, descritos con 4 atributos cuantitativos: Longitud del sépalo en centímetros, ancho del sépalo en centímetros, longitud del pétalo en centímetros y ancho del pétalo en centímetros. Una de las clases es linealmente separable de las otras dos, en tanto que éstas dos no son separables entre sí, como se puede ver en la Fig. 9.16.

Page 45: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

39

Figura 9.16. Distribución en tres dimensiones de los datos Iris.

9.2.2. Resultados con Fisher

Los discriminantes obtenidos generaron los errores y el tiempo de Ejecución presentados en la Tabla 9.15

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1.1111 3.3333 0.015

Tabla 9.15. Resultado con Fisher para Iris

9.2.3. Resultados con k-vecinos Se hizo una prueba variando el número de vecinos utilizados (Ver Fig. 9.17). El mejor resultado se presenta en la Tabla 9.16.

Vecinos % Error Datos

Prueba Tiempo de Ejecución (Segundos)

6 0 0,015 Tabla 9.16. Mejor Resultado con k-vecinos para Iris

Error en los datos de Prueba

0

1

2

3

4

5

1 2 3 4 5 6 7 8 9 10Número de Vecinos

% E

rror

Tiempo de Ejecución

0

0,005

0,01

0,015

0,02

1 2 3 4 5 6 7 8 9 10Número de Vecinos

Tiem

po (s

)

Figura 9.17. Resultados con k-vecinos para Iris.

Page 46: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

40

9.2.4. Resultados con el Método de la Montaña Las primeras pruebas se hicieron variando el número de partes por eje, y manteniendo constante tanto el valor de Sigma como el de Beta, en 1 y 2, respectivamente. Los resultados obtenidos se pueden apreciar en la Fig. 9.18. El mejor resultado se presenta en la Tabla 9.17:

Partes % Error Datos Entrenamiento

% Error Datos Prueba Tiempo de Ejecución (Segundos)

4 10 11.667 0.218

Tabla 9.17. Mejor Resultado del Método de la Montaña para Iris variando la cantidad de partes por eje

Errores

0102030405060

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Partes de los Ejes

% E

rror

Error Datos Entrenamiento Error Datos Prueba

Tiempo de Ejecución

0102030405060

2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Partes de los Ejes

Tiem

po (s

)

Figura 9.18. Resultados para Iris con el Método de la Montaña variando el número de Partes por Eje

En la segunda prueba el parámetro que se varió fue σ y el valor que se utilizó para el número de partes correspondió al que arrojó mejores resultados en la anterior prueba, es decir, 4. Beta se mantuvo en el valor 2. En la Fig. 9.19 se presentan los resultados de está prueba y en la Tabla 9.18 se muestra el mejor resultado.

Sigma % Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

0.5 4.444 3.333 0.203 Tabla 9.18. Mejor Resultado del Método de la Montaña para Iris variando Sigma

Errores

0

10

20

30

40

0,1 0,5 1 2 3 4 5 7 8 9 10 20 40Sigma

% E

rror

Error Datos Entrenamiento Error Datos Prueba

Tiempo de ejecución

0,1950,2

0,2050,21

0,2150,22

0,225

0,1 0,5 1 2 3 4 5 7 8 9 10 20 40Sigma

Tiem

po (s

)

Figura 9.19. Resultados para Iris con el Método de la Montaña variando Sigma

La última prueba se hizo cambiando el valor de β y dejando los otros dos parámetros fijos en los valores que arrojaron mejores resultados en las anteriores pruebas (Ver Fig. 9.20). El mejor resultado se presenta en la Tabla 9.19.

Beta % Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1-3 4.44 3.33 0.203 Tabla 9.19. Mejor Resultado del Método de la Montaña para Iris variando Beta

Page 47: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

41

Errores

0

10

20

30

40

0,1 0,5 1 1,5 2 3 4 5 7 8 9 10 20 40Beta

% E

rror

Error Datos Entrenamiento Error Datos Prueba

Tiempo de ejecución

0,1950,2

0,2050,21

0,2150,22

0,225

0,1 0,5 1 1,5 2 3 4 5 7 8 9 10 20 40Beta

Tiem

po (s

)

Figura 9.20. Resultados para Iris con el Método de la Montaña variando Beta

A partir del análisis de las anteriores pruebas se puede ver que la combinación de parámetros que arrojó el mejor resultado es el que se presenta en la Tabla 9.20.

Tabla 9.20. Mejor Resultado del Método de la Montaña para Iris

Partes por eje

Sigma Beta % Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

4 0.5 1-3 4.44 3.33 0.203

9.2.5. Resultados con C-means Se realizó una prueba en la que el criterio de parada, es decir, el máximo cambio en U se dejó fijo en 0.02 y se varió el nivel de difusión entre clases (Ver Fig. 9.21). El mejor resultado obtenido se presenta en la Tabla 9.21

Nivel de difusión

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

10 11.111 6.667 0.016 Tabla 9.21. Mejor Resultado de C-means para Iris

Errores

05

10152025

1,5 2 2,5 3 4 5 6 7 8 9 10 11 15 20 30 40 50Nivel de Difusión

% E

rror

Error Datos Entrenamiento Error Datos Prueba

Tiempo de Ejecución

0

0,02

0,04

0,06

1,5 2,5 4 6 8 10 15 30 50

Nivel de Difusión

Tiem

po (s

)

Figura 9.21. Resultados para Iris de C-means

9.2.6. Resultados con Gustafson Kessel Means Teniendo en cuenta que no se tenía información a priori de los volúmenes de los cluster, éstos se mantuvieron constantes en 1 [5]. El parámetro que se varió fue el nivel de difusión entre clases. Los resultados obtenidos se presentan en la Fig. 9.22 y el mejor de ellos se puede ver en la tabla 9.22.

Rho Nivel de difusión

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 2 12.22 11.67 0.125 Tabla 9.22. Mejor Resultado de Gustafson Kessel para Iris

Page 48: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

42

Errores

0

20

40

60

1,5 2 2,5 3 4 5 6 7 8 9 10Nivel de difusión

% E

rror

Error Datos Entrenamiento Error Datos Prueba

Tiempo de Ejecución

00,020,040,060,08

0,10,120,14

1,5 2 2,5 3 4 5 6 7 8 9 10Nivel de difusión

Tiem

po (s

)

Figura 9.22. Resultados de Gustafson Kessel para Iris

9.2.7. Resultados con LAMDA En la prueba realizada se variaron las funciones con las que se calcula el Nivel de Adecuación Marginal (MAD) y el parámetro de exigencia. El mejor resultado se presenta en la Tabla 9.23:

Datos Entrenamiento Datos Prueba Función

Parámetro de Exigencia % NIC % Error % NIC % Error

Binomial Modificada 0.6 0 4.44 0 5 Tabla 9.23. Mejor Resultado de LAMDA para Iris

9.2.8. Resultados con Redes Neuronales Artificiales (RNA) En la primera prueba se uso 1 capa de neuronas, se mantuvo constante la tasa de aprendizaje en 0.1 y se varió el número de neuronas (Ver Fig. 9.23). El mejor resultado obtenido se presenta en la Tabla 9.24.

Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 11 0.1 3.3333 1.6667 0.547 Tabla 9.24. Mejor Resultado para Iris de RNA con 1 capa, TA: 0.1 y variando las neuronas

Errores 1 capa, TA: 0.1

0

5

10

15

20

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49Número de Neuronas

% E

rror

% Error Entrenamiento % Error Prueba

Tiempo de Ejecución

0

0,2

0,4

0,6

0,8

1

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49

Número de Neuronas

Tiem

po (s

)

Figura 9.23. Resultados para Iris con RNA de 1 capa, variando el número de neuronas y tasa de aprendizaje 0.1

Page 49: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

43

En la segunda prueba se mantuvo una capa, se fijó el número de neuronas en 11 y se hicieron pruebas variando la tasa de aprendizaje (Ver Fig. 9.24). El mejor resultado obtenido se presenta en la Tabla 9.25.

Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 11 0.1, 3.3 3.3333 1.6667 0.547 Tabla 9.25. Mejor Resultado para Iris de RNA con 1 capa, 11 neuronas y variando la tasa de aprendizaje

Errores con 1 capa y 11 Neuronas

01020304050607080

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9 4,1 4,3 4,5 4,7 4,9Tasa de Aprendizaje

% E

rror

% Error Entrenamiento % Error Prueba

Tiempo de Ejecución con 1 capa y 11 neuronas

0,480,5

0,520,54

0,560,58

0,6

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9 4,1 4,3 4,5 4,7 4,9

Tasa de aprendizaje

Tiem

po (s

)

Figura 9.24. Resultados para Iris con RNA de 1 capa, 11 neuronas y variando la tasa de aprendizaje

Para la siguiente prueba se uso una red con 2 capas de neuronas. Primero se fijó la tasa de aprendizaje en 0.1 y se varió el número de neuronas de cada una de las capas (Ver Fig. 9.25). El mejor resultado se presenta en la Tabla 9.26.

Tabla 9.26. Mejor Resultado para Iris de RNA con 2 capas, TA: 0.1 y variando las neuronas Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

2 68 0.1 1.1111 1.6667 2.172

Errores

0

5

10

15

20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70Número de Neuronas

% E

rror

% Error Entrenamiento % Error Prueba

Figura 9.25. Resultados para Iris con RNA de 2 capas, variando el número de neuronas y tasa de aprendizaje 0.1

Page 50: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

44

En la última prueba se usaron 2 capas y el número de neuronas por capa con el que se obtuvo el mejor resultado en la anterior prueba (68) y se varió la tasa de aprendizaje (Ver Fig. 9.26). El mejor resultado, al igual que en la anterior prueba se obtuvo con una tasa de aprendizaje de 0.1 (Ver Tabla 9.26).

Errores con 2 capas y 68 neuronas

05

10152025

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9

Tasa de Aprendizaje

% E

rror

% Error Entrenamiento % Error Prueba

Figura 9.26. Resultados para Iris con RNA de 2 capas, 68 neuronas y variando la tasa de aprendizaje Después de comparar los resultados obtenidos en las anteriores pruebas se vio que el mejor resultado es el presentado en la Tabla 9.26, es decir, el que se obtuvo con dos capas, 68 neuronas y tasa de aprendizaje 0.1. 9.2.9. Comparación de resultados con los diferentes métodos de clasificación Para realizar esta comparación se escoge el mejor resultado de los obtenidos con cada uno de los métodos con el mismo porcentaje de datos de entrenamiento (60%) y de prueba (40%)

MÉTODO % Error Datos Entrenamiento

% Error Datos Prueba Tiempo de Ejecución (Segundos)

Fisher 1.1111 3.3333 0.015 K vecinos - 0 0.015 Montaña 4.44 3.33 0.203 C-means 11.111 6.667 0.016

Gustafson Kessel 12.22 11.667 0.125 LAMDA 4.44 5 -

Redes Neuronales 1.1111 1.6667 2.172 Tabla 9.27. Comparación de Resultados de los diferentes métodos para Iris

El promedio del porcentaje de error obtenido sobre el conjunto prueba es 4.523% que indica un buen desempeño de los métodos de clasificación utilizados. Los mejores resultados se obtuvieron con K Vecinos y RNA, los cuales presentan un error en los datos de prueba de 0% y 1.67%, respectivamente. En el otro extremo se encuentran Gustafson Kessel, ya que su error es de 11.667%, es de notar que este algoritmo es el mismo que presentó el peor desempeño para la base de datos Nubes, esto puede deberse a las razones que se expusieron en la sección 9.1.9, es decir, la generación de hiperelipses. Con respecto al tiempo de ejecución los algoritmos pueden dividirse en tres grupos: Los que tienen un tiempo de ejecución inferior a las 20 milésimas de segundos (Fisher, k-vecinos, C-means); los que tienen un tiempo de ejecución cercano a las 2 décimas de segundo (Montaña y GK); y el que tiene un tiempo de ejecución mayor a los 2 segundos (RNA). Haciendo un análisis global es de resaltar que k-vecinos tiene un tiempo de ejecución muy pequeño y el menor error en los datos de prueba, mientras que Redes Neuronales, aunque tiene un error bajo, presenta el mayor tiempo de ejecución, debido, probablemente, a que fue programado en una plataforma diferente a la de los demás métodos, razón por la cual sería importante incluir este algoritmo en el software desarrollado.

Page 51: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

45

9.3. DIAGNÓSTICO DE DIABETES 9.3.1. Características de la base de datos La base de datos es un Benchmark de la Universidad de California [19] que contiene características de mujeres con y sin diabetes. Incluye 768 individuos de los cuales, el 65.1% no presenta la enfermedad. Cada individuo está descrito por 8 atributos de tipo cuantitativo: Número embarazos, concentración de glucosa en el plasma, presión diastólica de la sangre, índice de masa corporal, edad (años), grosor de la piel del tríceps, función de pedigrí de la diabetes, concentración de insulina. Se distinguen 2 clases: normal y diabético. 9.3.2. Resultados con Fisher

Los discriminantes obtenidos generaron los errores y el tiempo de Ejecución que se presentan en la Tabla 9.28

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

23.6812 23.7785 0.015

Tabla 9.28. Resultados Obtenidos con Fisher para Diabetes

9.3.3. Resultados con k-vecinos Se hizo una prueba variando el número de vecinos utilizados (Ver Fig. 9.27). El mejor resultado obtenido se puede ver en la Tabla 9.29.

Vecinos % Error Datos

Prueba Tiempo de Ejecución (Segundos)

6 30.2932 0.344

Tabla 9.29. Mejor Resultado Obtenido con K-vecinos para Diabetes

Error Datos Prueba

0

10

20

30

40

1 2 3 4 5 6 7 8 9 10Vecinos

% E

rror

Tíempo de Ejecución

00,10,20,30,40,5

1 2 3 4 5 6 7 8 9 10Vecinos

Tiem

po (s

)

Figura 9.27. Resultados para Diabetes con k-vecinos

9.3.4. Resultados con el Método de la Montaña Debido al número de atributos no se pudo correr el método de la montaña para el diagnóstico de la diabetes 9.3.5. Resultados con C-means Se realizó una prueba en la que el criterio de parada, es decir, el máximo cambio en U se dejó fijo en 0.02 y se varió el nivel de difusión entre clases (Ver Figura 9.28). El mejor resultado obtenido se presenta en la Tabla 9.30

Page 52: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

46

Nivel de difusión

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

3 38.1779 29.9674 0.156

Tabla 9.30. Mejor Resultado Obtenido con C-means para Diabetes

Errores

0

20

40

60

80

1,5 2 2,5 3 4 5 6 7 10 30 50Nivel de Difusión

% E

rror

Error Datos Entrenamiento Error Datos Prueba

Tíempo de Ejecución

00,05

0,10,150,2

0,25

1,5 2 2,5 3 4 5 6 7 10 30 50Nivel de Difusión

Tiem

po (s

)

Figura 9.28. Resultados para Diabetes con C-means

9.3.6. Resultados con Gustafson Kessel Means Teniendo en cuenta que no se tenía información a priori de los volúmenes de los cluster, éstos se mantuvieron constantes en 1 [5]. El parámetro que se varió fue el nivel de difusión entre clases. Los resultados obtenidos se presentan en la Fig. 9.29 y el mejor de ellos se puede ver en la tabla 9.31.

Rho Nivel de difusión

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 5 38.61 34.2071 0.187 Tabla 9.31. Mejor Resultado de Gustafson Kessel para Diabetes

Errores

0

20

40

60

80

1,5 2 3 4 5 6 7 8 10 20Nivel de Difusión

% E

rrro

r

Error Datos de entrenamiento Error Datos de prueba

Tíempo de Ejecución

0

0,2

0,4

0,6

0,8

1

1,5 2 3 4 5 6 7 8 10 20Nivel de Difusión

Tiem

po (s

)

Figura 9.29. Resultados de Gustafson Kessel para Diabetes

9.3.7. Resultados con LAMDA Al variar las funciones para el cálculo del MAD y el parámetro de exigencia el mejor resultado obtenido fue el que se presenta en la Tabla 9.32.

Datos Entrenamiento Datos Prueba Función

Parámetro de Exigencia % NIC % Error % NIC % Error

Binomial Modificada 0.6 0 32.104 0 36.482 Tabla 9.32. Mejor Resultado de LAMDA para Diabetes

9.3.8. Resultados con Redes Neuronales Artificiales (RNA) En la primera prueba se uso 1 capa de neuronas, se mantuvo constante la tasa de aprendizaje en 1 y se varió el número de neuronas (Ver Fig. 9.30). El mejor resultado obtenido se presenta en la Tabla 9.33.

Page 53: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

47

Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 17 1 31.8872 23.7785 1.328

Tabla 9.33. Mejor Resultado para Diabetes de RNA de 1 capa, TA de 1 y variando el número de neuronas

Errores con 1 capa y TA: 1

0

20

40

60

80

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49Número de Neuronas

% E

rror

% Error Entrenamiento % Error Prueba

Tiempo de Ejecución con 1 capa y TA: 1

0

2

4

6

8

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49

Número de Neuronas

Tiem

po (s

)

Figura 9.30. Resultados para Diabetes con RNA de 1 capa, variando el número de neuronas y tasa de aprendizaje 1

En la segunda prueba se mantuvo una capa, se fijó el número de neuronas en 17 y se hicieron pruebas variando la tasa de aprendizaje (Ver Fig. 9.31). El mejor resultado se presenta en la Tabla 9.34.

Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

1 17 4.1 25.8134 22.8013 1.25 Tabla 9.34. Mejor Resultado para Diabetes de RNA de 1 capa, 17 neuronas y variando la tasa de aprendizaje

Errores con 17 neuronas y 1 capa

0

20

40

60

80

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9 4,1 4,3 4,5 4,7 4,9Tasa de Aprendizaje

% E

rror

Error Entrenamiento Error Prueba

Tiempo de Ejecución con 1 capa 17 neuronas

0

1

2

3

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9 4,1 4,3 4,5 4,7 4,9

Tasa de aprendizaje

Tiem

po (s

)

Figura 9.31. Resultados para Diabetes con RNA de 1 capa, 17 neuronas y variando la tasa de aprendizaje

Page 54: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

48

Para la siguiente prueba se uso una red con 2 capas de neuronas. Primero se dejó fija la tasa de aprendizaje en 0.1 y se varió el número de neuronas de cada una de las capas (Ver Fig. 9.32) obteniendo el mejor resultado que se presenta en Tabla 9.35.

Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

2 10 0.1 26.4642 22.1498 1.844 Tabla 9.35. Mejor Resultado para Diabetes de RNA de 2 capas, TA 0.1 y variando el número de neuronas

Errores con 2 capas y TA: 0,1

0

20

40

60

80

1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49Número de Neuronas

% E

rror

Error Entrenamiento Error Prueba

Figura 9.32. Resultados para Diabetes con RNA de 2 capas, variando el número de neuronas y tasa de aprendizaje 0.1

En la última prueba se usaron 2 capas y el número de neuronas por capa con el que se obtuvo el mejor resultado en la anterior prueba (10) y se varió la tasa de aprendizaje (Ver Fig. 9.33). El mejor resultado se presenta en la Tabla 9.36

Número de

Capas Número de neuronas

Tasa de aprendizaje

% Error Datos Entrenamiento

% Error Datos Prueba

Tiempo de Ejecución (Segundos)

2 10 2 22.7766 21.1726 1.5780 Tabla 9.36. Mejor Resultado para Diabetes de RNA de 2 capas, 10 neuronas y variando la tasa de aprendizaje

Errores con 10 neuronas y 2 capas

0

20

40

60

80

0,1 0,3 0,5 0,7 0,9 1,1 1,3 1,5 1,7 1,9 2,1 2,3 2,5 2,7 2,9 3,1 3,3 3,5 3,7 3,9Tasa de Aprendizaje

% E

rror

Error Entrenamiento Error Prueba

Figura 9.33. Resultados para Diabetes con RNA de 2 capas, 10 neuronas y variando la tasa de aprendizaje

Después de comparar los resultados obtenidos en las anteriores pruebas se vio que el mejor resultado es el presentado en la Tabla 9.36 9.3.9. Comparación de resultados con los diferentes métodos de clasificación Para realizar esta comparación se escoge el mejor resultado de los obtenidos con cada uno de los métodos con el mismo porcentaje de datos de entrenamiento (60%) y de prueba (40%)

Page 55: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

49

MÉTODO % Error Datos Entrenamiento

% Error Datos Prueba Tiempo de Ejecución (Segundos)

Fisher 23.6812 23.7785 0.015 K vecinos - 30.2932 0.344 Montaña No corrió C-means 38.1779 29.9674 0.156

Gustafson Kessel 38.61 34.2071 0.187 LAMDA 32.104 36.482 -

Redes Neuronales 22.7766 21.1726 1.5780 Tabla 9.37. Comparación de Resultados de los diferentes métodos para Diabetes

El promedio del porcentaje de error obtenido con el conjunto prueba fue 29.317%, el cual indica un desempeño regular de los métodos de clasificación utilizados. Este error puede deberse a que individuos con atributos similares pueden pertenecer a clases diferentes. Por otro lado, los atributos que describen cada individuo están en rangos bastante diferentes, por lo que unos influyen más que otros a la hora de generar el clasificador. Un tratamiento previo de la base de datos podría mejorar el desempeño de los métodos en estudio. Haciendo una comparación de los resultados obtenidos con cada uno de los algoritmos se puede ver que el mejor desempeño se obtiene con Fisher y RNA, destacando que el primero requiere menor tiempo de ejecución. Se puede ver también, que los métodos que realizan el agrupamiento por análisis de distancias presentan un desempeño similar en el diagnóstico de la diabetes. Sin embargo, los peores resultados en cuanto a error de prueba se obtienen con LAMDA. A excepción de Redes Neuronales, el tiempo de ejecución de los métodos es inferior a 4 décimas de segundo, aunque cabe destacar el excelente tiempo de ejecución de Fisher pues es de solo 15 milésimas de segundo. 9.4. DIAGNÓSTICO DE FALLAS SISTEMA DE TANQUES ACOPLADOS Para el diagnóstico de fallas en el sistema de tanques, se utilizaron los métodos no supervisados, es decir, C-means, Gustafson Kessel y LAMDA. Los métodos supervisados no se emplearon ya que ellos requieren conocer a priori las clases de los datos y el objetivo es determinar los estados del sistema a partir de los datos. 9.4.1. Descripción del Sistema El sistema [7] consta de una bomba de agua y dos tanques, uno lineal y otro no lineal, comunicados por medio de un tubo (Ver Fig. 9.34). El tanque no lineal, es lineal a trozos y su área transversal varía respecto a la altura. La bomba permite controlar el caudal de agua que ingresa al tanque lineal, mediante el cual se controla el nivel de agua sobre el segundo tanque (tanque no-lineal).

Page 56: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

50

Figura 9.34. Sistema de tanques acoplados

Se dispone además de dos válvulas ON-OFF que permiten simular fugas inesperadas en el Sistema de Tanques Acoplados. El sistema también tiene un Controlador de Lógica Programable (PLC) que funciona como un acondicionador de señal y como actuador sobre la planta. De la planta se extraen físicamente dos señales análogas referentes al nivel del agua de cada uno los tanques y se controla el nivel del tanque no lineal, introduciendo caudal en el tanque lineal, mediante una señal análoga de voltaje sobre la bomba de agua. El control de nivel se realiza por medio de un PID, y de un algoritmo de control de lógica difusa tipo Takagi-Sugeno (varios PID que se adaptan a una determinada zona de operación de la planta). 9.4.2. Datos utilizados para el diagnostico Los datos utilizados fueron obtenidos y utilizados por Fandiño [7] en su trabajo con el método LAMDA. Aunque los datos completos tienen 5902 individuos en este trabajo se utilizaron únicamente 3219 individuos que fueron obtenidos mediante mediciones realizadas cada dos segundos al sistema. El escenario utilizado para la obtención de los datos fue: Se fijó un nivel de referencia inicial en el tanque no lineal de 20 cm, mientras el nivel se estabilizaba se simularon dos fugas, después se aumento la referencia a 25 cm y se simularon otras tres fugas. En la fig. 9.35 se presentan los niveles de agua obtenidos.

0

5

10

15

20

25

30

35

40

45

2

408

814

1220

1626

2032

2438

2844

3250

3656

4062

4468

4874

5280

5686

6092

Tiempo(s)

Niv

el (c

m)

Fig. 9.35. Niveles de agua del sistema en el escenario utilizado

Page 57: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

51

En los datos de Fandiño cada uno de los individuos está descrito mediante los siguientes atributos: Nivel del tanque no lineal, Nivel del tanque lineal, Señal de control, Zona de Operación del tanque no Lineal, Derivada de la señal de Control cada 50 segundos, Derivada del Nivel del tanque no lineal cada 50 segundos y su descripción cualitativa. Todos los atributos son de tipo cuantitativo, a excepción de la zona de operación y la descripción cualitativa de la derivada del tanque no lineal. En este escenario de funcionamiento se pueden identificar 5 clases que corresponden a los siguientes estados de la planta.: Estado de transición inicial, Estado Estable en el primer nivel de referencia (20 cm), Estado de transición entre los dos niveles, Estado Estable en el segundo nivel de referencia (25 cm) y Estado de falla. 9.4.3. Preprocesamiento de los datos Debido a que con los datos de Fandiño no se obtuvieron los resultados esperados en la supervisión de fallas se decidió hacer un preprocesamiento a los datos que consistió en disminuir los atributos, filtrar los datos, obtener las derivadas sobre los datos filtrados y normalizar los datos. En cuanto a la disminución de los atributos se consideró que las variables de estado del sistema, es decir, los niveles de los tanques y sus derivadas, son descriptores suficientes pues contienen toda la información necesaria para llevar a cabo la clasificación. Con respecto al filtraje de los datos se usó un filtro digital con el objetivo de disminuir el ruido producido por el error de medición. Con dicho filtro se obtuvieron los niveles de agua que se presentan en la figura 9.36:

05

1015202530354045

2

422

842

1262

1682

2102

2522

2942

3362

3782

4202

4622

5042

5462

5882

6302

Tiempo (s)

Niv

el (c

m)

Fig. 9.36. Niveles de agua filtrados del sistema en el escenario utilizado

Una vez filtrados los datos se sacaron sus derivadas cada minuto utilizando la aproximación de derivada mediante diferencia [8]. Las derivas obtenidas se presentan en la figura 9.37.

Derivada Tanque Lineal

-3

-2

-10

1

2

3

2

610

1218

1826

2434

3042

3650

4258

4866

5474

6082

Tiempo (s)

Derivada Tanque no Lineal

-1

-0,5

0

0,5

1

1,5

2

644

1286

1928

2570

3212

3854

4496

5138

5780

6422

Tiempo (s)

Fig. 9.37. Derivada de los Niveles de agua filtrados del sistema en el escenario utilizado

Page 58: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

52

Si se miran los rangos de las derivadas (de -2 a2) y los de los niveles de agua (de 0 a 45) se puede ver que son bastante diferentes, por lo que se considero importante para realizar la clasificación hacer una normalización de los datos, es decir, a cada atributo ponerle media 0 y desviación estándar 1. Para ello a cada dato se le restó la media y se dividió por la desviación estándar. 9.4.4. Resultados con C-means Se hicieron pruebas variando el nivel de difusión entre clases. Los estados identificados en cada una de las pruebas se pueden ver en la Fig. 9.38

Fig. 9.38. Estados del sistema obtenidos con C-means

9.4.5. Resultados con Gustafson Kessel Means Se hicieron pruebas variando el nivel de difusión entre clases. Los estados del sistema identificados en cada una de las pruebas se pueden ver en la Fig. 9.39

Fig. 9.39. Estados del sistema obtenidos con Gustafson-Kessel

9.4.6. Resultados con LAMDA Se hicieron pruebas variando el nivel de difusión entre clases y el parámetro de exigencia, los estados identificados en cada una de las pruebas, así como el tiempo de ejecución se pueden ver en la Fig. 9.40.

Page 59: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

53

Fig. 9.40. Estados del sistema obtenidos con LAMDA

9.4.7. Comparación de Resultados obtenidos con los diferentes métodos de clasificación En la figura 9.41 se pueden ver los estados identificados mediante los tres métodos comparados con el nivel de agua del tanque no lineal.

Fig. 9.41. Estados del sistema obtenidos con cada método

De la anterior gráfica se puede ver que los tres métodos identifican las fallas que se presentan en el sistema, sin embargo, el algoritmo Gustafson Kessel lo hace con un pequeño retardo, lo cual no es conveniente cuando se esté realizando un análisis en línea de un sistema.

Page 60: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

54

En cuanto a la identificación de los otros estados: Estado de transición inicial, Estado Estable en el primer nivel de referencia (20 cm), Estado de transición entre los dos niveles y Estado Estable en el segundo nivel de referencia (25 cm) se puede ver que el algoritmo de C-means los detecta adecuadamente. Por otro lado, el método LAMDA logra identificar siete estados adicionales al de falla que se pueden agrupar como cinco estados que representan una transición inicial y los dos restantes que corresponden a los dos niveles de agua, es decir, no logra identificar el estado de transición entre los dos niveles. En cuanto a Gustafson Kessel se puede ver que identifica un estado inerte inicial pero no reconoce el estado de transición entre los dos niveles, probablemente porque se fijaron 5 clases. Un aspecto a resaltar es que los métodos de C-means y Gustafson Kessel requieren de una previa definición del número de clases, mientras que LAMDA genera el número de clases de acuerdo al análisis que hace sobre los datos. Por último, se puede ver la importancia del preprocesamiento de los datos en los resultados obtenidos, sin embargo, éste podría convertirse en un obstáculo para la realización de análisis en tiempo real, sobre todo en cuanto a la normalización previa de los datos.

Page 61: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

55

10. ANÁLISIS DEL DESEMPEÑO DE LOS MÉTODOS DE CLASIFICACIÓN 10.1 ANÁLISIS DEL TIEMPO DE EJECUCIÓN 10.1.1. Fisher Teniendo en cuenta los resultados de las 3 pruebas realizadas con este método se puede ver que el tiempo de ejecución es independiente del número de: individuos, clases y atributos. Es importante resaltar que este método se destaco por presentar el menor tiempo de ejecución en todas las pruebas, con un promedio de 0.046 segundos y una desviación estándar de 0.044 10.1.2. K Vecinos Haciendo un análisis de los resultados obtenidos se puede ver que el tiempo varía linealmente con el número de vecinos con una ecuación general de la forma:

bakTiempo += (55) Esto se puede apreciar claramente en las Figuras 9.3 y 9.27, que corresponden a los resultados de Nubes y Diabetes, en las cuales se pueden ver las líneas de tendencia de los datos, cuyas ecuaciones son la (56) y (57), respectivamente.

8262.20929.1 += kTiempo (56)

1939.00258.0 += kTiempo (57) Sin embargo, en la gráfica de los resultados de Iris (Fig. 9.17) se puede notar que aparentemente el tiempo permanece constante, por lo que se podría considerar una ecuación de la forma:

015.00 += kTiempo (58)

Se puede ver, entonces, que los coeficientes a y b de la ecuación (55) dependen, principalmente, del número de individuos y en menor medida del número de atributos. Es de notar que cuando hay muy pocos individuos, como en el caso de Iris, la constante a es 0 10.1.3. Método de la Montaña De acuerdo a los resultados obtenidos en las pruebas en las que se pudo utilizar el método se puede considerar que al variar el número de partes por eje el tiempo de ejecución depende exponencialmente del número de atributos de los individuos, con una ecuación general como la que se presenta en la ecuación (59)

01

1 ... apartesapartesaTiempo nn

nn +++= −

− (59)

Page 62: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

56

Esto se puede apreciar claramente en las Figuras 9.4 y 9.18, que corresponden a los resultados de Nubes e Iris, en las cuales se pueden ver las líneas de tendencia de los datos, cuyas ecuaciones son la (60) y (61), respectivamente.

0881.00326.00085.0 2 ++= partespartesTiempo (60)

4172.30712.36667.0047.0 23 −+−= partespartespartesTiempo (61) Esta dependencia se debe a que la cantidad de nodos de la rejilla de discretización aumenta con el número de atributos y el número de partes por eje, debido a que se tienen que evaluar muchas funciones de la montaña, una por cada nodo. En cuanto a la cantidad de clases generadas, éstas lo que hacen es aumentar el número de veces que se calcula la función de la montaña modificada para localizar los centroides óptimos. Con respecto al número de individuos éste aumenta un poco el tiempo de cómputo en cuanto al cálculo de la función de la montaña. Sin embargo, estos dos parámetros influyen mucho menos sobre el tiempo de ejecución. Por último, los parámetro sigma y beta no influyen en el tiempo de ejecución como se puede ver claramente en las gráficas 9.5, 9.6, 9.19 y 9.20. 10.1.4. C-means y Gustafson Kessel Means Según los resultados obtenidos en las diferentes pruebas se puede ver que el tiempo de ejecución en estos dos métodos es constante con respecto al nivel de difusión e incremente con el número de individuos y en menor medida con el número de clases. Esto se debe a que el tamaño de la matriz de pertenencia y la cantidad de matrices de covarianza a evaluar dependen de estas dos variables. 10.1.5. Redes Neuronales Artificiales (RNA) En cuanto a las redes Neuronales los parámetros que influyen en el tiempo de ejecución son el número de neuronas y el número de capas. En cuanto al número de neuronas se puede considerar que la dependencia es de carácter lineal, en las Figuras 9.12, 9.23 y 9.30 se pueden observar estos comportamientos. Las ecuaciones 62, 63 y 64 corresponden a las líneas de tendencia de dichas gráficas.

5955.06029.0 += neuTiempo (62)

4622.00079.0 += neuTiempo (63)

9118.00421.0 += neuTiempo (64) En cuanto al número de capas si se comparan los resultados obtenidos con una capa con el de dos capas se puede ver que el tiempo de ejecución del segundo es, en general, el doble que el obtenido con una capa, por lo que podría considerarse, al igual que con el número de neuronas, una dependencia lineal.

Page 63: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

57

10.2 COMPARACIÓN DE CARACTERÍSTICAS DE LOS MÉTODOS CON BASE AL SOFTWARE DESARROLLADO

Método Parámetros necesarios Restricciones Tiempo de Ejecución Fisher Ninguno Ninguna Constante

K-vecinos

Número de Vecinos El número de vecinos debe ser menor o igual al número de individuos de entrenamiento.

Depende linealmente del número de vecinos

Montaña 1. Sigma 2. Beta 3. Partes por eje 4. Número de Clases

1. El número de clases debe ser menor al min entre el número de nodos y número de individuos

2. El número de nodos ( npartes ) debe ser

menor a 130.000

Depende del número de atributos y del número de partes por eje

C-means 1. Nivel de difusión 2. Número de Clases

1. El número de clases debe ser menor al número de individuos

2. El número máximo de elementos de la matriz de pertenencia (Individuos x Clases) es del orden de 2.5 millones.

Depende del número de clases e individuos

GK 1. Nivel de difusión 2. Rho 3. Número de clases

1. El número de clases debe ser menor al número de individuos

2. El número máximo de atributos es 3000 3. El número máximo de elementos de la matriz

de pertenencia (Individuos x Clases) es del orden de 2.5 millones.

Depende del número de clases e individuos

LAMDA 1. Función para cálculo del MAD

2. Parámetro de exigencia

Ninguna No requiere iteraciones

RNA 1. Capas 2. Neuronas 3. Tasa de aprendizaje

Ninguna Depende del número de capas y neuronas

Page 64: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

58

11. CONCLUSIONES El objetivo principal de este proyecto de grado era establecer algunos lineamientos para la elección del método de clasificación apropiado según el problema a abordar. Sin embargo, durante el desarrollo del proyecto se vio que dicha elección no depende del tipo de problema sino de las características específicas de los datos con los que se trabaje. Los aspectos a tener en cuenta para utilizar cada uno de los métodos son el número y tipo de atributos, el número de individuos y la cantidad de clases. Se hizo una revisión a fondo de gran parte de la literatura existente en torno al tema de clasificación, de la cual se puede establecer que el problema de clasificación consiste en asignar un conjunto de individuos a distintas clases. Formalmente, sea X un conjunto con vectores en un espacio n-dimensional real nℜ y sea Ω un

conjunto de clases, se puede ver un clasificador como un mapeo de nℜ a Ω . Este mapeo se puede realizar de dos formas: Supervisada, en la que se tienen clases previamente definidas y se busca establecer reglas para asignar a los individuos a una de esas clases; No Supervisada, en la que no se establecen previamente las clases sino que se determinan a partir de los datos con los que se cuenta. En cuanto a los diferentes problemas en que son aplicables las técnicas la clasificación se consideró que se pueden agrupar en cuatro tipos: decisiones de tipo económico, reconocimiento de imágenes, diagnóstico médico y otro tipo de problemas de partición pura, tales como, predicción de fallas de máquinas, determinación del nivel de calidad de la vivienda y control de calidad (productos defectuosos y no defectuosos). Con base en la revisión bibliográfica realizada se propone la siguiente división de los métodos de clasificación: Estadísticos, árboles de decisión, métodos de agrupamiento (divididos a su vez en determinísticos y difusos) y redes neuronales artificiales. Los métodos estadísticos son métodos de clasificación supervisada en los que se busca definir fronteras de

decisión en el espacio nℜ que separen objetos de distintas clases según la distribución de probabilidad de los objetos de cada una. Las clases pueden ser generadas a partir de varias reglas de decisión, entre las que sobresalen mínima distancia, distancia de Mahalanobis y decisión de máxima probabilidad. Entre los métodos estadísticos cabe resaltar discriminante lineal, vecino más próximo y k vecinos. Con respecto al discriminante lineal se puede decir que es uno de los métodos más antiguos y utilizado en paquetes estadísticos cuyo objetivo es dividir el espacio muestral con hiperplanos, minimizando la razón entre la varianza entre grupos y la varianza dentro de los grupos. Uno de los discriminantes lineales que más sobresale es el de Fisher. En cuanto a los métodos de vecino más próximo y k vecinos la asignación de clases esta basada en la medida de distancias. La técnica conocida como árboles de decisión realiza la clasificación con base en una secuencia de preguntas, que van de la raíz a las hojas, en las cuales se encuentran las clases. Los métodos de agrupamiento son métodos de clasificación no supervisada en los que se busca, en la mayoría de los casos, obtener con una población de N datos, los centros (centroides), de cada una de las clases. En los métodos determinísticos cada individuo pertenece a una sola clase y en los difusos un objeto pertenece a una clase con determinada probabilidad. En general, los centroides se obtienen mediante la minimización de una función objetivo que mide la distancia entre los individuos de una misma clase. Este es el fundamento de K-means, método determinístico que puede

Page 65: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

59

considerarse como el más básico de los métodos de agrupamiento, del cual se derivan métodos determinísticos como H-means y HK-means y métodos difusos como C-means y Gustafson-Kessel. Otro método de agrupamiento determinístico, que difiere de la metodología para el cálculo de centroides antes mencionada, es el algoritmo de la montaña, en el cual los centroides se escogen partir de un conjunto de nodos obtenido mediante una discretización del espacio muestral. Dentro de los métodos de agrupamiento difuso finalmente se encuentra LAMDA, cuyo objetivo no es obtener centros de clases sino clasificar mediante un análisis del grado de adecuación de cada objeto a una clase.

El último grupo de métodos de clasificación estudiado corresponde a las Redes Neuronales Artificiales (RNA), las cuales pretenden imitar el funcionamiento del cerebro humano, en lo referente a su estructura neuronal, el cual, constituye una red de neuronas interconectadas que posibilitan el procesamiento en paralelo. Una de las RNA es el perceptrón multinivel. Luego de la investigación realizada sobre cada uno de los métodos se decidió que los algoritmos a evaluar debpian ser: Fisher, k-vecinos, c-means, Gustafson Kessel, método de la montaña, LAMDA y perceptrón multinivel, ya que permitían cumplir con los criterios de: Evitar la pérdida de generalidad en la evaluación, evaluar las mejores versiones de los métodos y disponibilidad de herramientas elaboradas con anterioridad. La aplicación de los métodos de clasificación seleccionados en diferente tipo de problemas, tanto de partición pura como de diagnóstico, permite apreciar las ventajas y desventajas de cada una de las técnicas: 1. Fisher. Aplicable a clasificación supervisada. Tiene un excelente tiempo de ejecución y tuvo un buen

desempeño en cada una de las aplicaciones analizadas, comparativamente con los demás métodos. 2. K-vecinos. Aplicable a clasificación supervisada. Tuvo un buen desempeño para un número considerable de

vecinos, aunque a medida que esta cantidad aumenta el tiempo de ejecución también se incrementa. 3. Montaña. Aplicable a clasificación supervisada y no supervisada. Tuvo un buen desempeño en todas las

pruebas en las que pudo ser aplicado, pero es el método que presenta las mayores limitaciones computacionales pues el tiempo de ejecución crece exponencialmente con el número de atributos y partes por eje.

4. C-means. Aplicable a clasificación supervisada y no supervisada. Tuvo un buen desempeño en todas las pruebas realizadas con un buen tiempo de ejecución. Adicionalmente, fue el método con el mejor resultado en el diagnóstico de fallas en el sistema de tanques acoplados pues reconoció todos los estados del sistema.

5. Gustafson-Kessel. Aplicable a clasificación supervisada y no supervisada. Aunque es una mejora de C-means en todas las pruebas presentó un desempeño peor que el obtenido con C-means, sin embargo, los resultados y el tiempo de ejecución son aceptables en todos los casos. En cuanto al diagnóstico de fallas reconoce todos los estados pero identifica las fallas con un retardo, lo cual no es conveniente a la hora de realizar trabajos en línea.

6. LAMDA. Aplicable a clasificación supervisada y no supervisada. Tuvo un buen desempeño en todas las pruebas realizadas a excepción del diagnóstico de diabetes, probablemente por las características de los datos. En cuanto al diagnóstico de fallas cabe resaltar que este método tiene una enorme ventaja sobre los demás en cuanto a que no requiere de una previa definición del número de clases. Con respecto al tiempo de cómputo como no requiere iteraciones es bastante bueno.

7. Redes Neuronales. Aplicable a clasificación supervisada. Tuvo un buen desempeño en todas las aplicaciones pero es uno de los métodos que mayor tiempo de cómputo requiere.

Page 66: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

60

Es importante tener en cuenta que los resultados obtenidos dependen mucho de los datos con los que se trabaje, en cuanto a separabilidad de los individuos de diferentes clases, rangos de los atributos, posible ruido presente en los datos y redundancia de atributos. Por esta razón es dispendiosa la selección de bases de datos apropiadas para realizar comparaciones entre los métodos y, además, es muy importante considerar la posibilidad de llevar a cabo un tratamiento previo de los datos para obtener buenos resultados. Una de los campos de mayor aplicación de los métodos de clasificación es el diagnóstico de sistemas con aprendizaje a partir de datos de entrenamiento, sin embargo, una limitante al momento de elegir el método de clasificación es la capacidad de análisis de datos en tiempo real, por esto métodos estadísticos como Fisher y K-vecinos no se puede emplear en supervisión de fallas. Finalmente, se desarrolló un software que permite realizar clasificación con 5 métodos: Fisher, K-vecinos, Montaña, C-means y Gustafson Kessel, con el cual se llevaron a cabo la mayoría de las pruebas realizadas. Se decidió desarrollar esta herramienta teniendo en cuenta que las que se encontraban disponibles solo permitían realizar evaluaciones de limitadas bases de datos y con muy pocos métodos y, además, estaban desarrolladas en diferentes plataformas lo cual no permitía una apropiada comparación de los algoritmos. Aunque en este momento el software desarrollado es una herramienta útil para llevar a cabo clasificación se considera importante complementarla con otros métodos y hacer algunas mejoras en las opciones disponibles, tal es el caso de archivos de salidas y visualización de los datos.

Page 67: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

61

APÉNDICE A: ALGUNOS CONCEPTOS PREVIOS [4] Distancia Manhatan La distancia de Manhatan entre ix y jx está definida por

∑=

−=n

mjmimji xxxxd

1),(

Esta medida no está normalizada, por lo que las componentes de los vectores deben escalarse previamente. Distancia euclidiana La comparación euclidiana consiste en medir que tan cerca está un vector de otro. Para esto se toma la

sumatoria de las diferencias en cada dimensión nℜ de los vectores. Esta medida no está normalizada, por lo que los vectores deben ir con valores debidamente escalados. La distancia euclidiana entre ix y jx esté dada por

( ) ( )∑=

−−=n

mjmimjmimji xxxxxxd

1

'),(

Cuando los vectores son iguales esta medida da como resultado cero, desafortunadamente no se tiene un parámetro estándar para determinar que tan diferentes son dos vectores. Distancia de Mahalanobis La distancia de Mahalanobis entre ix y jx esté dada por:

( ) ( )∑=

− −−=n

mjmimjmimji xxxxxxd

1

1' cov),(

Donde 1cov− es la inversa de la matriz de covarianza de los datos.

Page 68: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

62

REFERENCIAS BIBLIOGRÁFICAS

[1] ACUÑA, E. Disponible en: http://math.uprm.edu/~edgar/ clasifall7.pdf

[2] AKKIZIDIS I, ROBERTS G., “Fuzzy clustering methods for identifying and modelling of non-linear control strategies”, Mechatronics Research Center, University of Wales College, Newport, South Wales, UK,

[3] ALFARO E., GAMEZ M., GARCÍA N., “Una revisión de los métodos de clasificación aplicables a la economía”, Área de estadística, Departamento de Economía y Empresa, Universidad de Castilla/La mancha. España

[4] ANDERSEN G., “Clasification and estimation of forest and vegetation variables in optical high resolution satellites: A review of methodologies”, International institute for applied systems analysis, LAxenburg, Austria.

[5] BABUSKA R., “Fuzzy Modeling for Control”, Kluwer Academic Publishers, Mass., USA. 1998.

[6] BISHOP C., “Neural networks for pattern recognition”, Oxford University Press, 1995.

[7] FANDIÑO J., “Método LAMDA para Clasificación de Estados Funcionales y Plataforma de clasificación de Fallas en Procesos Industriales”, Universidad de los Andes, 2004

[8] GAUTHIER, A, DUQUE. M. “Control por Computador”. Universidad de los Andes. 1999

[9] GRANZOW M., SCHUSTER A., BERRAR D., AGUAJE F., DUBITZKY W y EILS R., “Tumor Classification by Gene Expression Profiling: Comparison and Validation of Five Clustering Methods”, Alemania.

[10] HANSEN P., MLADENOVIC N., “J-Means: A New Local Search Heuristic for Minimum Sum-of-Squares Clustering”, Montreal Canadá.

[11] ISAZA C., KEMPOWSKY T., AGUILAR J., GAUTHIER A., “Clasificación Cualitativa con la Metodología LAMDA, Comparación con dos Técnicas de Clasificación”, LAAS, Universidad de los Andes.

[12] ISAZA C., “Clasificación y Diagnóstico de Procesos empleando Metodología LAMDA”, Universidad de los Andes. 2004.

[13] JAIN A., DUIN R., MAO J., “Statistical Pattern Recognition: A Review”, IEEE transactions on pattern analysis and machine intelligence, vol. 22, no. 1, enero de 2000.

[14] JOHNSON R., WICHERN D., “Applied Multivariate Statistical Analysis”, Prentice Hall, 2002.

[15] KUNCHEVA L., “Fuzzy classifier Design. Physica-Verlag”, UK. 2000

[16] MICHIE D., SPIEGELHALTER D., TAYLOR C., “Machine Learning, Neural and Statistical Classification”, 1994. Disponible en http://www.amsta.leeds.ac.uk/~charles/statlog/

[17] MUÑOZ E., “La técnica de análisis discriminante: Una aplicación para el área bancaria”, Banco Central de Costa Rica, división económica. Departamento de investigaciones económicas. Agosto, 1998

Page 69: ANÁLISIS COMPARATIVO DE MÉTODOS DE CLASIFICACIÓN

IEL2-I-04-17 IEL2-I-04-19

63

[18] SUN C., MIZUTANI E Y JANG J., “Neuro-Fuzzy and Soft Computing: A Computacional Approach to Learning and Machine Intelligence”, Prentice Hall. 1998.

[19] University of California, UCI Machine Learning Repository, Disponible: http://www.ics.uci.edu/~mlearn/MLSummary.html

[20] YAGER R. y FILEV D., “Generation of fuzzy rules by mountain clustering”, Journal of Intelligent and Fuzzy Systems, 2:209-219, 1994.

[21] YAGER R. y FILEV D., “Essentials of fuzzy modeling and control”, John Wiley &Sons, Inc, 1994. OTRAS REFERENCIAS

[1] AGUILAR J., LOPEZ R., “The process of classification and learning the meaning of linguistic descriptors of concept, Approximate Reasoning in Decision Analysis”, Ed. North Holland Publishing Company, 1982.

[2] BELTRÁN M., “Nuevos métodos para el diseño de clusters no jerárquico. Una aplicación a los municipios de Castilla y León”, estadística española Vol. 43, Núm. 148, 2001, págs. 209 – 224.

[3] BEZDEK J., “Pattern Recognition with Fuzzy Objective Function”, Plenum Press, NY, USA, 1981.

[4] COSTA P., “Autonomous Mountain-Clustering Method Applied to Fuzzy Systems Modeling”, Laboratorio de Mecatrónica, Instituto Superior Técnico, Costa Branco, Lori and Dente, 1995, Disponible: http://pbranco.ist.utl.pt/asme95.pdf

[5] CHEUNG Y. K-Means: A new generalized k-means clustering algorithm. Department of Computer Science, Hong Kong Baptist University, Hong Kong. 2003. Disponible:http://www.comp.hkbu.edu.hk/~ymc/papers/journal/PATREC_3261_publication_version.pdf

[6] HAYKIN S., “Neural Networks: A Comprehensive Foundation". Macmillan, 1994

[7] MASADEH A., HASSOUN M., (May 1998) “A New Approach to Fitting Linear Models in High Dimensional Spaces”Extreme Point Machine (EPM): 2-D 2-Class) Disponible: http://neuron.eng.wayne.edu/SVM_note.html

[8] OSUNA R., “Introduction to Pattern Analysis”, Texas A&M University. Disponible en http://www.iti.upv.es/~fcn/students/rna/t2rna4p.pdf

[9] PIERA N., AGUILAR M., “Controlling Selectivity in Nonstandard Pattern Recognition Algorithms”, IEEE Transactions on Systems, Man, and Cybernetics, January-February, 1991

[10] RASORE A., “Utilización de clusters en la determinación de estados de segmentación”, Universidad de CEMA, Argentina.

[11] ZHONG S., GHOSH J., “Unified Framework for Model-based Clustering and Its Application to Clustering Time Sequences”, Department of Electrical and Computer Engineering. The University of Texas at Austin. 2002. Disponible: http://www.ece.utexas.edu/~szhong/papers/modelbased.pdf