You are on page 1of 103

Edgar Acuna /ESMA 6835 Clasificacin

Notas de Anlisis Discriminante

Dr. Edgar Acua Fernndez Departamento de Matemticas Universidad de Puerto Rico en Mayaguez E-mail:edgar@math.uprm.edu Homepage;www.math.uprm.edu/~edgar

Noviembre 2000

2000, Derechos Reservados por Edgar Acua, prohibida la reproduccin total o parcial de este documento sin el permiso del autor.

Edgar Acuna /ESMA 6835 Clasificacin

Prlogo
El anlisis discriminante es un rea excitante en Estadstica, envuelve muchos temas interesantes tales como:formulacin de un problema, construccin de un modelo, estimacin, teora de decisin, prediccin, interpretacin de resultados, etc. La finalidad de este curso es presentar los diversos mtodos de anlisis discriminante, comenzando con el ms bsico y conocido de ellos, el anlisis discriminante lineal (Fisher, 1936) hasta llegar a los ms modernos basados en remuestreo (Breiman, 1998) los cuales buscan reducir al mximo la tasa de clasificacin errada del modelo. Al final del curso se espera que el estudiante sepa aplicar varios mtodos de anlisis discriminante a datos de la vida real usando un paquete estadstico: MINITAB, SAS, S-Plus, SPSS y decidir cual de ellos es el ms conveniente. Prerequisito para tomar este curso: Obligatorio: Un curso de un ao en Estadstica Aplicada, que incluya regresin multiple y anlisis de varianza. Recomendado: Haber usado previamente algn programa estadstico, tales como MINITAB, SAS, S-Plus, SPSS, Stata, Statistica, Statgraphics. Conocer la regla de Bayes. Algn concoimiento de la distribucin normal multivariada y de mtodos de estimacin. A quin va dirigido: A profesores y Estudiantes de ltimo ao de Estadstica o de otras carrera que usan tcnicas estadsticas para datos mulvariados: Ingenieria, agronoma, biologa, educacin, economa, psicologa, etc.

Edgar Acuna /ESMA 6835 Clasificacin

Contenido
1. Introduccin.
1.1 1.2 1.3 1.4 Aplicaciones de clasificacin. Ejemplo de Motivacin. Notacin y Definiciones bsicas. Mtodos de Anlisis Discriminante.

2. Anlisis Discriminante Lineal. 2.1 Anlisis Discriminante segn Fisher.


2.2 Prueba de igualdad de matrices de covarianza. 2.3 Prueba de normalidad multivariada 2.4 Relacin de Anlisis Discriminante con Regresin Lineal. 2.5 Ventajas y Desventajas de Anlisis Discriminante Lineal.

3. Anlisis Discriminante desde el punto de vista Bayesiano.


3.1 Aplicacin al anlisis discriminante lineal.

4. Estimacin de la tasa de clasificacin errada. 5. Anlisis Discriminante Cuadrtico.


5.1 Anlisis Discriminante Cuadrtico en MINITAB y SAS.

6. Discriminacin usando Regresin Logstica.


6.1 Regresin Logstica en MINITAB y SAS.

7. Mtodo de los K vecinos ms cercanos.


7.1 Discriminacin usando los k vecinos ms cercanos en S-Plus y SAS.

8. Mtodos usando estimacin de densidades por kernels.


7.1. Discriminacin usando estimacin de densidades por Kernel en SAS.

9. Mtodo de Clasificacin por rboles.


9.1. Clasificacin por rboles en S-Plus.

10. Redes neurales.


10.1 El Preceptron simple. 10.2 El Percepron de multiples niveles. 10.3. Clasificacin por redes neurales en S-Plus.

11. Recientes avances en anlisis discriminante.

Edgar Acuna /ESMA 6835 Clasificacin

1. Introduccin
Clasificacin: Es un problema multivariado que consiste en asignar individuos u objetos a uno de N grupos o clases basndose en mediciones de las variables x1, x2, . xp, tomadas en ellas. Hay dos tipos de problemas de clasificacin: Anlisis Discriminante (conocido tambin como reconocimiento de patrones supervisado). En este caso se dispone de un conjunto de observaciones multivariadas, para las cuales se conoce a priori la clase a la cual pertenecen, sta es llamada una muestra de entrenamiento. Es decir, cada caso en la muestra consiste del valor de una variable de respuesta y y de un vector x=(x1,x2, ..xp) que representa p caractersticas de un sujeto u objeto. Con los datos de la muestra de entrenamiento se encuentra la regla de clasificacin o clasificador. Tambin se tiene otro conjunto de datos, con las mismas propiedades distribucionales de la muestra de entrenamiento y el cual es usado para validar el clasificador, ste es llamada la muestra de prueba. Algunas veces la misma muestra de entrenamiento ( o un porcentaje de ella) es usada como muestra de prueba. Anlisis por conglomerados (conocido tambin como reconocimiento de patrones no supervisado). En este caso los grupos no son conocidos de antemano, es decir no hay variable de respuesta . El objetivo del anlisis es determinar los agrupamientos de datos tales que los elementos dentro del mismo grupo son mas similares u homogeneos que aquellos que pertenecen a otros grupos. Algunas veces este anlisis es usado como una etapa previa del anlisis discriminante. En este curso mayormente se discutirn tcnicas de anlisis discriminante.

1.1 Aplicaciones de Clasificacin:


1) Aplicacin en Agricultura: Clasificacin de cultivos usando fotografias tomadas por satlite. Determinar el tipo de emfermedad en una planta de acuerdo a varias mediciones que se toman. 2) Aplicacin en Medicina: Un paciente es admitido a un hospital con diagnstico de infarto cardiaco, se le toman medidas de presin sanguinea sistlica, presin sanguinea diastlica, ritmo cardiaco, indice del ataque y presin arterial. Se desea saber si el paciente morir o sobrevivir? 3) Aplicacin en Educacin: Un estudiante est tomando Calculo I este semestre. Se conoce su promedio de graduacin de escuela secundaria, el tipo de escuela secundaria de donde proviene, resultados en el examen de admisin, notas en cursos de Pre-calculo, el nmero de veces que ha tomado clculo. Se desea saber si el estudiante pasar o fracasar Clculo durante el presente semestre. 4) Aplicacin en Ingeniera: Reconocimiento de Patrones (Pattern recognition) Reconocimiento de nmeros escritos a mano. Reconocimiento del habla. Verificacin de firma. 5) Aplicacin en Economa y Finanzas:

Edgar Acuna /ESMA 6835 Clasificacin

En la toma de decisiones financieras: vender, comprar una compaia. Otorgar o denegar una tarjeta de crdito en base a varias caractersticas del solicitante. Programas de desarrollo rural: En una area se miden las siguientes variables: La distancia a la ciudad mas cercana con una poblacin de ms de 100,000 habitantes, el porcentaje de forestacin en el rea, los kilometros de rios que cruzan el rea, la distancia al aeropuerto ms cercano, etc. y se desea determinar si el area debe ser urbanizada o no. 6) Aplicacin en Biologa: Ecologa. Taxonoma. Estudios forenses del DNA Reconocimiento de huellas digitales. 7) Aplicacin en Piscologa Dados varios sntomas se desea ver si un paciente tiene o no depresin. 8) Aplicacin Militar: Identificacin de Msiles. Reconocimiento de terrenos. 9) Aplicacin en Arqueologa Clasificacin de la raza a la cual pertenece esqueletos hallados. 10) En Metereologa Se miden varias variables y se desea predicir si el da ser nublado, soleado o lluvioso.

1.2 Ejemplo de Motivacin


Ejemplo 1. En una clase de Estadistica Aplicada I consistente de 32 estudiantes, se toman la siguientes variables E1: Nota del estudiante en el examen I (0-100) E2: Nota del estudiante en el examen II (0-100) Nota: Nota Final del estudiante en la clase (0-100) Aprobacin: Asume los valores P: si el estudiante pasa la clase y F si fracasa en la clase Se quiere predecir el resultado de un estudiante que tomar la clase en un prximo semestre, bajo las mismas condiciones actuales (mismo profesor, mismo texto, mismo nivel de estudiante, etc). El diagrama de puntos de los datos viene dado en la siguiente figura

100 90 80 70 P

P P P P P P P F F F F F P P P F P F F P P P P

P P P P

EX2

60 50 40 30 20 10 40 50 60

70

80

90

100

EX1

Edgar Acuna /ESMA 6835 Clasificacin

En un primer intento podriamos codificar la variable de respuesta Aprobacin en una numrica Aprobn: 0 si Fracas y 1 si Aprob, y luego hacer una regresin lineal mltiple para predecir el resultado en la clase en base a los resultados de los dos primeros exmenes. Pero esto puede producir estimados de la variable de respuesta que caen fuera del intervalo [0, 1], los cuales seran ilgicos. Haciendo uso del paquete estadstico MINITAB, siguiendo la secuencia de menus STAT4Regression4Regression se obtiene los siguientes resultados:

Regression Analysis

The regression equation is APROBN = - 0.444 + 0.00830 EX1 + 0.00941 EX2 Predictor Constant EX1 EX2 S = 0.3194 Coef -0.4438 0.008298 0.009406 StDev 0.2817 0.003981 0.002274 T -1.58 2.08 4.14 P 0.126 0.046 0.000

R-Sq = 50.7%

R-Sq(adj) = 47.3%

Notar que el coeficiente de determinacin es bastante bajo, lo cual le resta confiabilidad al modelo para hacer predicciones. Pero an as tratando de predecir el resultado en el curso para un estudiante que obtiene 50 en el primer examen y 75 en el segundo examen se obtiene lo siguiente
Predicted Values Fit 0.6766 StDev Fit 0.1120 95.0% CI 0.4474, 0.9057) 95.0% PI ( -0.0157, 1.3688)

Redondeado el estimado 0.6766 a 1 significara que el estudiante aprueba el curso. Desde el punto de vista de anlisis discriminante, se sabe que hay solo dos clases de estudiantes. Los estudiantes que pasan forman una clase P y los que no pasan forman la clase F. El objetivo es ahora determinar a que clase pertenece el estudiante anteriormente mencionado. Un primer intento de decidir a que clase va el estudiante es obtener la distancia Euclideana del punto (50,75) a los valores promedios de los examenes 1 y 2 para ambos grupos de estudiantes En nuestro caso

x1P = 75.54 x1F = 59.50

x 2 P = 73.75 x 2 F = 34.00

2 luego, DP =(50-75.54)2+(75-73.75)2=653.854 , es la distancia cuadrada del punto al centro de la

clase P, y

2 DF =(50-59.50)2 + (75-34.00)2=1052.97, es la distancia cuadrada del punto al centro 2 2 de la clase F. Como DP < DF se asigna el estudiante a la clase P.

Edgar Acuna /ESMA 6835 Clasificacin

Sin embargo, el anterior mtodo no es muy correcto porque la presencia de correlacin de las variables E1 y E2 en cada clase podra afectar el peso que se le da a cada uno de los examenes en cada clase. Esto es cuantificado por las matrices de covarianzas de las variables en cada clase. En nuestro caso Sp=

187.56 34.23 y 34.23 507.07

S F=

183.43 97.29 97.29 106.29

y en lugar de usar la distancia Euclideana se usa la distancia Mahalanobis, que en forma matricial sera la siguiente para la clase P
2 p 1 p

D =(x- x p )' S

187.56 34.23 (x- x p )=(25.54 1.25) 34.23 507.07

25.54 1.25 =3.5010

y para la clase F ser


2 F 1 F (x-

D =(x- x F )' S

183.43 97.29 x F )=(9.59 31.00) 97.29 106.29

9.59 31.00 = 24.3134

en consecuencia el estudiante es asignado a la clase P. Evidentemente no se puede estar haciendo el clculo de las distancias y las comparaciones para cada punto, sera demasiado trabajo, lo ideal es encontrar una regla de decisin representada por una linea ( o curva en general) que separa las dos clases. Haciendo uso de los resultados que da MINITAB siguiendo la secuencia Stat4 Multivariate 4Discriminant Analyisis se obtiene la siguiente regla de decisin: Si 0.085 E1+0.096 E2 >10.8222 entonces el estudiante pertenece a la clase P. Esta es llamada la funcin discriminante lineal y es el mtodo ms sencillo de clasificar a un sujeto u objeto en una clase dada. Por ejemplo, un estudiante con E1=50 y E2=75 pertenece a la clase P, puesto que el lado izquierdo da 11.45 mayor que 10.8222. En la siguiente grfica se pueden ver los puntos de la muestra tomada y la linea que respresenta a la regla de decisin.

Edgar Acuna /ESMA 6835 Clasificacin


ANALISIS DISCRIMINANTE LINEAL PARA EL RESULTADO FINAL EN LA CLASE BASADO EN DOS EXAMENES

110 100 90 80 70 60 50 40 30 20 10 0 20 30 40 50 60 70 80 90 100 0.085E!+0.096E2<10.8222

f p

E2

0.085E1+0.096E2>10.8222

E1

En el anlisis por conglomerados, solo se conocen los resultados en los examenes y la idea es hallar grupos de estudiante que tenga un rendiiento afn. En este caso lo ms indicado es tratar de identificar 5 grupos de estudiantes: los que pasan el curso con A, B, C y D y los que fracasan el curso (F). Haciendo un anlisis por conglomerado usando el mtodo jerrquico se obtiene que los que pertenecen al grupo A son los estudiantes 1,2,3,4,5, 6, 7, 11, 14 y 15; al grupo B: 8,10 y 12 al grupo C: 9, 13, 17, 18, 20, 23 y 24 al grupo D: 16, 19, 28 y 31 y al grupo F: 21, 22, 25, 26, 27, 29,30 y 32. MINITAB produce los siguientes resultados

Hierarchical Cluster Analysis of Observations

Euclidean Distance, Complete Linkage output omitido -----------------Final Partition Number of clusters: 5 Within cluster sum of squares 1550.900 220.000 994.857 135.500 1206.375 Average distance Maximum distance from centroid from centroid 12.139 16.236 7.762 11.402 11.183 16.721 5.650 6.792 11.580 19.750

Cluster1 Cluster2 Cluster3 Cluster4 Cluster5

Number of observations 10 3 7 4 8

Cluster Centroids Variable EX1 EX2 Cluster1 84.4000 91.5000 Cluster2 55.0000 92.0000 Cluster3 73.2857 60.7143 Cluster4 78.2500 24.2500 Cluster5 56.7500 41.1250

Edgar Acuna /ESMA 6835 Clasificacin

Variable EX1 EX2

Grand centrd 71.5312 63.8125

Distances Between Cluster Centroids Cluster1 0.0000 29.4043 32.7305 67.5306 57.4645 Cluster2 29.4043 0.0000 36.2376 71.6284 50.9051 Cluster3 32.7305 36.2376 0.0000 36.8007 25.6353 Cluster4 67.5306 71.6284 36.8007 0.0000 27.3316 Cluster5 57.4645 50.9051 25.6353 27.3316 0.0000

Cluster1 Cluster2 Cluster3 Cluster4 Cluster5

Edgar Acuna /ESMA 6835 Clasificacin

10

Dendrograma para el analisis por conglomerados usando metodos jerarquicos Similarity


0.00

33.33

66.67

100.00
2 3 1 4 5 6 14 11 15 7 8 10 12 13 17 20 24 9 18 23 16 28 19 31 21 22 27 29 25 32 26 30

Observations

1.3 Notacin y Definiciones bsicas


N representa el nmero de clases o grupos Ci (i=1,2, .N) representa la i-sima clase o grupo x=(x1,x2, ..xp) representa un vector aleatorio de p caractersticas de un sujeto u objeto. representa la probabilidad a priori de que un sujeto u objeto pertenezca a la clase Ci i f(x/ Ci ) o fi(x) representa la funcin de densidad (condicional) de x en la clase Ci ui representa el vector de medias poblacionales de x en la clase Ci i representa la matriz de covarianzas de x en la clase Ci

x i representa el vector de medias muestrales de x en la clase Ci


Si representa la matriz de covarianzas muestrales de x en la clase Ci La regla de Bayes: En trminos de eventos: Si A1, ..An forman una particin del espacio muestral S y B es otro evento definido en S. Entonces

P ( Ai / B) =

P ( Ai ) P ( B / Ai )

P( A ) P(B / A )
j j j =1

para i=1,2,....n, las probabilidades P(Ai) son llamadas probabilidades apriori y las probabilidades P(Ai/B) son llamadas las probabilidades a posteriori. Versin para funciones de densidades: La probabilidad a posteriori de que un sujeto u objeto con las mediciones dadas por el vector x pertenezca a la clase Ci est dada por:

Edgar Acuna /ESMA 6835 Clasificacin

11

P (C i / x) =

f (x / C i ) P (x C i ) = f (x)

f (x / C i )i

j =1

f (x / C j )

La Distribucin Normal multivariada. Se dice que el vector aleatorio x=(x1,x2, ..xp) se distribuye como una normal multivariada de dimensin p con vector de medias u y matriz de covarianzas si su funcin de densidad es de la forma

f (x) =

1 (2)
p/2

||

1/ 2

exp[

1 (x u )' 1 (x u)] 2

y se escribe x ~ Np(u,)

Edgar Acuna /ESMA 6835 Clasificacin

12

1.4. Mtodos de anlisis discriminante


1. Anlisis Discriminante Lineal 2. Mtodos No Lineales: Discriminacin Cuadrtica y Regresin Logstica, Projeccin Pursuit 3. Mtodos basados en arboles de decisin 4. Mtodos basados en estimacin de funciones de densidades: Mtodo k-nn ( los k vecinos ms cercanos), metodos de estimacin de densidades usando kernels, mtodo de estimacin de densidades usando mezclas gaussianas. 5. Redes Neurales: Multilayer perceptron. Radial Basis Function, Kohonen self-organizing map, Linear vector quantification. 6. Support vector machines.

2. Anlisis Discriminante Lineal (Fisher, 1936)


Consideremos que nuestra muestra de entrenamiento tiene la siguiente estructura

Y 1 1 .. 1 2 2 .. 2

X1 X11 X12 .. X1n1 X1,n1+1 X1,n1+2 .. X1,n1+n2

X2 X21 X22 .. X2n1 X2,n1+1 X2,n1+2 .. X2,n1+n2

. ..

Xp Xp1 Xp2 .. Xpn1 Xp,n1+1 Xp,n1+2 .. Xp,n1+n2

Es decir, tenemos solo dos clases de objetos: C1 y C2 y p caractersticas que se miden en ellos para asignarlos a una clase respectiva. Hay n1 objetos en la clase 1 y n2 en la clase 2. Sea x1 = ( x1 , x 2 ,...x p ) , el vector de medias de las p variables predictoras en la clase 1 y x 2 el correspondiente vector de medias en la clase 2. Representemos por u 1 y u 2 respectivamente a los vectores de medias poblacionales de las variables predictoras en cada clase. y supongamos que las matrices de varianzas poblacionales en cada clase son iguales. Osea, = 2= (esta es llamada la propiedad de Homocedasticidad). Asumir normalidad de los 1

datos no se requiere por ahora. La discriminacin lineal se basa en el siguiente hecho: Un objeto x es asignado a la clase C1 si D(x, C1)<D(x,C2) (2.1) Donde D(x,Ci)= ( x u i )' 1 ( x u i ) , para i=1,2, representa el cuadrado de la distancia Mahalanobis de x al centro de la clase Ci . La ecuacin (2.1) puede ser escrita como

2( u 1 u 2 )' -1 [x - 1/2(u 1 - u 2 )] < 0


haciendo manipuleo algebraco, esta ltima expresin es equivalente a

Edgar Acuna /ESMA 6835 Clasificacin

13

(u 1 u 2 )' 1 [x 1 / 2(u 1 + u 2 )] > 0 (2.2) Usando la muestra de entrenamiento, x i estima a u i y es estimada por S, la matriz de
covarianza muestral combinada, la cual se calcula por

S=

(n1 1) S1 + (n2 1)S 2 n1 + n2 2

donde, S1 y S2 representan las matrices de covarianzas muestrales del vector de variables predictoras en cada clase. En consecuencia, la versin muestral de (2.2) resulta ser

(x1 x 2 )' S 1 [x 1 / 2( x1 + x 2 )] > 0 (2.3)


La expresin del lado derecho de (2.3) es llamada la funcin discriminante lineal. En el ejemplo 1, donde la Clase 1 es P y la Clase 2 es F, tenemos

75.54 59.50 x1 = 73.75 , x 2 = 34.00 , n1=24 , n2=8 186.599 3.542 187.56 34.23 183.43 97.29 S1 = 34.23 507.07 , S 2 = 97.29 106.29 , S = 3.542 413.550 y 0.00535 0.00004 S 1 = 0.00004 0.00241
Sustituyendo estos valores en la ecuacin 2.3, usando x = discriminante lineal 0.085E1+0.096E2 - 10.8222 > 0.

E1 , se obtiene la funcin E2

2.1. La funcin discriminante lineal segn Fisher.


En 1936, Fisher obtuvo la funcin discriminante lineal de la ecuacin (2.3) pero siguiendo otro camino. El trat de hallar una combinacin lineal de las variables xi que separaba las clases Ci lo ms posible, asumiendo que ambas matrices de covarianza son iguales (1=2=). Ms especificamente, Fisher encontr, que si y=d'x entonces, la distancia al cuadrado entre las medias de y en ambas clases dividido por su varianza en cada grupo, definida por

(d ' u1 d ' u 2 ) 2 (2.4). d ' d


es mxima cuando d=-1(u1-u2). Este resultado es una aplicacion de la desigualdad de Cauchy Schwartz (ver Rao, C. R. Linear Statistical Inference and its applications, pgina 60). El

Edgar Acuna /ESMA 6835 Clasificacin

14

numerador es llamada tambin la suma de cuadrados entre grupos y el denominador la suma de cuadrados dentro de los grupos. Un estimado del valor d es S-1( x1 - x 2 ). Fisher asign un objeto x a la clase C1 si y=( x1 - x 2 )' S-1 x est ms cerca a y1 =( x1 - x 2 )' S-1 x1 que a y 2 . El punto medio entre y1 y y 2 es

y 1 + y 2 (x1 x 2 )' S 1 (x1 + x 2 ) = 2 2


Notar que y est ms cerca a y1 si y>( y1 + y 2 )/2, lo cual produce la ecuacin (2.3). Fisher aplic su mtodo para clasificar tres especies de Iris:Setosa, Versicolor y Virgnica de acuerdo a la longitud y ancho del ptalo y spalo y obtuvo excelentes resultados. Sin embargo, si bien hay normalidad multivariada de las variables predictoras x en cada clase, pero la suposicin de igualdad de matrices de covarianza no se cumple.

2.2. Pruebas de Igualdad de matrices de covarianza (homocedasticidad) y de Normal multivariada


Cuando se trata de probar si hay igualdad de variabilidad de dos poblaciones multivariadas, la prueba ms usada es la de Bartlett que es una modificacin de la prueba de razn de verosimiltud, sin embargo est sujeta a la suposicion de normal multivariada. Otras alternativas son extender la prueba de Levene, usada para comparar la variabilidad de varias poblaciones univariadas, para luego combinarla con la prueba T2 de Hotelling usada para comparar dos medias multivariadas. La prueba de Hotelling est'a disponible en la mayoria de los programas estadsticos. Tambin est la prueba de Van Valen ( ver Manly, Multivariate Statistical Methods, pgina 45 ) la cual es bien sencilla de llevar a cabo y que solo requiere el uso de la distribucinn t de Student. En esta prueba primero se estandarizan los datos para darle igual peso a cada variable predictora y luego se calculan los valores

d ij =

(x
k =1

ijk

M jk ) 2

donde xijk es el valor de la variable Xk para el i-simo individuo en la muestra j y Mjk es la mediana de la variable Xk en la j-sima muestra. Finalmente las medias muestrales de los dij para las dos muestras son comparados usando una prueba de t asumiendo varianzas distintas. Ejemplo: Aplicar la prueba de Van Valen a los datos del ejemplo 1
Haciendo uso de MINITAB, se obtiene los siguientes valores dij di1 di2 0.70776 1.51650 1.48820 1.43887 0.49734 1.67108 1.14059 1.27579 0.16578 1.06432 0.46308 0.01882 1.36670 0.58334 0.62617 0.80810 1.41464

Edgar Acuna /ESMA 6835 Clasificacin

15

1.25000 0.32995 2.05283 1.15273 0.06852 0.27786 2.01454 0.73612 1.01672 2.29809 0.93436 1.51993 1.35928 1.43570 0.53300 y los resultados de la prueba estadstica de t para comparar los grupos son
Two-sample T for di1 vs di2 N 8 24 Mean 0.807 1.115 StDev 0.472 0.613 SE Mean 0.17 0.13

di1 di2

Difference = mu di1 - mu di2 Estimate for difference: -0.309 95% CI for difference: (-0.753, 0.136) T-Test of difference = 0 (vs not =): T-Value = - 1.48

P-Value = 0.160

DF = 15

El "p-value" mayor que 0.05 indica que la hiptesis de igualdad de matrices de covarianza no es rechazada. En conclusin se cumple la suposicin de igualdad de covarianzas. Una alternativa sera usar la prueba de Mann-Whitney en lugar de la t para dos muestras. Podemos aplicar tambin la prueba de Bartlett usando SAS y se obtienen los siguientes resultados
Discriminant Analysis Test of Homogeneity of Within Covariance Matrices = Number of Groups = Number of Variables = Total Number of Observations - Number of Groups

Notation: K P N

N(i) = Number of Observations in the i'th Group - 1 __ N(i)/2 || |Within SS Matrix(i)| = ----------------------------------N/2 |Pooled SS Matrix| _ | 1 = 1.0 - | SUM ----|_ N(i) _ 2 1 | 2P + 3P - 1 --- | ------------N _| 6(P+1)(K-1)

RHO

Edgar Acuna /ESMA 6835 Clasificacin


DF = .5(K-1)P(P+1)

16

Under null hypothesis:

_ _ | PN/2 | | N V | -2 RHO ln | ------------------ | | __ PN(i)/2 | |_ || N(i) _|

is distributed approximately as chi-square(DF)

Test Chi-Square Value =

8.676772

with

3 DF

Prob > Chi-Sq = 0.0339

Since the chi-square value is significant at the 0.1 level, the within covariance matrices will be used in the discriminant function. Reference: Morrison, D.F. (1976) Multivariate Statistical Methods p252.

En este caso la la hiptesis nula de igualdad de varianza es rechazada pues le "p-value" es 0.0339 menor que 0.05 y no sera conveniente usar anlisis discriminante lineal. Cuando se tiene varias poblaciones multivariadas cuya variabilidad se desea comparar se usa la prueba de razn de verosimilitud pero, sta es vlida siempre que la suposicin de normalidad se cumpla. SAS usa una modificacin de razn de verosimilitud debido a Bartlett para probar homocedasticidad, la cual sin embargo es bien sensible si no hay normalidad. Una solucin sera probar primero normalidad multivariada usando la prueba de Mardia, la cual se basa en la distribucin de los coeficientes de asimetra y kurtosis. Hay un macro en SAS para esta prueba, en cual se hace uso del procedimiento IML para matrices. Si no hay normalidad se podria usar una extension de la prueba de Van Valen combinada con una prueba de F de anlisis de varianza. La prueba de Hawkins (Technometrics, 1981) permite probar simultneamente normalidad multivariada y homocedasticidad. Desafortunadamente esta prueba no aparece en ningn programa estadstico. MINITAB no incluye prueba para homocedaticidad multivariada ni prueba de normalidad multivariada. La version 2000 de S-Plus tambin tiene pruebas de homoscedasticidad.

Edgar Acuna /ESMA 6835 Clasificacin

17

2.3. La prueba de Mardia para normalidad multivariada Consideremos que x (j=1, .n) representan las observaciones en la muestra de entrenamiento j correspondiente a una clase particular C. Si se consideran p variables predictoras entonces cada xj es un vector columna p-dimensional. Deseamos probar que el vector aleatorio X=(X1, ..Xp) se distribuye ne forma normal multivariada en C. Mardia basa su prueba en las medidas de asimetra y kurtosis, cuyas estimaciones basadas en la muestra de entrenamiento estn definidas como :

b1 =
y

1 n2

{(x
j =1 k =1

x)' S 1 (x k x)}3

b2 =

1 n

{(x
j =1

x)' S 1 (x j x)}2

respectivamente. Si la hiptesis nula Ho: X es normal multivariada en la clase C es cierta entonces se puede mostrar que para n grande
2 (n / 6)b1 ~ d

con d=(p/6)(p+1)(p+2) grados de libertad, y

[b2 p( p + 2)] / (8 / n) p( p + 2) ~ N (0,1)


Ejemplo: Probar si existe normalidad multivariada para los datos del ejemplo 1.

Haciendo los clculos con MINITAB para la clase C1=P se obtiene que b1= 1.26451 y (n/6)b1=5.05804. Asimismo d=(2/6)(3)(4)=4 dando un p-value para la Ji-Cuadrado de 0.2814. Por otro lado, b2=6.25786, luego z=(6.25786-8)/ 8 / 3 =-1.0668 y el p-value para la prueba de z es 0.2860. Como ambos p-values son mayores que 0.05 no se rechaza la hiptesis nula y se concluye que las notas en los dos examenes para los estudiantes que aprueban se distribuyen como una normal multivariada. Para la clase C2=F se obtiene que b1= 0.484323 y (n/6)b1= 0.645764 . Asimismo d=(2/6)(3)(4)=4 dando un p-value para la Ji-Cuadrado de 0.957800. Por otro lado, b2=3.82457 luego z=(3.82457-8)/ 8 = -1.47624 y el p-value para la prueba de z es 0.1398. Como ambos p-values son mayores que 0.05 no se rechaza la hiptesis nula y se concluye que las notas en los dos examenes para los estudiantes que NO aprueban se distribuyen como una normal multivariada.

Edgar Acuna /ESMA 6835 Clasificacin

18

2.4 Relacin del anlisis discriminante lineal con regresion lineal


El anlisis discriminante lineal es equivalente a una regresin lineal con variable de respuesta Y que asume el valor y1=n2/(n1+n2) si la observacin pertenece a la clase C1 y y 2=-n1/(n1+n2) si la observacin pertenece a la clase C2. Aqui n1 es el nmero de observaciones de la clase C1 y n2 es el nmero de observaciones de la clase C2 . Claramente y =0. La linea de regresin mltiple puede ser escrita como

y = 0 + 1 x1 + ..... + k x k

donde 0 = y

i =1

i x i = i x i . Usando notacin matricial se puede a llegar a establecer


i =1

que si bj representan los coeficientes de la funcin de discriminacin lineal, entonces j = cb j


donde c es una constante definida por

c=

n1n2 /(n1 + n2 ) (n1 + n2 2) + [n1 n2 /(n1 + n2 )]D 2

aqui D2 representa la distancia Mahalanobis al cuadrado entre los dos grupos. En efecto, consideremos el modelo de regresin lineal mutliple con p variables predictoras yj=ao+a j+ej x tal que yj=n2/(n1+n2) si xj pertenece al Grupo 1 y yj= -n1/(n1+n2) si xj peternece al grupo 2. Minimizando la suma de los cuadrados de los errores ej conduce a las ecuaciones normales (yj-ao-a j)(-1)=0 (1) x (yj-ao-a j)(-xj)=0 x (2)

Ahora usando el hecho que yj=0 se obtiene de la primera ecuacin que ao= -ax = -(

n1 n x'1 + 2 x' 2 )a. Sustituyendo en la ecuacin (2) esta se convierte en n n


[-(

n1 n x'1 + 2 x' 2 ) a +a j]xj=yjxj x n n

de donde por la forma como estan definidas las yj se convierte en ( xj x ) a -( j o equivalentemente

nn n1 n x'1 + 2 x' 2 ) a xj= 1 2 ( x1 x 2 ) n n n

Edgar Acuna /ESMA 6835 Clasificacin

19

[ x xj -( j

nn n1 n x'1 + 2 x' 2 )( n1x1 + n2 x 2 )]a= 1 2 ( x1 x 2 ) (3) n n n

haciendo manipuleo algerbrco, lo anterior puede ser escrito como [(n-2)SW+

nn n1n2 ( x1 x 2 )( x1 x 2 )' ]a= 1 2 ( x1 x 2 ) (4) n n


1 [ ( x x1 )(x x1 )' + n 2

donde Sw=

(x

x 2 )(x x 2 )'

es el estimado de la matriz de covarianza combinada, tambin llamada la matriz de covarianza dentro de las clases. De aqui hay dos maneras de llegar a la igualdad deseada a) Usar la formula de Sherman-Morrison (A+uu')-1=A-1+

A 1uu' A 1 1 + u' A 1u

para invertir la matriz que aparece en el lado izquierdo de (4). b) Usar el hecho que

nn n1n2 ( x1 x 2 )( x1 x 2 )' esta en la direccin de 1 2 ( x1 x 2 ) . As que n n


(n-2)SWa=c ( x1 x2 )

donde c es una constante de proporcionalidad. Luego a=

S -1 w k ( x1 - x 2 ) n 2

Para hallar el valor de c sustituir en la ecuacin (4) y con eso la prueba est terminada. Adems, se halla la siguiente relacin entre el coeficiente de determinacin R2de la regresin mltiple y la distancia Mahalanobis.

D2 =

(n1 + n2 )(n1 + n2 2) R 2 ( ) n1n2 1 R2

En el ejemplo de motivacin, se pueden verificar todas las relaciones anteriores. Aqu n1=24 n2=8, D2=5.14212, 1 = 0.008298 , 2 = 0.009406 , b1=0.085, b2=0.096 y R 2=0.507.

Edgar Acuna /ESMA 6835 Clasificacin

20

2.5. Ventajas y Desventajas del anlisis discriminante lineal


A. Ventajas a) Simplicidad del mtodo. b) Las probabilidades a posteriori son fciles de obtener. c) Disponible en muchos paquetes de programas estadsticos. B. Desventajas a) La suposiciones de Normalidad e igualdad de varianza no siempre se cumplen. b) La clasificacin de nuevas observaciones no es muy eficiente a medida que se incrementa el nmero de variables en en el modelo. Se acostumbra a hacer seleccin de variables antes de aplicar el mtodo.

3. Anlisis discriminante desde el punto de vista Bayesiano.


Supongamos que nosotros conocemos de antemano las probabilidades a priori (i=1, 2, N) de i que un objeto pertenezca a la clase Ci . Si no se conoce ninguna informacin adicional entonces la mejor regla de decisin clasificar al objeto como proveniente de la clase Ci si > para i j i=1,2, ..N, i j (3.1)

Sin embargo, usualmente nosotros conocemos alguna informacin adicional, tal como un vector x de observaciones x hechas en el objeto que se desea clasificar. En este caso nosotros comparamos las probabilidades de pertenecer a cada clase para un objeto con mediciones x y clasificamos al objeto como de la clase Ci si P(Ci/x)>P(Cj/x) para todo i j (3.2)

Esta regla de decisin es llamada la regla de Bayes de error mnimo. Las probabilidades P(Ci/x) son llamadas probabilidades a posteriori. Desafortunadamente raras veces se conoce las probabilidades a posteriori y stas deben ser estimadas, como es el caso de regresin logstica, clasificacin por rboles y redes neurales. Una formulacin mas conveniente de la regla anterior puede ser obtenida aplicando el teorema de Bayes, el cual afirma que:

P (Ci / x) =

f (x / C i )i f (x)

(3.3)

que conduce a clasificar a un objeto como de la clase Ci si

f (x / C i )i > f (x / C j ) j

(3.4)

para todo i j. Si las funciones de densidades para cada clase f(x/ Ci ) son conocidas entonces el problema est resuelto, como es el caso de discriminante lineal y cuadrtico ( ver secciones 2 y 5). Pero algunas veces tambin las f(x/ Ci ) son desconocidas y deben de ser estimadas usando

Edgar Acuna /ESMA 6835 Clasificacin

21

la muestra tomada, como es el caso de estimacin de funciones de densidades usando kernels y los k vecinos ms cercanos. Cuando hay solo dos clases presentes la regla de decisin de error mnimo de Bayes puede ser expresada en la forma de una razn de verosimilitud. As un objeto es clasificado como de la clase C1 si

f (x / C1 ) 2 > f (x / C 2 ) 1
3.1 Aplicacin al anlisis discriminante lineal

(3.5)

Supongamos que tenemos dos clases C1 y C2 distribuidas como Np(u1,1) y Np(u2,2) respectivamente y que adems tienen igual matriz de covarianza 1=2 =. Entonces la ecuacin 5 se convierte en

exp[ 1 / 2(x u 1 )' 1 (x u 1 ) 2 > exp[ 1 / 2(x u 2 )' 1 (x u 2 ) 1


Tomado logaritmos en ambos lados se obtiene

(3.6)

1 / 2[(x u 1 )' 1 (x u 1 ) (x u 2 )' 1 ( x u 2 )] > Ln(


de donde haciendo simplificaciones se obtiene (u1-u2)'-1(x-1/2(u1+u2))-> Ln(

2 ) (3.7) 1

2 ) 2

(3.8)

La ecuacin (3.8) es similar a la ecuacin (2.3), excepto por el lado derecho. Si consideramos que las probabilidades apriori son iguales ( = ) se obtienen el mismo resultado. 1 2 Ejemplo 2: El conjunto Iris de Fisher (3 clases y 4 variables) En este ejemplo las clases son tres especies de Iris: Iris setosa, Iris versicolor y Iris virginica que son clasificadas de acuerdo a cuatro variables:longitud de ptalo (petallen) y ancho de ptalo(petalwid), longitud de spalo (sepallen) y ancho de spalo (sepalwid) no se usaron. La muestra de entrenamiento consiste de 150 casos, 50 por cada especie En MINITAB se obtienen los siguientes resultados cuando se consideran las cuatro variables

Discriminant Analysis: especie versus sepallen, sepalwid, ...

Linear Method for Response : especie Predictors: sepallen sepalwid petallen

petalwid

Edgar Acuna /ESMA 6835 Clasificacin

22

Group Count

setosa versicol virginic 50 50 50

Summary of Classification Put into Group setosa versicol virginic Total N N Correct Proportion N = 150 ....True Group.... setosa versicol virginic 50 0 0 0 49 2 0 1 48 50 50 50 50 49 48 1.000 0.980 0.960 N Correct = 147 Proportion Correct = 0.980

Squared Distance Between Groups setosa versicol virginic setosa 0.000 179.385 89.864 versicol 179.385 0.000 17.201 virginic 89.864 17.201 0.000 Linear Discriminant Function for Group setosa versicol virginic Constant -85.21 -103.27 -71.75 sepallen 2.35 1.24 1.57 sepalwid 2.36 0.37 0.71 petallen -1.64 1.28 0.52 petalwid -1.74 2.11 0.64 Variable sepallen sepalwid petallen petalwid Variable sepallen sepalwid petallen petalwid Pooled Mean 58.433 30.573 37.580 11.993 Pooled StDev 5.148 3.397 4.303 2.047 Means for Group setosa versicol virginic 50.060 65.880 59.360 34.280 29.740 27.700 14.620 55.520 42.600 2.460 20.260 13.260 StDev for Group setosa versicol virginic 3.525 6.359 5.162 3.791 3.225 3.138 1.737 5.519 4.699 1.054 2.747 1.978

Pooled Covariance Matrix sepallen sepalwid petallen petalwid sepallen 26.501 sepalwid 9.272 11.539 petallen 16.751 5.524 18.519 petalwid 3.840 3.271 4.267 4.188 Covariance Matrix for Group setosa sepallen sepalwid petallen petalwid sepallen 12.4249 sepalwid 9.9216 14.3690 petallen 1.6355 1.1698 3.0159 petalwid 1.0331 0.9298 0.6069 1.1106 Covariance Matrix for Group versicol sepallen sepalwid petallen petalwid sepallen 40.4343 sepalwid 9.3763 10.4004 petallen 30.3290 7.1380 30.4588

Edgar Acuna /ESMA 6835 Clasificacin

23

petalwid

4.9094

4.7629

4.8824

7.5433

Covariance Matrix for Group virginic sepallen sepalwid petallen petalwid sepallen 26.6433 sepalwid 8.5184 9.8469 petallen 18.2898 8.2653 22.0816 petalwid 5.5780 4.1204 7.3102 3.9106 Summary of Misclassified Observations Observation 2 ** True Pred Group Group versicol virginic Group Squared Distance 133.067 7.236 5.253 130.862 6.507 8.670 149.030 4.864 8.439 Probability 0.000 0.271 0.729 0.000 0.747 0.253 0.000 0.857 0.143

3 **

116 **

setosa versicol virginic virginic versicol setosa versicol virginic virginic versicol setosa versicol virginic

Hay 3 observaciones mal clasificadas para una tasa estimada de clasificacin errada es del 2% En SAS el procedimento DISCRIM hace el anlisis discriminante. La opcin pool=yes produce el anlisis discriminante lineal y pool=no produce el anlisis discriminante cuadrtico directamente. La opcin pool=test hace primero la prueba de homogeneidad de varianza y luego dependiendo del resultado de la prueba ejecuta un anlisis discriminante lineal o cuadrtico. El siguiente es el programa en SAS correpondiente al ejemplo 1.
options nodate nonumber; data ejemplo1; input E1 E2 nota aprueba $; datalines; 96 100 100 p 96 94 99 p 100 91 97 p 93 96 97 p 90 94 95 p 75 83 94 p 75 99 94 p 64 93 94 p 89 55 93 p 57 94 92 p 70 84 90 p 44 89 87 p 62 63 85 p 76 84 84 p 73 90 82 p 76 30 80 p 69 67 79 p 78 57 77 p 85 25 77 p 67 63 74 p 64 48 73 p 66 51 72 p

Edgar Acuna /ESMA 6835 Clasificacin


79 46 68 p 69 74 68 p 51 49 59 f 37 41 56 f 67 39 53 f 75 24 60 f 62 38 58 f 57 26 46 f 77 18 44 f 50 37 42 f ; data datatest; input e1 e2; datalines; 50 75 ; proc discrim data=ejemplo1 test=datatest method=normal pool=yes listerr; class aprueba; var e1 e2; title 'Analisis discriminante Lineal para el ejemplo1'; run;

24

Notar la opcin pool=yes, esto significa que se va a usar una matriz de covarianza combinada ya que se desea un anlsis discriminante lineal. Los resultados que se obtienen son los siguientes
Discriminant Analysis 32 Observations 2 Variables 2 Classes 31 DF Total 30 DF Within Classes 1 DF Between Classes

Class Level Information Prior Probability 0.500000 0.500000

APRUEBA f p

Frequency 8 24

Weight 8.0000 24.0000

Proportion 0.250000 0.750000

Analisis discriminante Lineal para el ejemplo1 Discriminant Analysis Covariance Matrix Rank 2 Pooled Covariance Matrix Information Natural Log of the Determinant of the Covariance Matrix 11.2535757

Analisis discriminante Lineal para el ejemplo1 Discriminant Analysis Pairwise Generalized Squared Distances Between Groups 2 _ _ -1 _ _ D (i|j) = (X - X )' COV (X - X ) i j i j

Edgar Acuna /ESMA 6835 Clasificacin

25

Generalized Squared Distance to APRUEBA From APRUEBA f p f 0 5.14212 p 5.14212 0

Analisis discriminante Lineal para el ejemplo1 Discriminant Analysis _ -1 _ Constant = -.5 X' COV X j j Linear Discriminant Function -1 _ X j

Coefficient Vector = COV

APRUEBA f CONSTANT E1 E2 -10.79283 0.31736 0.07950 p -21.61484 0.40152 0.17490

Analisis discriminante Lineal para el ejemplo1 Discriminant Analysis WORK.EJEMPLO1 Classification Results for Calibration Data:

Resubstitution Results using Linear Discriminant Function Generalized Squared Distance Function: 2 _ -1 _ D (X) = (X-X )' COV (X-X ) j j j Posterior Probability of Membership in each APRUEBA: 2 2 Pr(j|X) = exp(-.5 D (X)) / SUM exp(-.5 D (X)) j k k

Posterior Probability of Membership in APRUEBA: Obs From APRUEBA p p p p Classified into APRUEBA f f f f * * * * f 0.8269 0.7831 0.7020 0.5992 p 0.1731 0.2169 0.2980 0.4008

16 19 21 22

* Misclassified observation Analisis discriminante Lineal para el ejemplo1

Edgar Acuna /ESMA 6835 Clasificacin

26

Discriminant Analysis WORK.EJEMPLO1

Classification Summary for Calibration Data:

Resubstitution Summary using Linear Discriminant Function Generalized Squared Distance Function: 2 _ -1 _ D (X) = (X-X )' COV (X-X ) j j j Posterior Probability of Membership in each APRUEBA: 2 2 Pr(j|X) = exp(-.5 D (X)) / SUM exp(-.5 D (X)) j k k Number of Observations and Percent Classified into APRUEBA: From APRUEBA f f 8 100.00 4 16.67 12 37.50 0.5000 p 0 0.00 20 83.33 20 62.50 0.5000 Total 8 100.00 24 100.00 32 100.00

Total Percent Priors

Error Count Estimates for APRUEBA: f Rate Priors 0.0000 0.5000 p 0.1667 0.5000 Total 0.0833

Analisis discriminante Lineal para el ejemplo1 Discriminant Analysis Classification Summary for Test Data: WORK.DATATEST

Classification Summary using Linear Discriminant Function Generalized Squared Distance Function: 2 _ -1 _ D (X) = (X-X )' COV (X-X ) j j j Posterior Probability of Membership in each APRUEBA:

Edgar Acuna /ESMA 6835 Clasificacin

27

2 2 Pr(j|X) = exp(-.5 D (X)) / SUM exp(-.5 D (X)) j k k Number of Observations and Percent Classified into APRUEBA: f Total Percent Priors 0 0.00 0.5000 p 1 100.00 0.5000 Total 1 100.00

El contenido de la salida es bastante similar al que da MINITAB, aunque incluye las frmulas usadas en ella. El siguiente es el programa en SAS correpondiente al ejemplo 2. Los datos estn contenidos en el archivo a:\iris.dat y solo se usarn las variables predictoras petalwid y petallen.

options nodate nonumber; data ejemplo2; infile "a:\iris.dat"; input sepallen sepalwid petallen petalwid proc discrim method=normal pool=test listerr; class especies; var petallen petalwid; run;

especies $;

Los resultados que se obtienen son los siguientes


The SAS System Discriminant Analysis 150 Observations 2 Variables 3 Classes 149 DF Total 147 DF Within Classes 2 DF Between Classes

Class Level Information Prior Probability 0.333333 0.333333 0.333333

ESPECIES setosa versicol virginic

Frequency 50 50 50

Weight 50.0000 50.0000 50.0000

Proportion 0.333333 0.333333 0.333333

The SAS System Discriminant Analysis Covariance Within Covariance Matrix Information Natural Log of the Determinant

Edgar Acuna /ESMA 6835 Clasificacin


ESPECIES setosa versicol virginic Pooled Matrix Rank 2 2 2 2 The SAS System Discriminant Analysis Notation: K P N Test of Homogeneity of Within Covariance Matrices = Number of Groups = Number of Variables = Total Number of Observations - Number of Groups of the Covariance Matrix 1.09231 3.49389 5.32749 4.08356

28

N(i) = Number of Observations in the i'th Group - 1 __ N(i)/2 || |Within SS Matrix(i)| = ----------------------------------N/2 |Pooled SS Matrix| _ | 1 = 1.0 - | SUM ----|_ N(i) _ 2 1 | 2P + 3P - 1 --- | ------------N _| 6(P+1)(K-1)

RHO

DF

= .5(K-1)P(P+1) _ _ | PN/2 | | N V | -2 RHO ln | ------------------ | | __ PN(i)/2 | |_ || N(i) _|

Under null hypothesis:

is distributed approximately as chi-square(DF)

Test Chi-Square Value =

112.262384

with

6 DF

Prob > Chi-Sq = 0.0001

Since the chi-square value is significant at the 0.1 level, the within covariance matrices will be used in the discriminant function. Reference: Morrison, D.F. (1976) Multivariate Statistical Methods p252. The SAS System Discriminant Analysis Pairwise Generalized Squared Distances Between Groups

2 _ _ -1 _ _ D (i|j) = (X - X )' COV (X - X ) + ln |COV |

Edgar Acuna /ESMA 6835 Clasificacin


i j j i j j

29

Generalized Squared Distance to ESPECIES From ESPECIES setosa versicol virginic setosa 1.09231 287.70701 648.38795 versicol 40.53296 3.49389 16.02714 virginic 78.94804 14.40145 5.32749

ESPECIES: Obs From ESPECIES virginic versicol virginic Classified into ESPECIES versicol * virginic * versicol *

Posterior Probability of Membership in

setosa 0.0000 0.0000 0.0000

versicol 0.6926 0.1602 0.8059

virginic 0.3074 0.8398 0.1941

2 3 99

* Misclassified observation The SAS System Discriminant Analysis WORK.EJEMPLO2 Classification Summary for Calibration Data:

Resubstitution Summary using Quadratic Discriminant Function Generalized Squared Distance Function: 2 _ -1 _ D (X) = (X-X )' COV (X-X ) + ln |COV | j j j j j Posterior Probability of Membership in each ESPECIES: 2 2 Pr(j|X) = exp(-.5 D (X)) / SUM exp(-.5 D (X)) j k k Number of Observations and Percent Classified into

ESPECIES: From ESPECIES setosa

setosa 50 100.00 0 0.00 0 0.00 50 33.33

versicol 0 0.00 49 98.00 2 4.00 51 34.00

virginic 0 0.00 1 2.00 48 96.00 49 32.67

Total 50 100.00 50 100.00 50 100.00 150 100.00

versicol

virginic

Total Percent

Edgar Acuna /ESMA 6835 Clasificacin


Priors 0.3333 0.3333 0.3333

30

Error Count Estimates for ESPECIES: setosa Rate Priors 0.0000 0.3333 versicol 0.0200 0.3333 virginic 0.0400 0.3333 Total 0.0200

La hiptesis de igualdad de matrices de covarianza es rechazada. Solo 3 de las 150 observaciones estn mal clasificadas para una tasa promedio de error es del 2%, an cuando solo se usaron 2 de las 4 variables predictoras
Para hacer anlisis discriminante en S-Plus se puede usar la secuencia de menus: Statistics>Multivariate> Discriminant Analysis. Una segunda alternativa es usar la funcin discrim. Una tercera alternativa es usar la funcin lda de la libreria MASS de Venables y Ripley. Para esto primero se da la instruccin library(MASS) en la ventana de comandos. La funcin discrim esta basada en las funciones lda y qda de MASS. La siguiente instruccin har el anlisis discriminante lineal para el conjunto de datos iris.

ldairis<-lda(especie~.,iris,prior=c(1,1,1)/3)

4. Estimacin de la tasa de Classificacin Errada


La tasa de clasificacion errada R(d) es la probabilidad de que la regla de clasificacin ( o simplemente el clasificador) d clasifique mal una observacion proveniente de una muestra obtenida posteriormente a la muestra usada para establecer el clasificador. Tambin es llamada error verdadero o error actual (eC) Hay varios metodos para estimar esta tasa de clasificacion: Estimacin por resubsitucin o Error Aparente (eA) (Smith, 1947). Este es simplemente la proporcin de obervaciones de la muestra que son errneamenete clasificados por el clasificador hallado en base a la muestra tomada. Por lo general es un estimador demasiado optimista y puede conducir a falsas conclusiones si el tamao de la muestra no es muy grande comparado con el nmero de variables envueltas en el clasificador. Este estimador tiene mucho sesgo. La mayoria de programas estadsticos (SAS, MINITAB, SPSS, etc ) dan el error aparente.

Estimacin por validacin cruzada. (Stone, 1974) En este caso se divide al azar la muestra en v partes ( v=10 es lo ms usado) y se halla el clasificador usando todas menos una de las partes luego se clasifica las observaciones que se dejaron de lado, el promedio de las clasificaciones erradas dar el estimador por validacin cruzada. Es poco sesgado, pero muy variable.

Estimacin "Dejar uno afuera" . (Lachenbruch, `1965) Es una situacin particular del caso anterior con v=n, algo similar tambin al "Jackknife". Aqu se omite una observacion se recalcula el clasificador usando las observaciones restantes y luego se clasifica la observacion no considerada, se repite el proceso para cada observacin de la muestra. La proporcin de

Edgar Acuna /ESMA 6835 Clasificacin

31

observaciones mal clasificadas da el estimado de la tasa de clasificacion errada. La estimacin es poco sesgada pero lamentablemente tiene una varianza muy grande. La computacin de este estimador toma mucho tiempo. La mayoria de programas estadsticos (SAS, MINITAB, SPSS, etc ) dan el error aparente. Estimacin por "Bootstrapping". (Efron, 1983). El mtodo se basa en tomar muestras con reemplazamiento de los datos en la muestra de entrenamiento y de igual tamao que ella. Es casi insesgado y tiene varianza pequea. Tiene la desventaja de que es demasiado costoso calcularlo. Hay varios esquemas de este mtodo: a) Mtodo simple: 1. Se toma una muestra con reemplazamiento y de igual tamao que la muestra de entrenamiento y se halla el clasificador. 2. Se calcula el error del clasificador obtenido en el paso 1, pero aplicado a la muestra original, que actua como una muestra de prueba. Sea ak que representa ese error. 3. Se repiten los pasos 1-2, B veces. Usualmente B es mayor de 100. 4. El estimado de la tasa de error ser el promedio de los errores ak b) Metodo refinado: Antes que nada el sesgo del estimador de la tasa de error se define como eC-eA. Notar que eC=eA+ eC-eA= eA+ Sesgo En este caso se estima dicho sesgo del error por resubstitucin de la muestra de entrenamiento siguiendo los siguientes pasos: 1) Hallar el clasificador usando la muestra original y su error por resubstitucin (eA) 2) Generar una muestra con reemplazo de la muestra de entrenamiento, que tenga su mismo tamao esta es llamada la muestra "boostrapeada". 3) Hallar el clasificador usando la muestra "bootstrapeada" y obtener el error por resubstitucion para la muestra "bootstrapeada" (eb ) 4) Considerar la muestra "bootstrapeada" como la muestra de entrenamiento y la muestra original como la muestra de prueba y hallar el error del clasificador cuando es aplicada a esta ltima (et). Este es un estimado del error verdadero o actual. 5) Calcular et-eb 6) Repetir los pasos 2-5 B times ( B entre 50 y 100) 7) El promedio de las diferencias obtenidas en el paso 5 (Wboot ) ser el estimado del sesgo del error por resubstitucin. 8) El estimado de la tasa de clasificacin errada sesgo ser eA+Wboot . Existen tambien los mtodos de doble "bootstrapping" y el estimator .632 ( Ver Efron y Tibshirani (1983), McLachlan, (1992), Webb (1999)). Notar que

4.1. La tasa de clasificacin errada y el intercambio Sesgo-Varianza.

Edgar Acuna /ESMA 6835 Clasificacin

32

Breiman (1998) obtuvo la siguiente descomposicin del error de clasificacin para el clasificador C: ME(C)=ME(C*)+Sesgo2(C) +Var(C) Aqui C* es el clasificador de Bayes dado por C*(x)=argmaxjP(Y=j/X=x), y MC(E*) es llamado el error ptimo o error de Bayes. Otras definiciones del sesgo (bias) y varianza de un clasificador y de la descomposicin sesgo mas varianza han sido dadas por Kohavi and Wolpert (1996) and Tibshirani (1996). El clasificador puede sobreajustar ("overfit") en cuyo caso el sesgo es bajo pero la variabilidad es alta o subajustar ("underfit") los datos en cuyo caso el sesgo es alto pero la varianza es alta.

5. Anlisis Discriminante Cuadrtico


La suposicin de igualdad de las matrices de covarianzas raras veces se cumple. Supongamos que hay normalidad de las dos poblaciones C1 y C2 pero que la suposicin de homogeneidad de varianza no se cumple. Entonces por la ecuacin (3.5) el objeto x es asignado a la clase C1 si
| 2 |1 / 2 exp[ 1 / 2(x u 1 )' 1 1 (x u 1 ) 2 > | 1 |1 / 2 exp[ 1 / 2(x u 2 )' 21 (x u 2 ) 1

(6.7)

tomando logaritmos en ambos lados se obtiene

1 / 2 Ln(

| 2 | ) 1 / 2[(x u 1 )' 1 1 (x u 1 ) (x u 2 )' 21 (x u 2 )] > Ln( 2 ) (6.8) | 1 | 1 | 1 | ) + 2 Ln( 2 ) | 2 | 1

haciendo simplificaciones se obtiene


' x' ( 21 1 1 )x 2x' ( 21u 2 1 1u 1 ) + (u '2 21u 2 u 11 1u 1 ) > Ln(

La versin muestral de lo anterior considerando adems que las probabilidades a priori y 1 2 son iguales es la siguiente
' ' x' ( S2 1 S1 1 )x 2x' ( S 2 1x 2 S1 1x1 ) + ( x2 S2 1 x 2 x1S1 1x1 ) > Ln(

| S1 | ) | S2 |

(6.9)

Aqui la frontera entre las dos clases son curvas cuadrticas (elipses, hiperbolas etc.). Usando simulacin se ha demostrado que cuando hay normalidad la discriminacin cuadrtica es ms eficiente que la lineal para muestras grandes, pero no para muestras pequeas. En el caso de muestras pequeas debe haber una marcada diferencia entre las matrices de covarianza para que la discriminacion cuadrtica sea eficiente ( Marks and Dunn, JASA 1974). Tambin ha quedado probado que cuando no hay normalidad la discriminacin cuadrtica tiene un pobre rendimiento.

Edgar Acuna /ESMA 6835 Clasificacin

33

5.1. Anlisis Discriminante Cuadrtico en SAS y MINITAB


Para hacer discriininacin cuadrtica en MINITAB, se elige la opcin Quadratic en la ventana de dilogo de la opcin Discriminant Analysis. Los resultados para los datos del ejemplo 1 sern
Discriminant Analysis

Quadratic Method for Response : Predictors: E1 E2 Group Count f 8 p 24

aprobaci

Summary of Classification Put into Group f p Total N N Correct Proportion N = From Group f p Variable E1 E2 Variable E1 E2 32 ....True Group.... f p 8 2 0 22 8 24 8 22 1.000 0.917 N Correct = 30 Proportion Correct = 0.937

Generalized Squared Distance to Group f p 9.213 15.530 53.201 11.450 Pooled Mean 71.531 63.813 Pooled StDev 13.66 20.34 Means for Group f p 59.500 75.542 34.000 73.750 StDev for Group f p 13.54 13.70 10.31 22.52

Pooled Covariance Matrix E1 E2 E1 186.599 E2 3.542 413.550 Covariance Matrix for Group f E1 E2 E1 183.43 E2 -97.29 106.29 Covariance Matrix for Group p E1 E2 E1 187.56 E2 34.23 507.07 Summary of Classified Observations Observation 1 2 3 4 True Group p p p p Pred Group p p p p Group f p f p f p f Squared Distance 149.71 14.69 131.64 14.23 130.78 14.97 131.68 Probability 0.000 1.000 0.000 1.000 0.000 1.000 0.000

Edgar Acuna /ESMA 6835 Clasificacin

34

5 6 7 8 9 10 11 12 13 14 15 16 ** 17 18 19 ** 20 21 22 23 24 25 26 27 28 29 30 31 32

p p p p p p p p p p p p p p p p p p p p f f f f f f f f

p p p p p p p p p p p f p p f p p p p p f f f f f f f f

p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p f p

13.80 120.39 13.18 70.39 11.63 108.56 12.73 78.23 13.07 38.51 13.31 72.20 14.40 66.28 11.87 50.54 17.64 26.06 12.56 73.81 11.66 83.15 12.04 11.11 15.29 36.16 11.74 30.77 12.07 13.13 17.01 29.41 12.01 14.23 13.28 17.09 12.82 20.41 13.12 46.80 11.68 11.62 15.48 12.42 20.69 10.99 14.04 10.58 16.37 9.766 14.639 10.84 17.21 11.71 17.73 9.781 16.985

1.000 0.000 1.000 0.000 1.000 0.000 1.000 0.000 1.000 0.000 1.000 0.000 1.000 0.000 1.000 0.000 1.000 0.001 0.999 0.000 1.000 0.000 1.000 0.890 0.110 0.000 1.000 0.000 1.000 0.874 0.126 0.000 1.000 0.383 0.617 0.106 0.894 0.025 0.975 0.000 1.000 0.873 0.127 0.984 0.016 0.821 0.179 0.948 0.052 0.920 0.080 0.960 0.040 0.953 0.047 0.973 0.027

Prediction for Test Observations Observation 1 Pred Group p From Group Sqrd Distnc Probability f p 33.353 14.998 0.000 1.000

Solo 2 de las 32 observaciones son mal clasificadas para un porcentaje de error del 6.3%, mejorando los resultados obtenidos por el anlisis discriminante lineal.

Edgar Acuna /ESMA 6835 Clasificacin

35

En el ejemplo 1, la ecuacin de la funcin discriminante cuadrtica, obtenida despues de largos clculos es la siguiente:
2 0.005197 E12 +0.02012 E1 * E 2 +0.016288 E 2 -1.15852E1-2.15804E2+58.0459>0

La grfica de la ecuacin representa una elipse con ejes rotados, slo una parte de ella interesa para determinar las regiones de clasificacin. La siguiente grfica muestra una comparacin entre las funciones discriminante lineal y cuadrtica para los datos del ejemplo 1.

Comparacion de discriminacion lineal y cuadratica


110 100 90 80 70 funcion discriminante lineal f p

E2

60 50 40 30 20 10

funcion discriminante cuadratica

10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95100

E1

En SAS el procedimento DISCRIM tiene una opcin pool=no que produce el anlisis discriminante cuadrtico directamente. La opcin pool=test hace primero la prueba de homogeneidad de varianza y luego dependiendo del resultado de la prueba ejecuta un anlisis discriminante lineal o cuadrtico. El siguiente es el programa en SAS correpondiente al ejemplo 2 usando solamente las predictoras petallen y petalwid
options nodate nonumber; data ejemplo2; input sepallen sepalwid petallen petalwid datalines; 50 33 14 2 setosa 63 28 51 15 virginica 59 32 48 18 versicolor 65 30 52 20 virginica 68 32 59 23 virginica

especies $;

Edgar Acuna /ESMA 6835 Clasificacin


77 49 64 55 49 67 77 50 61 61 51 51 46 50 57 71 49 49 66 44 47 74 56 49 56 51 54 61 68 45 55 51 63 64 46 46 56 51 63 55 61 63 54 50 63 72 48 64 67 56 60 77 72 64 56 77 52 38 25 32 24 36 33 28 23 30 26 38 35 32 36 29 30 24 31 29 29 32 28 28 31 30 25 39 29 30 23 23 37 33 28 34 36 25 33 33 35 28 25 30 35 27 32 34 28 31 30 29 30 30 31 27 26 27 67 45 45 38 14 57 67 33 49 56 19 14 14 14 42 59 33 15 46 14 13 61 49 15 41 30 13 47 55 13 40 15 60 56 14 10 39 17 47 13 40 50 45 16 49 60 19 56 44 45 45 61 58 55 42 69 39 22 17 15 11 1 21 20 10 18 14 4 2 2 2 13 21 10 2 13 2 2 19 20 1 13 11 4 14 21 3 13 4 25 22 3 2 11 5 16 2 13 19 15 6 18 18 2 21 14 15 15 23 16 18 13 23 14 virginica virginica versicolor versicolor setosa virginica virginica versicolor virginica virginica setosa setosa setosa setosa versicolor virginica versicolor setosa versicolor setosa setosa virginica virginica setosa versicolor versicolor setosa versicolor virginica setosa versicolor setosa virginica virginica setosa setosa versicolor setosa versicolor setosa versicolor virginica versicolor setosa virginica virginica setosa virginica versicolor versicolor versicolor virginica virginica virginica versicolor virginica versicolor

36

Edgar Acuna /ESMA 6835 Clasificacin


50 46 59 60 67 63 57 51 56 55 57 66 52 53 65 69 61 65 57 67 67 48 64 79 58 47 48 50 43 62 58 57 63 54 60 57 60 60 55 69 51 73 63 61 65 72 69 48 57 68 58 67 62 60 58 62 76 20 31 30 22 31 25 28 35 29 25 25 30 35 37 28 31 30 30 28 33 30 31 32 38 26 32 30 30 30 28 27 26 34 34 30 30 22 34 24 32 34 29 23 28 30 36 31 34 38 28 28 31 22 27 27 34 30 35 15 42 40 47 49 41 14 36 40 50 44 15 15 46 51 46 55 45 57 52 16 53 64 40 16 14 16 11 48 41 35 56 15 48 42 50 45 37 57 15 63 44 47 58 61 49 16 17 48 51 56 45 51 51 54 66 10 2 15 10 15 15 13 3 13 13 20 14 2 2 15 23 14 18 13 25 23 2 23 20 12 2 3 2 1 18 10 10 24 4 18 12 15 16 10 23 2 18 13 12 22 25 15 2 3 14 24 24 15 16 19 23 21 versicolor setosa versicolor versicolor versicolor versicolor versicolor setosa versicolor versicolor virginica versicolor setosa setosa versicolor virginica versicolor virginica versicolor virginica virginica setosa virginica virginica versicolor setosa setosa setosa setosa virginica versicolor versicolor virginica setosa virginica versicolor virginica versicolor versicolor virginica setosa virginica versicolor versicolor virginica virginica versicolor setosa setosa versicolor virginica virginica versicolor versicolor virginica virginica virginica

37

Edgar Acuna /ESMA 6835 Clasificacin


70 32 47 14 versicolor 59 30 51 18 virginica 52 34 14 2 setosa 44 32 13 2 setosa 44 30 13 2 setosa 55 26 44 12 versicolor 51 38 16 2 setosa 50 32 12 2 setosa 58 40 12 2 setosa 49 30 14 2 setosa 50 34 16 4 setosa 57 44 15 4 setosa 58 27 51 19 virginica 52 41 15 1 setosa 63 29 56 18 virginica 55 42 14 2 setosa 54 39 17 4 setosa 50 34 15 2 setosa 58 27 39 12 versicolor 62 29 43 13 versicolor 50 35 13 3 setosa 67 25 58 18 virginica 54 37 15 2 setosa 64 29 43 13 versicolor 69 31 54 21 virginica 65 32 51 20 virginica 64 27 53 19 virginica 48 30 14 1 setosa 51 38 15 3 setosa 54 34 17 2 setosa 67 30 50 17 versicolor ; proc discrim method=normal pool=test listerr; class especies; var petallen petalwid; run;

38

Los resultados que se obtienen son los siguientes


The SAS System Discriminant Analysis 150 Observations 2 Variables 3 Classes 149 DF Total 147 DF Within Classes 2 DF Between Classes

Class Level Information Prior Probability 0.333333 0.333333 0.333333

ESPECIES setosa versicol virginic

Frequency 50 50 50

Weight 50.0000 50.0000 50.0000

Proportion 0.333333 0.333333 0.333333

Edgar Acuna /ESMA 6835 Clasificacin


The SAS System Discriminant Analysis Covariance Matrix Rank 2 2 2 2 The SAS System Discriminant Analysis Notation: K P N Test of Homogeneity of Within Covariance Matrices = Number of Groups = Number of Variables = Total Number of Observations - Number of Groups Within Covariance Matrix Information Natural Log of the Determinant of the Covariance Matrix 1.09231 3.49389 5.32749 4.08356

39

ESPECIES setosa versicol virginic Pooled

N(i) = Number of Observations in the i'th Group - 1 __ N(i)/2 || |Within SS Matrix(i)| = ----------------------------------N/2 |Pooled SS Matrix| _ | 1 = 1.0 - | SUM ----|_ N(i) _ 2 1 | 2P + 3P - 1 --- | ------------N _| 6(P+1)(K-1)

RHO

DF

= .5(K-1)P(P+1) _ _ | PN/2 | | N V | -2 RHO ln | ------------------ | | __ PN(i)/2 | |_ || N(i) _|

Under null hypothesis:

is distributed approximately as chi-square(DF)

Test Chi-Square Value =

112.262384

with

6 DF

Prob > Chi-Sq = 0.0001

Since the chi-square value is significant at the 0.1 level, the within covariance matrices will be used in the discriminant function. Reference: Morrison, D.F. (1976) Multivariate Statistical Methods p252. The SAS System

Edgar Acuna /ESMA 6835 Clasificacin

40

Discriminant Analysis

Pairwise Generalized Squared Distances Between Groups

2 _ _ -1 _ _ D (i|j) = (X - X )' COV (X - X ) + ln |COV | i j j i j j Generalized Squared Distance to ESPECIES setosa 1.09231 287.70701 648.38795 versicol 40.53296 3.49389 16.02714 virginic 78.94804 14.40145 5.32749

From ESPECIES setosa versicol virginic

Posterior Probability of Membership in ESPECIES: Obs From ESPECIES virginic versicol virginic Classified into ESPECIES versicol * virginic * versicol * setosa 0.0000 0.0000 0.0000 versicol 0.6926 0.1602 0.8059 virginic 0.3074 0.8398 0.1941

2 3 99

* Misclassified observation The SAS System Discriminant Analysis WORK.EJEMPLO2 Classification Summary for Calibration Data:

Resubstitution Summary using Quadratic Discriminant Function Generalized Squared Distance Function: 2 _ -1 _ D (X) = (X-X )' COV (X-X ) + ln |COV | j j j j j Posterior Probability of Membership in each ESPECIES: 2 2 Pr(j|X) = exp(-.5 D (X)) / SUM exp(-.5 D (X)) j k k Number of Observations and Percent Classified into ESPECIES: From ESPECIES setosa setosa 50 100.00 0 0.00 0 versicol 0 0.00 49 98.00 2 virginic 0 0.00 1 2.00 48 Total 50 100.00 50 100.00 50

versicol

virginic

Edgar Acuna /ESMA 6835 Clasificacin


0.00 Total Percent Priors 50 33.33 0.3333 4.00 51 34.00 0.3333 96.00 49 32.67 0.3333 100.00 150 100.00

41

Error Count Estimates for ESPECIES: setosa Rate Priors 0.0000 0.3333 versicol 0.0200 0.3333 virginic 0.0400 0.3333 Total 0.0200

La hiptesis de igualdad de matrices de covarianza es rechazada. Solo 3 de las 150 observaciones estn mal clasificadas para una tasa promedio de error es del 2%.

6. Discriminacin usando Regresin Logstica (Cornfield, 1962)


Consideraremos por ahora que solo tenemos dos clases. Osea que nuestro conjunto de datos consiste de una muestra de tamao n=n1+n2 , n1 observaciones son de la clase C1 y n2 son de la clase C2 para cada observacin xj se introduce una variable binaria y que vale 1 si ella es de la clase C1 y vale 0 si la observacion pertenece a la clase C2 . La variable y tiene una probabilidad a priori de que y es 1. 1 En el modelo logstico se asume que log(

f ( x / C1 ) ) = + ' x . Aqui x es un vector pf (x / C 2 )

dimensional de variables predictoras y es un vector de p parametros. Por otro lado sea p=P(Y=1/x) la probabilidad a posteriori de que y sea igual a 1, entonces se puede notar que:

1 f (x / C1 ) p = 1 p 2 f (x / C 2 )
donde

p es llamado la razn de apuestas (odds ratio). Tomando logaritmos en ambos lados 1 p


log( f ( x / C1 ) p ) = log( 1 ) + log 1 p 2 f (x / C 2 )

se obtiene

Si las variables x en cada clase se distribuyen normalmente con igual matriz de covarianza entonces la ecuacin anterior se convierte en

log(

p ) = log( 1 ) + (u1-u2)' -1(x-1/2(u1+u2)) 1 p 2

que puede ser escrita de la forma

Edgar Acuna /ESMA 6835 Clasificacin

42

log(
o de la forma

p ) = + ' x 1 p

p=

exp( + ' x) 1 + exp( + ' x) p ) es llamado la transformacion logit. 1 p

esta ecuacin es llamada regresin logstica y log(

La ecuacin anterior se cumple tambin para otros tipos de distribuciones distintas de la normal multivariada tales como distribuciones de Bernoulli, y mezclas de stas. Un bk representa el cambio promedio de la logit funcin cuando la variable xk cambia en una unidad adicional asumiendo que las otras variables permanecen constantes. Tambin se puede considerar que exp(bk) es una razn de cambio de la razn de apuestas cuando Xk varia en una unidad adicional. Si Xk es binaria entonces exp(bk) es el cambio en la razn de apuestas cuando ella asume el valor 1. Cuando existe solo una variable predictora, que adems es binaria entonces existe una relacin entre la regresin logstica y el anlisis de una tabla de contingencia 2 X 2.

Medidas de Confiabilidad del Modelo


La Devianza: Es similar a la suma de cuadrados del error de la regresin lineal y se define por

D = 2 { yi log(
i =1

p 1 p )} ) + (1 yi ) log( 1 yi yi

Si D es mayor que una Ji-Cuadrado con n-p grados de libertad para un nivel de significacin dado entonces el modelo logstico es confiable. El Criterio AIC de Akaike: Se define por

AIC=D+2(k+s) Donde k es es el nmero de valores ordenados para la variable de respuesta y s es el nmero de variables predictoras.

La Prueba de Bondad de Ajuste de Hosmer-Lemeshov. Se define por

(Oi n'i pi )2 C = i =1 n'i pi (1 pi )


g

Edgar Acuna /ESMA 6835 Clasificacin

43

Donde g es el nmero de grupos, n' i es el numero de observaciones en el i-simo grupo Oi es la suma de las Y en el i-simo grupo y pi es el promedio de las pi en el i-simo grupo.

Estadisticas Influenciales para regresin logstica


Existen varios tipos de residuales que permiten cotejar si una observacin es influencial o no. Residuales de Pearson: definidos por

ri =

y i m i pi mi pi (1 pi )

donde, si los valores de la variable de respuesta estn agrupadas, yi representa el nmero de veces que y=1 entre las mi repreticiones de XI El residual de Pearson es similar al residual estudentizado de usado en regresin lineal. As un residual de Pearson mayor que 2 indica un dato anormal. Residuales de Devianza: definidos por

Di = 2sign ( y i mi pi )[ y i log(

m (1 pi ) 1 / 2 mi p i ) + (mi y i ) log( i )] mi y i yi

Si la devianza es mayor que 4 entonces la observacion correspondiente es anormal Uso de la regresin logstica en Clasificacin: Para efectos de clasificacin la manera ms facil de discriminar es considerar que si p>0.5 entonces la obervacin pertenece a la clase que uno est interesado. Pero algunas veces esto puede resultar injusto sobre todo si se conoce si una de las clases es menos frecuente quela otra. Metodos alternos son: a) Plotear el porcentaje de obervaciones que poseen el evento que han sido correctamente clasificadas (Sensitividad) versus distintos niveles de probabilidad y el porcentajes de observaciones de la otra clase que han sido correctamente clasificadas (especifidad) versus los mismos niveles de probabilidad anteriormente usados, en la misma grfica. La probabilidad que se usar para clasificar las observaciones se obtienen intersectando las dos curvas. b) Usar la curva ROC (receiver operating characteristic curva). En este caso se grafica la sensitividad versus (1-especifidad)100%, y se coge como el p ideal aquel que est ms cerca a la esquina superior izquierda, osea al punto (100,0). Estimacin del modelo logstico. Un mtodo para estimar y es el mtodo de mxima verosimilitud. Dado un objeto x, las probabilidades de clases condicionales para las clases C1 y C2 son :

Edgar Acuna /ESMA 6835 Clasificacin

44

P (C1 / x) =

exp( + ' x) 1 + exp( + ' x) 1 1 + exp( + ' x)

P (C 2 / x) =
respectivamente.

Con una muestra de tamao n=n1+n2 y un parmetro binomial igual a exp( + ' x) /(1 + exp( + ' x) la funcin de verosimilitud es de la forma

L ( , ) =
i =1

n1

n exp( a + x i ' ) 1 1 + exp( + xi ' ) j =n1 + 1 1 + exp( + x j ' )

asumiendo que las primeras n1 observaciones son de la clase C1 y las restantes son de la clase C2.

~ Los estimados y son aquellos que maximizan la funcin anterior y son encontrados aplicando mtodos iterativos tales como Newton-Raphson (SAS) o minimos cuadrados reponderados iteraativos (MINITAB, S-Plus).
Si hay separabilidad entre los grupos no hay solucin unica de la funcin de verosimilitud Desventajas de la regresin Logstica Envuelve una gran cantidad de computacin Cuando hay normalidad no clasifica tan eficientemente como la funcion discrimiante lineal

En MINITAB el men de Regresin contiene tres tipos de regresin logistica: regresin logstica binaria (aplicada a dos clases), regresin logstica ordinal ( si hay mas de dos clases) y regresin logstic nominal (si hay mas de dos clases no ordenadas).

En SAS se usa el procedimiento LOGISTIC Ejemplo : Se han registrado los pesos de 189 bebes recien nacidos y se han medido las siguientes variables para determinar si el nio es de bajo peso (menos de 2500 gramos) o no lo es. Edad: edad de la madre Pesomama: peso de la madre en su ltimo perodo muestral Raza: raza de la madre:1=blanca, 2=negra, 3=otro Fuma: 0 ssi la madre no fuma, 1 si lo hace. Prematur: nmero de partos prematuros de la madre Hiperten: 0 si la madre no sufre de hipertensin, 1 si sufre Uterirrit: 0 si no tiene utero irritado, 1 si lo tiene. Chequeos: nmero de visitas al mdico en los tres primeros meses del embarazo.

Edgar Acuna /ESMA 6835 Clasificacin


options nodate nonumber; libname datos "c:\sas\datos"; data datos.ejemplo5; infile "c:\sas\datos\bajopeso.dat"; input id bajopeso edad pesomama raza fuma prematur hiperten uteirrit chequeos pesobebe; proc logistic; model bajopeso= edad pesomama raza fuma prematur hiperten uteirrit chequeos; output out=errores predicted=phat; data malaclas; set errores; if (bajopeso=0 and phat<0.5) or (bajopeso=1 and phat>0.5) then clasif='i' ; else clasif='c'; data listaerr; set malaclas; if clasif='i'; if phat<0.5 then clase=1; else clase=0; proc print; var id bajopeso phat clase; title 'observaciones mal clasificadas'; run;

45

Los resultados son los siguientes


The SAS System The LOGISTIC Procedure Data Set: DATOS.EJEMPLO5 Response Variable: BAJOPESO Response Levels: 2 Number of Observations: 189 Link Function: Logit

Response Profile Ordered Value 1 2

BAJOPESO 0 1

Count 130 59

Model Fitting Information and Testing Global Null Hypothesis BETA=0 Intercept and Covariates 222.193 251.369 204.193 .

Criterion AIC SC -2 LOG L Score

Intercept Only 236.672 239.914 234.672 .

Chi-Square for Covariates . . 30.479 with 8 DF (p=0.0002) 28.830 with 8 DF (p=0.0003)

Edgar Acuna /ESMA 6835 Clasificacin

46

Analysis of Maximum Likelihood Estimates Parameter DF Estimate Standard Error Wald Chi-Square Pr > Chi-Square Standardized Estimate

Odds Variable Ratio INTERCPT . EDAD 1.036 PESOMAMA 1.012 RAZA 0.635 FUMA 0.392 PREMATUR 0.582 HIPERTEN 0.160 UTEIRRIT 0.486 CHEQUEOS 0.939

1 1 1 1 1 1 1 1 1

0.0790 0.0358 0.0124 -0.4534 -0.9373 -0.5421 -1.8307 -0.7220 -0.0635

1.2763 0.0365 0.00661 0.2153 0.3985 0.3462 0.6941 0.4632 0.1698

0.0038 0.9659 3.5068 4.4355 5.5330 2.4522 6.9559 2.4296 0.1397

0.9507 0.3257 0.0611 0.0352 0.0187 0.1174 0.0084 0.1191 0.7085

. 0.104716 0.208830 -0.229572 -0.252891 -0.147444 -0.246774 -0.141778 -0.037062

The SAS System The LOGISTIC Procedure Association of Predicted Probabilities and Observed Responses Concordant = 73.8% Discordant = 26.1% Tied = 0.2% (7670 pairs) Somers' D = 0.477 Gamma = 0.478 Tau-a = 0.206 c = 0.738

observaciones mal clasificadas OBS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ID 4 5 13 14 45 46 50 57 65 71 73 86 94 102 132 BAJOPESO 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 PHAT 0.48248 0.48423 0.24109 0.43253 0.43200 0.43200 0.40682 0.30465 0.32666 0.44522 0.49172 0.46934 0.16979 0.45456 0.80635 CLASE 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0

Edgar Acuna /ESMA 6835 Clasificacin


16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 136 138 141 143 144 145 146 147 148 149 150 152 153 154 155 157 159 161 162 163 164 168 169 170 171 172 173 175 176 177 178 179 180 182 183 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0.82412 0.73348 0.75693 0.73871 0.69826 0.67348 0.75699 0.82539 0.71635 0.67859 0.56512 0.80894 0.50867 0.62888 0.89982 0.56163 0.73658 0.65930 0.57686 0.68692 0.76802 0.69842 0.61239 0.82139 0.78787 0.61371 0.59766 0.73683 0.72720 0.73569 0.64420 0.58253 0.75786 0.63317 0.87801 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

47

observaciones mal clasificadas OBS 51 52 ID 185 186 BAJOPESO 1 1 PHAT 0.67738 0.58231 CLASE 0 0

52 de las 189 observaciones quedan mal clasificadas para una tasa de error del 27.5%.

Edgar Acuna /ESMA 6835 Clasificacin

48

sensitividad 100.00 15.38 88.14 36.15 79.66 53.85 67.80 67.69 55.93 77.69 47.46 83.08 35.59 89.23 18.64 96.92 13.56 98.46 1.69 99.23 0.00 100.00

especificidad 0.10 84.62 0.20 63.85 0.25 46.15 0.30 32.31 0.35 22.31 0.40 16.92 0.50 10.77 0.60 3.08 0.70 1.54 0.80 0.77 0.90 0.00

(1-especificidad)%

Las grficas de los dos mtodos aparecen en la siguiente figuras y embos caso el p-timo a usarse es p=0.3

Interseccion de las curvas de sensitividad y de especificidad para hallar el p-optimo 100

Sensitividad

Este es el p-optimo 50

0 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

Especificidad

Edgar Acuna /ESMA 6835 Clasificacin

49

En S-Plus para hacer discriminacin logstica con dos clases se usa la funcin glm (modelo lineal general) con la opcin family=binary, y para hacer discriminacin logstica con varias clases se usa la funcin Multinom

Generalizaciones de la logistica
El modelo logistico puede ser escrito como

log(

P (C = 1 / x) ) = log it ( P (x)) = (x) P (C = 2 / x)

En el modelo bsico (x)=0+ . Pero existen otras posibilidades para (x). Tales como las x siguientes a) (x)=Polinomio(x) b) (x)=0+f1(x1) +f2(x2) +f3(x3)+ .fp(xp), donde f1, fp son funciones reales de laas variables predictoras, en particular polinomios. c) (x)=0+s1(x1) +s2(x2) +s3(x3)+ +.sp(xp), donde s1, sp son suavizadores por splines, por kernels o por regresin local. d) (x)=0+ ( x) + ( x) + ( x)+ + ( x), esto es 1 1 2 2 3 3 m m llamado Projection Pursuit (Friedman and Stuetzle, 1991). Las funciones i son llamadas funciones Ridge, y si ellas son funciones logisticas se obtiene la red neural MLP (multilayer preceptron). e) (x)=0+w1

k1

(xv(1,k)) +w2 1k

donde las funciones son funciones splines. Este es llamada el modelo jk MARS (Mulivariate aadditive regression splines, Friedman (1991)).

k =1

k2

(xv(2,k))+ +wm 2k

k =1

km

(xv(m,k)), mk

k =1

Edgar Acuna /ESMA 6835 Clasificacin

50

La curva ROC
100 0.20 0.25 0.30 0.35 0.10

C13

50

0.40 0.50 0.60 0.70

0 0 10 20 30 40 50 60 70 80 90

0.80 0.90

C16

Edgar Acuna /ESMA 6835 Clasificacin

51

7. Mtodo de los K Vecinos ms cercanos (Fix y Hodges, 1951)


En el mtodo k-nn ("k nearest neighbor") se estima la funcin de densidad de donde provienen un conjunto de datos, aplicado a discriminacin sera para estimar la funcin de densidad f(x/Cj), de las predictoras x por cada clase. Es el mtodo ms bsico de discriminacin noparamtrico, ya que no se hace ninguna suposicin distribucional. Veamos primero el caso univariado. Sea x1, x2, ..xn una muestra con una funcin densidad desconocida f(x) que se desea estimar y sea t un nmero real. Recordar que la probabilidad de caer en el intervalo (t-h,t+h), puede ser aproximada por 2hf(t), donde f es la funcin de densidad y h es una constante cercana a cero. Por otro lado la probabilidad tambien puede ser estimada por k/n, donde k es tal que nmero de observaciones en el intervalo (t-h,t+h). Osea que k es prefijado y h se halla de acuerdo a el Ms formalmente Sea d(x,y)=|x-y| la distancia usual entre los puntos x e y de la linea recta. Supongamos que hemos calculados todas las distancias d(xi,t)=|xi-t| y que todas ellas son ordenadas de menor a mayor, tal como d1(t) d2(t) . n(t) d Entonces el estimador de densidad de los k vecinos mas cercanos en el punto t es definido por

f(t ) =

k 2nd k (t )

Ejemplo: Estimar usando 1-nn la funcin de densidad correspondiente al siguiente conjunto de datos.
7.03860 0.40701 6.38018 5.59448 6.95461 5.05751 2.25521 7.24608 6.62930 3.92734

El histograma (normalizado para que el area sea 1) de los datos aparece en la siguiente figura

Edgar Acuna /ESMA 6835 Clasificacin

52

0.25

0.20

Density

0.15

0.10

0.05

0.00 0 1 2 3 4 5 6 7 8

C1

La estimacin de la densidad por 1-nn ser.

Estimacion de la funcion de densidad usando 1-nn

10

fhat(x)

0 0 1 2 3 4 5 6 7 8

Notar que el area debajo de la curva no da 1, habria que normalizar. Cuando se usar k pequeo El estimado tiene muchos picos y cuando k es grande es muy suave. En el caso multivariado, el estimado tiene la forma

Edgar Acuna /ESMA 6835 Clasificacin

53

f(x) =

k (8.1) nv k (x)

donde vk(x) es el volumen de un elipsoide centrado en x de radio rk(x), que a su vez es la distancia de x al k-simo punto ms cercano. Desde el punto de vista de anlisis discriminante el mtodo k-nn es bien simple de aplicar. En efecto, si las funciones de densidades condicionales f(x/Ci) de la clase Ci que aparecen en la ecuacin P (Ci / x) =

f (x / C i )i son estimadas por una expresin de la forma (8.1). f (x)

Entonces, para clasificar un objeto con mediciones dadas por el vector x en la clase Ci se Debe cumplir que

k j j k ii > para ji ni v k ( x ) n j v k ( x )
Asumiendo priors proporcionales a los tamaos de las clases (ni/n y nj/n respectivamente) lo anterior es equivalente a: 1) Hallar los k objetos que estn a ms corta distancia de x, k usualmente es un nmero impar 1 o 3. 2) Si la mayoria de esos k objetos pertenecen a la clase Ci entonces el objeto considerado tambin pertenece a ella. En caso de empate se clasifica al azar. Hay dos problemas en el mtodo k-nn, la eleccin de la distancia o mtrica y la de k. La mtrica ms elemental que se puede elegir es la euclideana d(x,y)=(x-y)'(x-y). Esta mtrica sin embargo, puede causar problemas si las variables predictoras han sido medidas en unidades muy distintas entre s. Algunos prefieren rescalar los datos antes de aplicar el mtodo. Enas y Choi (1996) usando simulacin hicieron un estudio para determinar el k ptimo cuando solo hay dos clases presentes y detreminaron que si los tamaos muestrales de las dos clases son comparables entonces k=n3/8 si habia poca diferencia entre las matrices de covarianzas de los grupos y n=2/8 si habia bastante diferencia entre las matrices de covarianzas. El sesgo del error de classificacin aumenta a medida que k aumenta. La varianza del error de clasificaci"on disminuye a medida que k aumenta. Se ha demostrado (Cover y Hart, 1967) que la tasa de error del k-nn es a lo mas dos veces la tasa de error ptimo.

7.1 Anlisis discriminante usando los k vecinos mas cercanos en SAS y S-Plus
El procedimento DISCRIM de SAS incluye el mtodo de los vecinos ms cercanos basta incluir method=npar por noparamtrico y un valor de k, 1 y 3 son los valores ms usados. Tambin se pueden elegir 3 tipos de distancia: La distancia Euclideana (METRIC=IDENTITY), La distancia Mahalanobis (METRIC= FULL) o una distancia ponderada por una matriz diagonal que contiene las varianzas combinadas de los grupos (METRIC=DIAGONAL). Por default, SAS usa METRIC=FULL.

Edgar Acuna /ESMA 6835 Clasificacin

54

Ejemplo 9. El siguiente es un programa de SAS aplicado a los datos del ejemplo 5.


options nodate nonumber; libname datos "c:\sas\datos"; data datos.ejemplo7; infile "c:\sas\datos\bajopeso.dat"; input id bajopeso edad pesomama raza fuma prematur hiperten uteirrit chequeos pesobebe; proc discrim method=npar k=3 listerr; class bajopeso; var edad pesomama raza fuma prematur hiperten uteirrit chequeos; title 'Analisis discriminante usando los k vecinos mas cercanos con k=3'; run;

Los resultados sern como siguen:


Analisis discriminante usando los k vecinos mas cercanos con k=3 Discriminant Analysis 189 Observations 8 Variables 2 Classes 188 DF Total 187 DF Within Classes 1 DF Between Classes

Class Level Information Prior Probability 0.500000 0.500000

BAJOPESO 0 1

Frequency 130 59

Weight 130.0000 59.0000

Proportion 0.687831 0.312169

BAJOPESO: Obs From BAJOPESO 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Posterior Probability of Membership in Classified into BAJOPESO 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 * * * * * * * * * * * * * * * * * * *

0 0.1850 0.4758 0.4758 0.1850 0.1850 0.4758 0.4758 0.4758 0.4758 0.1850 0.4758 0.4758 0.4758 0.1850 0.1850 0.1850 0.4758 0.4758 0.1850

1 0.8150 0.5242 0.5242 0.8150 0.8150 0.5242 0.5242 0.5242 0.5242 0.8150 0.5242 0.5242 0.5242 0.8150 0.8150 0.8150 0.5242 0.5242 0.8150

1 4 10 12 13 14 15 16 18 19 22 25 27 29 32 33 35 37 39

Edgar Acuna /ESMA 6835 Clasificacin


40 41 50 51 52 54 55 57 58 59 63 64 65 66 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 * * * * * * * * * * * * * * 0.4758 0.1850 0.1850 0.4758 0.4758 0.4758 0.4758 0.4758 0.4758 0.1850 0.1850 0.4758 0.4758 0.1850 0.5242 0.8150 0.8150 0.5242 0.5242 0.5242 0.5242 0.5242 0.5242 0.8150 0.8150 0.5242 0.5242 0.8150

55

Analisis discriminante usando los k vecinos mas cercanos con k=3 Discriminant Analysis DATOS.EJEMPLO7 Classification Results for Calibration Data:

Resubstitution Results using 3 Nearest Neighbors Posterior Probability of Membership in BAJOPESO: Obs From BAJOPESO 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 Classified into BAJOPESO 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 * * * * * * * * * * * * * * * * * * * * * *

0 0.4758 0.1850 0.1850 0.4758 0.1850 0.4758 0.4758 0.4758 0.4758 0.4758 0.4758 0.1850 0.4758 0.4758 0.4758 0.1850 0.4758 0.4758 0.4758 0.4758 0.5765 0.5765

1 0.5242 0.8150 0.8150 0.5242 0.8150 0.5242 0.5242 0.5242 0.5242 0.5242 0.5242 0.8150 0.5242 0.5242 0.5242 0.8150 0.5242 0.5242 0.5242 0.5242 0.4235 0.4235

69 70 71 73 79 85 86 87 91 94 102 103 109 110 112 114 117 118 122 128 153 161

* Misclassified observation Analisis discriminante usando los k vecinos mas cercanos con k=3 Discriminant Analysis DATOS.EJEMPLO7 Classification Summary for Calibration Data:

Edgar Acuna /ESMA 6835 Clasificacin


Resubstitution Summary using 3 Nearest Neighbors Squared Distance Function: 2 -1 D (X,Y) = (X-Y)' COV (X-Y)

56

Posterior Probability of Membership in each BAJOPESO: m (X) = Proportion of obs in group k in 3 nearest neighbors of X k Pr(j|X) = m (X) PRIOR / SUM ( m (X) PRIOR ) j j k k k Number of Observations and Percent Classified into BAJOPESO: From BAJOPESO 0 0 77 59.23 2 3.39 79 41.80 0.5000 1 53 40.77 57 96.61 110 58.20 0.5000 Total 130 100.00 59 100.00 189 100.00

Total Percent Priors

Error Count Estimates for BAJOPESO: 0 Rate Priors 0.4077 0.5000 1 0.0339 0.5000 Total 0.2208

Hay 55 sujetos de los 189 mal clasificados lo cual da una tasa de error del 29%, mucho mayor que el mtodo de kernels S-Plus tampoco tiene una funcin que haga discriminacin por el mtodo de k vecinos ms cercanos. Nuevamente, hemos usado la librera de programas en S-Plus que viene con el libro de Venables y Ripley (1997). La funcin k-nn hace clasificacin pro k-nn pero solamente usando la distancia euclideana. Ejemplo 10. Usando S-Plus y aplicando los datos del ejemplo 1. >library(class) >examenes<-cbind(E1,E2) > examenes

Edgar Acuna /ESMA 6835 Clasificacin

57

E1 E2 [1,] 96 100 [2,] 96 94 [3,] 100 91 [4,] 93 96 [5,] 90 94 [6,] 75 83 [7,] 75 99 [8,] 64 93 [9,] 89 55 [10,] 57 94 [11,] 70 84 [12,] 44 89 [13,] 62 63 [14,] 76 84 [15,] 73 90 [16,] 76 30 [17,] 69 67 [18,] 78 57 [19,] 85 25 [20,] 67 63 [21,] 64 48 [22,] 66 51 [23,] 79 46 [24,] 69 74 [25,] 51 49 [26,] 37 41 [27,] 67 39 [28,] 75 24 [29,] 62 38 [30,] 57 26 [31,] 77 18 [32,] 50 37 > > prueba<-cbind(70,75) > prueba [1] 50 75 > clases<-factor(c(rep("p",24),rep("f",8))) > clases [1] p p p p p p p p p p p p p p p p p p p p p p p p f f f f f f f f > knn(examenes,prueba,clases,k=3) [1] p Levels: [1] "f" "p" > vecinos<-knn(examenes,examenes,clases,k=3,prob=T) > vecinos [1] p p p p p p p p p p p p p p p p p p p p p p p p f f f f f f f f > attributes(vecinos) $levels: [1] "f" "p"

Edgar Acuna /ESMA 6835 Clasificacin

58

$class: [1] "factor" $prob: [1] 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 [9] 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 0.6666667 [17] 1.0000000 1.0000000 0.6666667 1.0000000 0.6666667 0.7500000 1.0000000 1.0000000 [25] 0.6666667 1.0000000 0.6666667 0.6666667 0.6666667 1.0000000 0.6666667 1.0000000 > No hay ninguna observacin mal clasificada, el porcentaje de error es 0%. Ejemplo 11. El siguiente es otro ejemplo aplicado a los datos del ejemplo 3, que estn guardados en un diskette en el archivo discdat.dat.

> library(class) > sico<-read.table("a:discdat.dat",header=T) > prueba<-c(1,2,1,1,1) > prueba [1] 1 2 1 1 1 > sico1<-data.frame(sico[,-1]) > sico1 x1 x2 x3 x4 x5 1 2 2 2 2 2 2 2 2 2 1 2 3 1 1 2 1 1 4 2 2 2 1 2 5 1 1 2 1 2 6 1 1 2 1 1 7 2 2 2 2 2 8 1 1 2 1 2 9 1 1 2 1 2 10 2 1 2 1 2 11 2 2 2 1 2 12 2 1 2 1 2 13 1 1 2 2 2 14 1 1 2 1 2 15 3 3 2 3 2 16 4 3 3 3 2 17 3 3 2 3 3 18 3 2 2 3 2 19 4 2 2 2 2 20 2 3 2 3 3 21 2 2 2 2 3 22 3 2 2 1 3 23 3 3 2 1 3 24 2 2 2 2 2 25 3 1 3 4 4

Edgar Acuna /ESMA 6835 Clasificacin

59

26 2 2 3 1 2 27 3 2 2 4 2 28 3 2 2 3 3 29 2 2 2 3 1 30 3 2 4 3 3 31 3 1 3 1 3 32 1 2 2 1 2 33 3 3 2 4 3 34 2 3 2 4 3 35 3 3 3 4 3 36 2 1 2 3 3 37 4 4 4 4 4 38 2 1 2 3 3 39 4 1 4 4 4 40 3 3 2 2 3 41 2 2 2 1 2 42 4 2 2 2 2 43 3 3 2 3 3 44 2 3 2 2 2 45 4 3 1 2 3 > marca<-factor(sico[,1]) > marca [1] I I I I I I I I I I I I I I I W W W W W W W W W W W W W W W W W W W W W W W W WW [42] W W W W > vecino<-knn(sico1,sico1,marca,3,prob=T) > vecino [1] I I I I I I I I I I I I I I W W W W W W W W W I W I W W W W W I W W W W W W W W I [42] W W I W > attributes(vecino) $levels: [1] "I" "W" $class: [1] "factor" $prob: [1] 0.6666667 0.7500000 1.0000000 0.7500000 1.0000000 1.0000000 0.6666667 1.0000000 [9] 1.0000000 0.9000000 0.7500000 0.9000000 1.0000000 1.0000000 0.7500000 0.8750000 [17] 0.8571429 0.7500000 1.0000000 1.0000000 0.5000000 0.6666667 1.0000000 0.6666667 [25] 1.0000000 0.6000000 0.8000000 1.0000000 0.6000000 1.0000000 0.6000000 0.7777778 [33] 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 1.0000000 [41] 0.7500000 1.0000000 0.8571429 0.5000000 1.0000000 > vecino1<-knn(sico1,prueba,marca,3,prob=T) > vecino1 [1] I Levels: [1] "I" "W" > attributes(vecino1)

Edgar Acuna /ESMA 6835 Clasificacin

60

$levels: [1] "I" "W" $class: [1] "factor" $prob: [1] 0.6666667 Hay 6 sujetos mal clasificados de un total de 45, para un porcentaje de error del 13.33%, casi similar a los resultados del anlisis discriminante lineal. El sujeto con las caracteristicas que se dan es clasificado como enfermo (I).

Edgar Acuna /ESMA 6835 Clasificacin

61

8. Mtodos usando estimacin de densidades por kernels


Si las funciones de densidades condicionales fi(x) de la clase Ci que aparecen en la ecuacin (4.4) son desconocidas pueden ser estimadas usando la muestra tomada y aplicando mtodos noparamtricos de estimacin, uno de ellos es el mtodo de kernels.

8.1 Estimacin por kernels de una funcin de densidad univariada.


En el caso univariado, el estimador por kernels de la funcin de densidad f(x) se obtiene de la siguiente manera. Consideremos que x1, xn es una variable aleatoria X con funcin de densidad f(x), definamos la funcin de distribucin empirica por

Fn ( x ) =

# obs x n

el cual es un estimador de la funcin de distribucin acumulada F(x) de X. Considerando que la funcin de densidad f(x) es la derivada de la funcin de distribucin F y usando aproximacin para derivada se tiene que

F ( x + h) Fn ( x h) (8.1) f( x ) = n n
donde hes un valor positivo cercano a cero. Lo anterior es equivalente a la proporcin de puntos en el intervalo (x-h, x+h) dividido por h. La ecuacin (8.1) puede ser escrita como:

1 n x x f( x ) = 1 K ( h i ) nh i =
donde la funcin peso K est definida por 0 si |z|>1 K(z)= 1/2 si |z|1

este es llamado el kernel uniforme y h llamado el ancho de banda es un parmetro de suavizacin que indica cuanto contribuye cada punto muestral al estimado en el punto x. En general, K y h deben satisfacer ciertas condiciones de regularidad, tales como: a)

K ( z )dz = 1

b) K(z) debe ser acotado y absolutamente integrable en (-,) c)

lim h(n) = 0
n

Usualmente, pero no siempre, K(z)0 y simtrico, luego cualquier funcin de densidad simtrica puede usarse como kernel.

Edgar Acuna /ESMA 6835 Clasificacin

62

Entre los kernels ms usados estn: a) El kernel Rectangular o Uniforme es definido por 0 si |z|>1 K(z)= 1/2 si |z|1 En este caso cualquier punto en el intervalo (x-h, x+h) contribuye 1/2nh al estimado de f(x) en el punto x, y cualquier punto fuera de ese intervalo no contribuye en nada.

b) El kernel Gaussiano definido por

K ( z) =

1 1 exp( z 2 ) 2 2

En este caso el kernel representa una funcin peso ms suave donde todos los puntos contribuyen al estimado de f(x) en x. c)El kernel Triangular definido por K(z)=1- |z| para |z|<1, 0 en otro caso. f) El kernel "Biweight" definido por 15/16(1-z2)2 K(z)= 0 en otro caso para |z|<1

g) El kernel Epanechnikov definido por

3 4 5
K(z)= 0

(1

z2 ) 5

para |z|< 5 en otro caso

Si el parmetro h es muy pequeo entonces el estimador kernel degenera en una coleccin de n picos cada uno de ellos localizado en cada punto muestral. Si h es demasiado grande entonces el estimado se sobresuaviza y se obtiene casi una distribucion uniforme. El valor de h tambin depende del tamao de la muestra, con muestras pequeas se debe escoger un h grande y con muestras grandes se puede escoger un h pequeo. Rosemblatt (1956) demostr que el estimador por kernels es consistente y asntticamente Normal. La medida mas usada del error de estimacin de la funcin de densidad es el MISE( Error cuadrtico integrado medio) definido por,

Edgar Acuna /ESMA 6835 Clasificacin

63

MISE(h)= E ( f h ( x ) f ( x )) 2 dx = E ( f h ( x ) f ( x )) 2 dx + E ( f h ( x ) Ef ( x )) 2 dx
La primera parte es el sesgo al cuadrado integrado y lo segundo es la varianza integrada. La expresin anterior puede ser escrita como, MISE(h)=

1 1 4 2 2 2 2 4 K ( z )dz + 4 h ( f " ( x )) dx{z K ( z )dz} + O(1 / nh + h ) nh

Los dos primeros terminos del lado derecho forman el AMISE, la expansin asimpttica del MISE. Minimizando el AMISE en funcin de h (Parzen, 1962) se obtiene

h= [

n f " ( x )) dx{ 2 K ( z )dz} ( z


2
2

( z )dz
2

]1 / 5

Aqui, la curvatura ( f " ( x )) dx tambin deber estimada. Notar que cuando la muestra es grande es mas conveniente elegir h pequeo. La mayora de las posibles elecciones para el parmetro ancho de banda h basados en un conjunto de datos X de tamao n dependen de esta estimacin. A continuacin se listan algunas elecciones de h: a)

h=

rango( X ) 2(1 + log 2 n)

b)

h = 1.06 min(, R / 1.34)n 1 / 5

donde es la desviacin estndar estimada del conjunto de datos y R representa el rango intercuartlico, las constantes provienen de asumir que la densidad desconocida es Normal y un kernel gausiano. Este es bsicamente el mtodo usado por SAS/INSIGHT para estimar la curvatura.

c) h = 1.144n 1 / 5
Otros mtodos mas sofisticados son: d) El mtodo de Sheather y Jones (1991) que propone estimar la curvatura usando tambin el mtodo del kernel, pero con un ancho de banda g distinto al que se usa para estimar la densidad. Los estimadores de densidad de la libreria de Ripley usan este mtodo. e) Usando validacin cruzada, propiamente dejando uno afuera. Aqui el h es cn considerado como un parmetro que debe ser estimado. Hay dos alternativas, usando minimos cuadrados

Edgar Acuna /ESMA 6835 Clasificacin

64

(aqui se obtiene un estimado insesgado, o maxima verosimilitud (aqui se obtiene un estimador sesgado). Ver Bowman and Azzalini (1997), para una implementacin en S-plus. h) Usando "Bootstrapping", en este caso se encuentra un estimado usando muestras con reemplazamiento del MISE y se minimiza con respecto a h.

Cao, Cuevas y Gonzalez (1994) hacen una comparacin de varios metodos de elegir el ancho de banda h y llegan a la conclusin de que sin considerar el "boostrapping", el mtodo d es el de mejor rendimiento. Ejemplo 6. Estimacin de la funcin de densidad de la variable E1 del ejemplo1 con varias selecciones del ancho de banda usando S-Plus En S-Plus, la funcin density es la que produce las estimaciones de la densidad por kernel, aplicando luego la funcin plot se puede graficar la fucnin de densidad estimada. El men Graph de S-Plus contiene una grfica que traza el histograma y la grafica de la funcin de densidad estimada uno de los siguientes kernels: Gaussiano, rectangular, triangular y coseno. La ventana de dilogo que aparece es la siguiente:

Edgar Acuna /ESMA 6835 Clasificacin

65

0.05

density(exa1$V1, width = ha)$y

density(exa1$V1, width = hb)$y

density(exa1$V1, width = hc)$y 40 60 80 100

0.04

0.04

0.03

0.03

0.02

0.02

0.01

0.01

0.0

40

60

80

100

0.0

0.0

0.01

0.02

0.03

0.04

40

60

80

100

density(exa1$V1, width = ha)$x

density(exa1$V1, width = hb)$x

density(exa1$V1, width = hc)$x

0.025

density(exa1$V1, width = hd)$y

0.025

density(exa1$V1, width = he)$y

density(exa1$V1, width = hf)$y 20 40 60 80 100 120

0.015

0.015

0.0

0.005

0.0

0.005

20

40

60

80

100

120

0.0

0.01

0.02

0.03

0.04

40

60

80

100

density(exa1$V1, width = hd)$x

density(exa1$V1, width = he)$x

density(exa1$V1, width = hf)$x

Se han usado los metodos a, b, c, d (width.SJ en la libreria MASS o hsj en la libreria sm) , e (hcv en la libreria sm y bcv en la libreria MASS) Se cuando h es pequeo hay muchos picos y que la grafica se suaviza a medida que aumenta el valor de x. El valor h obtenido por el mtodo de Seather-Jones parece ser el que produce el mejor ajuste.

8.2 Estimacin por kernels de una funcin de densidad multivariada.


El mtodo de kernels fue extendido a distribuciones multivariadas por Cacoullos (1966). En este caso X 1, X2, . Xn es una muestra de vectores aleatorios distribuidos con una densidad f(x) en un espacio de dimensin d. El estimador de la funcin de densidad usando un kernel multivariado k y con ancho de banda h ser

1 f(x) = d nh

K(
i =1

x Xi ) h

la funcin kernel K, definida para un vector x de dimensin d, debe satisfacer que

Rd

K (x)dx = 1

usualmente, pero no siempre, K ser una funcin de densidad multivariada radialmente simtrica y unimodal. Los kernels ms usados son las versiones multivariadas de los definidos anteriormente. As a) El kernel Gaussiano ser

K (x) = (2) d / 2 exp(


b) El kernel "Biweight" ser

1 x' x) 2

Edgar Acuna /ESMA 6835 Clasificacin

66

3 1 (1 x' x) 2 si x'x<1
K(x)= 0 en otro caso

c) El kernel Epanechnikov ser

1 1 c d (d + 2)(1 x' x) si 2
K(x)= 0 en otro caso

donde cd es el volumen de una esfera unitaria de dimensin d: c1=2, c2= c3=4 , /3. d) El kernel "Triweight" se define en forma similar al "Biweight" como:

4 1 (1 x' x) 3 si x'x<1
K(x)= 0 en otro caso

Ejemplo 7. Estimacin de la funcin de densidad bivariada de las variables E1 y E2 del

densidad estimada

E2 E1

ejemplo 1 en S-Plus. S-Plus de por s no tiene una funcin que haga estimacin de una funcin de densidad en dos variables. Hemos usado la librera de programas en S-Plus que viene con el libro de Venables y Ripley (1997). El siguiente programa hace la estimacin bivariada por kernels guassianos usando el metod de Sheather y Jones para estimar h y luego una grfica de la funcin de densidad estimada.

Edgar Acuna /ESMA 6835 Clasificacin

67

library("MASSdia") Libraries MASS and nnet attached Use addMASSmenus() to create menus and dialogs removeMASSmenus() to remove them > addMASSmenus() MASS menus and dialogs added > kerexam<-kde2d(E1,E2,n=50,lims=c(10,100,10,100),h=c(width.SJ(E1),width.SJ(E2))) > wireframe(z~x*y, con2tr(kerexam),aspect=c(1,0.5), zoom=1.2, xlab="E1", ylab="E2", zlab="densidad estimada")

Fukunaga (1972) sugiri incluir el efecto de la matriz de covarianza en la estimacin de densidad y propuso la siguiente modificacin

f(x) =

1 d nh | S |1/ 2

K(

i =1

(x X i )' S 1 ( x X i ) ) h2

donde S es una estimacin de la matriz de covarianza. Esta forma es la que SAS usa para hacer discriminante usando estimacin por kernels. Posible elecciones para h son h=[4/n(d+2)]1/(d+4) si se usa un kernel gaussiano y h=[8(d+4)(2 )d /ncd]1/(d+4) si se usa un kernel Epanechnikov.

Kernels Productos.
En el caso multivariado, una alternativa a usar un kernel multivariado es usar productos de kernels univariados. Considerando que x=(x1, .xp) es un vector p-dimensional, este se define por

1 f( x ) = p nh

j =1 i =1

K(

xi xij h

donde K es un kernel univariado. Un caso ms general es considerar un h distinto para cada variable.

Kernels para variables discretas


Si las las variables predictoras son binarias 0-1, entonces Aitchison and Aitken (Biometrika, 1976) propusieron el siguiente kernel p-dimensional

1 f(x) = p nh
donde

K (x, x
j =1

, h)

Edgar Acuna /ESMA 6835 Clasificacin

68

K ( x, x j , h) = h

p d 2 j

(1 h) j (8.2)

d2

donde d 2 es la distancia euclideana al cuadrado entre x y xj , es decir el nmero de elementos j diferentes que tienen entre si, y 1/2 1. Titterington (Technometrics, 1980) estudi varias h maneras de elegir el ancho de banda h. En particular, si se tiene una sola variable Binomial entonces K(x,y)=h si x=y y K(x,y)=1-h si xy y el mtodo de "dejar uno afuera" produce la siguiente valor ptimo de h h=max(0.5, ( r12 a1 + r22 a2 )n / a1a2 ) donde a1=n(r1-r2)-1 y a2=n(r2-r1)-1. Aqu r1 es la frecuencia relativa del Grupo 1 y r2 es la frecuencia relativa del grupo 2, n es el total de observaciones en la muestra de entrenamiento. Otra posibilidad es escribir el kernel multivariado (8.2) como un producto de kernels binomiales. Aitchison and Aitken (1976) propusieron tambin kernels para datos categoricos ordenados y no ordenados.

8.3 Anlisis Discriminante usando estimacin de densidad por kernels .


En el caso de dos clases C1 y C2 un objeto x es asignado a la clase C1 si f(x/C1)> f(x/C2). En la 1 2 practica las priors se pueden estimar proporcional al tamao de la muestra y las funciones de densidades son estimadas en este caso por el mtodo de kernel. Cuando se tiene mas clases x es asignado a la clase j para el cual f(x/Ci ) e mximo. i En S-Plus, ni en el libro de Venables y Ripley hay funciones que hacen anlisis discriminante usando estimacin de densidad por kernels, en cambio SAS si hace anlisis discriminante y considera todos los kernels anteriormente mencionados, pero no los kernels productos. Ejemplo 8. El siguiente es un programa en SAS para discriminacin por kernels usando los datos del ejemplo1. Se considera primero el kernel Gaussiano y luego el Epanechnikov. Calculando h para el Kernel gaussiano resulta 32-1/5=.5 y 2.40*.05=1.20 pare el kernel Epanechnikov.
options nodate nonumber; libname datos "c:\sas\datos"; data datos.ejemplo6; infile "c:\sas\datos\clasif1.dat"; input E1 E2 aproba $; proc discrim method=npar kernel=normal r=.5 crosslisterr; class aproba; var E1 E2; prior prop; title '** Analisis discriminante usando kernel gaussiano, igual ancho de banda **'; proc discrim method=npar kernel=normal r=.5 pool=no crosslisterr; class aproba; var E1 E2; prior prop; title '** Analisis discriminante usando kernel gaussiano, distinto ancho de banda**'; proc discrim method=npar kernel=epa r=1.2 pool=no crosslisterr; class aproba; var E1 E2;

Edgar Acuna /ESMA 6835 Clasificacin


prior prop; title '**Analisis discriminante usando kernel Epanechnikov, con validacion cruzada **'; run;

69

Los resultados que se obtienen son


Analisis discriminante usando kernel gaussiano, igual ancho de banda Discriminant Analysis 32 Observations 2 Variables 2 Classes 31 DF Total 30 DF Within Classes 1 DF Between Classes

Class Level Information Prior Probability 0.250000 0.750000

APROBA f p

Frequency 8 24

Weight 8.0000 24.0000

Proportion 0.250000 0.750000

** Analisis discriminante usando kernel gaussiano, igual ancho de banda **


Discriminant Analysis Classification Summary for Calibration Data: WORK.EXAM

Resubstitution Summary using Normal Kernel Density Squared Distance Function: APROBA: 2 -1 D (X,Y) = (X-Y)' COV (X-Y) Posterior Probability of Membership in each

-1 2 2 F(X|j) = n SUM exp( -.5 D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k Number of Observations and Percent Classified into

APROBA: From APROBA f f 8 100.00 0 0.00 8 25.00 0.2500 p 0 0.00 24 100.00 24 75.00 0.7500 Total 8 100.00 24 100.00 32 100.00

Total Percent Priors

Edgar Acuna /ESMA 6835 Clasificacin


Error Count Estimates for APROBA: f Rate Priors 0.0000 0.2500 p 0.0000 0.7500 Total 0.0000

70

Cross-validation Results using Normal Kernel Density Squared Distance Function: APROBA: 2 -1 D (X,Y) = (X-Y)' COV (X-Y) Posterior Probability of Membership in each

-1 2 2 F(X|j) = n SUM exp( -.5 D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k

Posterior Probability of Membership in APROBA: Obs From APROBA p p f f Classified into APROBA f f p p * * * * f 0.6844 0.6096 0.4392 0.4845 p 0.3156 0.3904 0.5608 0.5155

16 19 27 28

* Misclassified observation

Cross-validation Summary using Normal Kernel Density Squared Distance Function: APROBA: 2 -1 D (X,Y) = (X-Y)' COV (X-Y) Posterior Probability of Membership in each

-1 2 2 F(X|j) = n SUM exp( -.5 D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k Number of Observations and Percent Classified into

APROBA: From APROBA f

f 6 75.00

p 2 25.00

Total 8 100.00

Edgar Acuna /ESMA 6835 Clasificacin


p 2 8.33 8 25.00 0.2500 22 91.67 24 75.00 0.7500 24 100.00 32 100.00

71

Total Percent Priors

Error Count Estimates for APROBA: f Rate Priors ** 0.2500 0.2500 p 0.0833 0.7500 ** Total 0.1250

Analisis discriminante usando kernel gaussiano, distinto ancho de banda Discriminant Analysis 32 Observations 2 Variables 2 Classes 31 DF Total 30 DF Within Classes 1 DF Between Classes

Class Level Information Prior Probability 0.250000 0.750000

APROBA f p

Frequency 8 24

Weight 8.0000 24.0000

Proportion 0.250000 0.750000

Analisis discriminante usando kernel gaussiano, distinto ancho de banda Discriminant Analysis Classification Summary for Calibration Data: WORK.EXAM

Resubstitution Summary using Normal Kernel Density Squared Distance Function: APROBA: 2 -1 D (X,Y) = (X-Y)' COV (X-Y) j Posterior Probability of Membership in each

-1 2 2 F(X|j) = n SUM exp( -.5 D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k Number of Observations and Percent Classified into

APROBA: From APROBA f f 8 p 0 Total 8

Edgar Acuna /ESMA 6835 Clasificacin


100.00 p 0 0.00 8 25.00 0.2500 0.00 24 100.00 24 75.00 0.7500 100.00 24 100.00 32 100.00

72

Total Percent Priors

Error Count Estimates for APROBA: f Rate Priors 0.0000 0.2500 p 0.0000 0.7500 Total 0.0000

Cross-validation Results using Normal Kernel Density Squared Distance Function: APROBA: 2 -1 D (X,Y) = (X-Y)' COV (X-Y) j Posterior Probability of Membership in each

-1 2 2 F(X|j) = n SUM exp( -.5 D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k

Posterior Probability of Membership in APROBA: Obs From APROBA p f f Classified into APROBA f p p * * * f 0.6481 0.4519 0.4840 p 0.3519 0.5481 0.5160

16 27 28

* Misclassified observation

Cross-validation Summary using Normal Kernel Density Squared Distance Function: APROBA: 2 -1 D (X,Y) = (X-Y)' COV (X-Y) j Posterior Probability of Membership in each

-1 2 2 F(X|j) = n SUM exp( -.5 D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k

Edgar Acuna /ESMA 6835 Clasificacin

73

Number of Observations and Percent Classified into APROBA: From APROBA f f 6 75.00 1 4.17 7 21.88 0.2500 p 2 25.00 23 95.83 25 78.13 0.7500 Total 8 100.00 24 100.00 32 100.00

Total Percent Priors

Error Count Estimates for APROBA: f Rate Priors 0.2500 0.2500 p 0.0417 0.7500 Total 0.0938

** Analisis discriminante usando kernel Epanechnikov, distinto ancho de banda Discriminant Analysis 32 Observations 2 Variables 2 Classes 31 DF Total 30 DF Within Classes 1 DF Between Classes

**

Class Level Information Prior Probability 0.250000 0.750000

APROBA f p

Frequency 8 24

Weight 8.0000 24.0000

Proportion 0.250000 0.750000

Resubstitution Summary using Epanechnikov Kernel Density Squared Distance Function: APROBA: 2 -1 D (X,Y) = (X-Y)' COV (X-Y) j Posterior Probability of Membership in each

-1 2 2 F(X|j) = n SUM ( 1.0 - D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k

Edgar Acuna /ESMA 6835 Clasificacin

74

Number of Observations and Percent Classified into APROBA: From APROBA f f 8 100.00 1 4.17 9 28.13 0.2500 p 0 0.00 23 95.83 23 71.88 0.7500 Total 8 100.00 24 100.00 32 100.00

Total Percent Priors

Error Count Estimates for APROBA: f Rate Priors 0.0000 0.2500 p 0.0417 0.7500 Total 0.0313

Cross-validation Results using Epanechnikov Kernel Density Squared Distance Function: APROBA: 2 -1 D (X,Y) = (X-Y)' COV (X-Y) j Posterior Probability of Membership in each

-1 2 2 F(X|j) = n SUM ( 1.0 - D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k

APROBA: Obs From APROBA p f f

Posterior Probability of Membership in Classified into APROBA f p p * * *

f 0.7298 0.4494 0.4579

p 0.2702 0.5506 0.5421

16 25 27

* Misclassified observation

Cross-validation Summary using Epanechnikov Kernel Density Squared Distance Function: APROBA: Posterior Probability of Membership in each

Edgar Acuna /ESMA 6835 Clasificacin


2 -1 D (X,Y) = (X-Y)' COV (X-Y) j -1 2 2 F(X|j) = n SUM ( 1.0 - D (X,Y ) / R ) j i ji Pr(j|X) = PRIOR F(X|j) / SUM PRIOR F(X|k) j k k

75

APROBA: From APROBA f

Number of Observations and Percent Classified into

f 6 75.00 1 4.17 7 21.88 0.2500

p 2 25.00 23 95.83 25 78.13 0.7500

Total 8 100.00 24 100.00 32 100.00

Total Percent Priors

Error Count Estimates for APROBA: f Rate Priors 0.2500 0.2500 p 0.0417 0.7500 Total 0.0938

El discriminante lineal produce un error del 6.25% usando validacin cruzada-1. Mientras que usando estimacin de densidad por kernel, con anchos de bandas distintos para cada variable se obtiene 9.38% de error usando kernels gaussinao y Epanechnikov y validacin cruzada-1. El error de clasificacin es del 12.50% si se usa kernel gaussiano con igual ancho de banda para cada variable. Ejemplo 9. Efecto en el error de clasificacin de usar kernels para variables continuas a pesar de que ellas discretas. Supongamos que en el ejemplo anterior no se sabe la nota del estudiante en el segundo examen solamente se sabe si el estudiante pas (saco 60 o mas) o fracaso (sac menos de 60). Usando kernel gaussiano con ancho de banda igual para ambas variables en cada grupo se obtienen de acuerdo a SAS un error del 21.88% (7/32). Aitchison y Aitken (1976) propusieron usar kernel productos para hacer anlisis discriminante cuando el vector de variable predictoras contenga variables discretas y continuas. Mas especificamente en nuestro caso

f ( x, y ) =

x x y y 1 n 1 K ( h i ) B( h i ) n i= 1 2

donde K es un kernel continuo, tal como el gaussiano y B es un kernel Binomial, h1 y h2 son sus respectivos anchos de bandas. La siguiente es una funcin kda en S-Plus que hace clasificacin por kernels productos para dos variables predictoras, una discreta y otra continua.

Edgar Acuna /ESMA 6835 Clasificacin

76

kda<-function(train, test, cl) { train1 <- train[cl == 0, ] train2 <- train[cl == 1, ] kda1 <- (1 - mean(cl)) * mixkernel(train1, test, hsj(train1[, 1]), hbin(train1[, 2])) mean(cl) * mixkernel(train2, test, hsj(train2[, 1]), hbin(train2[, 2])) for(i in 1:nrow(test)) { if(kda1[i] > 0) kda1[i] <- 0 else kda1[i] <- 1 } kda1 } train es la muestra de entrenamiento, test es la muestra de prueba y cl es un vector conteniendo los dos grupos, uno marcado con 0 y el otro con 1. La funcin kda llama a las funciones hsj ( de la libreria sm) y miixkernel y hbin descritas a continuacin mixkernel<- function(data, x, h1, h2) { gaussbin <- rep(0, length(x[, 1])) for(j in 1:length(x[, 1])) { for(i in 1:length(data[, 1])) { if(x[j, 2] == data[i, 2]) { gaussbin[j] <- gaussbin[j] + 1/(length(data[, 1]) * h1 *sqrt(6.28)) * exp(-0.5 * ((x[j, 1] - data[i, 1])/h1)^2) * h2} else {gaussbin[j] <- gaussbin[j] + 1/(length(data[, 1]) * h1 * sqrt(6.28)) * exp( -0.5 * ((x[j, 1] - data[i, 1])/h1)^2) * (1 - h2) } } } gaussbin } h1 es el ancho de banda para el kernel gaussiano, existen varias alternativas a elegir, aqui se eligi el mtodo de Seather y Jones, que aparece en la librera MASS (aunque escalado por 4), en la librera sm y en la libreria Ksmooth de Wand (ver la funcin dpik). hbin<-function(x) { r2 <- mean(x) r1 <- 1 - r2 a1 <- length(x) * (r1 - r2) - 1 a2 <- length(x) * (r2 - r1) - 1 k1 <- (r1^2 * a1 + r2^2 * a2) * length(x) h <- max(0.5, - k1/(a1 * a2)) h } La funcin hbin calcula el ancho de banda por el mtodo de validacin cruzada 1, como fue recomendado por Aitchison y Aitken y encontrado explicitamente por Titterigton.

Edgar Acuna /ESMA 6835 Clasificacin

77

La siguiente linea de comandos calcula los anchos de banda para cada variable en cada grupo y el anlisis discriminante por kernel para los datos del ejemplo 1, los cuales estan guardados en el conjunto de datos exatbin.

> hbin(exatbin[1:24,2]) [1] 0.8678451 > hbin(exatbin[25:32,2]) [1] 0.8888889 > hsj(exatbin[1:24,1]) [1] 5.983159 > hsj(exatbin[25:32,1]) [1] 11.64684 > exakda<-kda(exatbin[,1:2],exatbin[,1:2],clases) > tablclasif(clases,exakda) 01 0 24 0 1 35 error rate= 9.38 % > El error por resubssitucin es del 9.38%, menor que en el caso anterior. Tambin se puede estimar el error de mala clasificacin por validacin cruzada 10 y boostraping. A continuacin se muestran los programas en S-Plus y los resultados. rand<-sample(rep(1:10,length=32),32,replace=F) predkda<-rep(0,32) for (i in 1:10) { cat("fold",i,"\n",sep=" ") predkda[rand==i]<kda(exatbin[rand!=i,],exatbin[rand==i,],clases[rand!=i]) } tablclasif(clases,predkda) > tablclasif(clases, predkda) 0 1 0 22 2 1 3 5 error rate= 15.62 % B<-20 sesgo<-rep(0,B) while(B>0) { ind<-sample(1:32,32,replace=T) exatbin2<-exatbin1[ind,] bootkda1<-kda(exatbin2[,1:2],exatbin2[,1:2],exatbin2[,3]) aparente<-mean(bootkda1!=exatbin2[,3]) bootkda2<-kda(exatbin2[,1:2],exatbin1[,1:2],exatbin2[,3]) actual<-mean(bootkda2!=exatbin1[,3])

Edgar Acuna /ESMA 6835 Clasificacin

78

sesgo[B]<-actual-aparente B<-B-1 } sesgo bootsesgo<-mean(sesgo)*100 bootsesgo booterror<-9.38+bootsesgo > booterror [1] 18.4425 >

8.4. Desventajas y Ventajas de usar el metodo de kernels para clasificacin.


a) Caundo hay normalidad de las variables predictoras en cada clase, el anlisis discriminante lineal (LDA) rinde mejopr que el anlisis discriminante por kernel (KDA), pero este ltimo tiene un buen rendimiento cuando las clases no estn bien separadas. b) Cuando no hay normalidad y la muestra es razonabllemente grande (n>50) el KDA tiene un buen rendimiento. c) A diferencia de otros mtodos de clasificacin que rinde bien para cierto tipo de datos y mal en otros casos, el KDA es bien homogeneo en su rendimiento. d) La gran desventaja del KDA es el gran esfuerzo de computacin requerido, especialmente si se tiene un gran nmero de observaciones ya que cada observacin contribuye al kernel. Se recomienda un proceso de seleccin de variables ante de aplicar el KDA. e) Otra desventaja es la maldicin de la dimensionalidad que significa que el tamao de muestra debe aumentar exponencionalmente segn la dimensin para que el estimado de la funcin de densidad por kernel multidemsional tenga precisin. Por ejemplo para 5 dimensiones se requiere un tamao de muestra de 768 (Silverman pgina 94).

8.5 Otros temas relacionados:


Kernels adaptivos: Usar un acho de banda fijo tiene sus problemas porque para estimar bien las colas de la distribucin hay que suavizar la parte central. Una solucin es usar un ancho de banda distinto por cada punto de la muestra. Silverman (1986) propone el siguiente procedimiento a) Hallar un estimado piloto de la funcin de densidad. b) Definir los factores locales de los anchos de bandas locales por i

= { f ( x i ) / g } i
donde g es la media geomtrica de las f(xi), es decir log(g)=log(f(xi)/n , y es un parmetro de sensitividad, ( 0 1). c) El kernel adaptivo se define por

x xi 1 n 1 f( x ) = d d K ( ) n i =1 h h i i
Usualmente el estimado piloto de la funcin de densidad es una mezcla finita gaussiana o el estimador por los vecinos mas cercanos, Breiman, et.al (Technometrics, 1977)

Edgar Acuna /ESMA 6835 Clasificacin

79

Mezclas Gaussianas: En este caso la duncin de densidad condicional por clase del vector de variables predictoras es considerada como una combinacin normal de distribuciones multivariadas con distintos vector de medias pero con igula matriz j de covarianza Mas especificamente,

f ( x / C j ) = (2 ) 1 / 2 i exp( ( x j )' 1 ( x j ) / 2)
i =1

M es el nmero de componentes de la mezcla. Los parmetros de la mezcla son estimados usando el algoritmo EM y el nmero de componenentes puede ser estimado por el algoriumo k-means o LVQ, ver Hastie y Tibshirani (1994) para ms detalles. Ellos construyeron la funcin mda en Splus hace anlisis discriminante por mezclas gaussianas.

Edgar Acuna /ESMA 6835 Clasificacin

80

9. Mtodo de Clasificacin por arboles.


El uso de rboles de decisin tuvo su origen en las ciencias sociales con los trabajos de Sonquist y Morgan (1964) y Morgan y Messenger (1979) realizado en el Survey Research Center del Institute for Social Research de la Universidad de Michigan. En estadstica, Breiman, Friedman, Olshen y Stone (1984) introdujeron nuevos algoritmos para construccin de arboles y los aplicaron a problemas de regresin y clasificacin. El mtodo es conocido como CART (Classification and regression trees) por sus siglas en ingls. Casi al mismo tiempo el proceso de inducin mediante rboles de decisin comenz a ser usado por la comunidad de Machine Learning (Michalski, (1973), Quinlan (1983)) y la comunidad de Pattern Recognition (Henrichon y Fu, 1969). Machine Learning es un sub-rea de Inteligencia Artificial que cae dentro del campo de ciencias de computacin. Pattern Recognition cae dentro del rea de Ingeniera Elctrica. Hoy en da los que ms estn contribuyendo al desarrollo de clasificacin basada en rboles de decisin es la gente de Machine Learning. Existen muchos algoritmos para rboles de decisin y las diferencias entre ellos estn en la estrategia de podar los arboles, las reglas para dividir los rboles y el tratamiento de valores perdidos. Entre los principales estn: C4.5. Introducido por Quinlan (1993) dentro de la comunidad de Machine Learing. CHAID. Significa Chi-square automatic interaction detection, fue introducido por Kass (1980) y es un derivado del THAID: a sequential search program for the analysis of nominal scale dependent variables (Morgan and Messenger, 1973) . Est disponible como un modulo del paquete estadstico SPSS. NewId. Es muy similar a C4.5. CART. Introducido por Breiman, et al (1984), propiamente es una algoritmo de rboles de decisin binario. Existe una versin similar llamada IndCART y que est disponible en el paquete IND distribuido por la NASA Arboles Bayesianos: Est basado en aplicacin de mtodos Bayesianos a arboles de decisin. Buntine (1992. Disponible en el paquete IND distribuido por la NASA. CN2. Introducido por Clark and Niblett (1988). El trmino rboles es por la grfica, aunque los arboles son mostrados creciendo hacia la parte final de la pgina. La raz es el nodo superior, en cada nodo se hace una divisin hasta llegar a un nodo terminal u hoja. Cada nodo no-terminal contiene una pregunta en la cual se basa la divisin del nodo. Cada hoja contiene el nombre de la clase a la cual pertenece. La construccin de un rbol de decisin se basa pues en cuatro elementos: a) Un conjunto de preguntas binarias Q de la forma {Es x A} donde A es un subconjunto d el espacio muestral . a) La seleccin de las divisiones de los nodos. b) La estrategia requerida para parar el crecimiento del rbol. c) La asignacin de cada nodo terminal a una clase La diferencias principales entre los algortimos para construir arboles se hallan en la estrategia para podar arboles y la regla para particionar los nodos. En el caso de dos clases el conjunto de datos es dividido en hiperrectangulos donde los lados de los rectangulos son paralelos a los eje coordenados

Edgar Acuna /ESMA 6835 Clasificacin

81

9.1 El conjunto de preguntas binarias Q


Supongamos que le vector de variables predictoras es de la forma x=(x1, ..xM) donde algunas de las variables xi son discretas y otras son continuas. Entonces el conjunto Q debe tenre las siguientes caracteristicas a) cada divisin de los nodos depende del valor de una sola variable predictotra b) Si la variable xk es continua entonces Q incluye todas las preguntas de la forma {Es xk donde c es cualquier nmero real. c}, c) Si la variable xk es categrica tomando valores en {b1,b2, bm} entonces Q incluye todas las preguntas de la forma {es xk A} donde A es un subcojunto cualquiera de {b1,b2, bm} Por ejemplo si x2, x3 y x4 son variables predictoras continuas y x1 es categrica con valores 0, 1 y 2, entonces Q incluye preguntas de la siguiente forma: Es x34.5? Es x4-1.4? Es x1= 0 1? En CART, si una variable continua xi toma distintos valores xi1,xi2, ..xiN entonces las preguntas son de la forma Es xi ci ? donde ci es un punto medio entre dos valores consecutivos de la variable y si la variable xi es discreta tomando L valores distintos entonces se definen 2L-1 1 particiones distintas del nodo. Preguntas con combinaciones de variables continuas y predictoras, por ejemplo Es x1x2<3.5 ? O son x1=0 y x2=0? No se consideran en el procedimiento bsico.

9.2. Procedimiento para particionar los nodos


Hay varios mtodos de hacer esto, pero la ideal fundamental es que los nodos hijos sean ms puros que los nodos padres. La particin de un nodo t del rbol T se hace de acuerdo a un criterio que es diseado para producir nodos hijos que separen mejor las clases que los nodos padres. Ms precisamente si para cualquier nodo s , P(s)={# i i s}/N y N:X i(s)= (p(1/s),p(2/s), .p(J/s)) es un indice de la impureza del nodo s, donde J es el nmero de clases y es una funcin de impureza, la cual debe satisfacer ciertas propiedades, entonces la siguiente es la regla para particionar el nodo t. Formar el nodo hijo derecho tR y el nodo hijo izquierdo tL tal que i(t)= i(t)-{P(tL)i(tL)+p(tR)i(tR)} sea mximo. CART el Coeficiente de Gini como criterio de impureza. El Coeficiente de Gini est definido por i(t)=

p (i / t ) p( j / t )
i j

Edgar Acuna /ESMA 6835 Clasificacin

82

donde P(k/s)={#iN: Xi s y Yi=k}/{#iN: Xi s} y ij. Tambin se puede usar la Entropia como criterio de impureza, definido por

i(t)= -j p(j/t)log[p(j/t)]

CART tambin usa la regla twoing, especialmente cuando hay ms de dos clases, en este caso estando en el nodo t se elige la divisin de nodos s que maximiza

pL pR [ | p( j / t L ) p( j / t R ) |] 2 4
esta regla no est relacionado con neguna medida de impureza. El siguiente es el procedimiento que usa S-Plus para dividir los nodos, el cual se basa en Clark y Pregibon (1992) Se considera que cada caso en la muestra es asignado a una hoja ( o nodo terminal) del rbol, asi que en cada hoja se tiene un tamao de muestra nik de una distribucin multinomial pik. Luego, la funcin de verosimilitud es proporcional a
#dehojas # declases


i =1

pik

nik

k =1

Entonces una medida de Devianza esta dada por el negativo del doble del logaritmo de la funcin de verosimilitud. Es decir

D= 2

# dehojas #declases

i =1

n
k =1

ik

log( pik )

Donde pik puede ser estimado por pik = nik / ni . Considerar que el nodo s se divide en los nodos R y L, entonces la reduccin del la Devianza del rbol se define por
Ds-DL-DR=-2[


i s

# declases k =1

nik log( pik ) +


i L

# declases k =1

nik log( pik ) +

n
i R k =1

# declases

ik

log( pik ) ]

La estrategia para dividir es elegir la divisin que maximiza la reduccin de la Devianza en el nodo dado.

9.3. Procedimiento para parar el crecimiento del rbol.


En CART se para cuando el mximo de la reduccin total en impureza es menor que una cierta cantidad, por decir un 1% de la impureza inicial.

Edgar Acuna /ESMA 6835 Clasificacin

83

La funcin tree de Splus para cuando el nmero de observaciones en cada nodo terminal es menor que 10 o hasta que la reduccin en la devianza del nodo terminal sea menor del 1%. De la devianza inicial. Sin embargo en CART se recomienda que el rbol se debe dejar crecer lo ms que se pueda luego podarlo hacia arriba Para cualquier rbol T y cualquier 0, una medida del mrito de T ( o medida de costocomplejidad) es R (T)= Resub(T) + |T| Donde Resub(T) es estimado por resubsitucin de la tasa de clasificacin errada de T y |T| es el nmero nodos terminales de T. Cuando =0 se obtiene el rbol ms grande y cuando T= se obtiene un rbol con un solo nodo. El rbol ptimo es aquel que minimiza R(T) y este es encontrado usando validacin cruzada, en particular la validacin cruzada de 10 hojas es la ms usada. Breiman, et. al. Recomiendan usar validacin cruzada 10 para estimar el error de clasificacin. Ellos no recomiendan "boostrapping" porque han mostrado que el sesgo se reduce en menos del 40% del verdadero sesgo. Aunque, para el caso de muestras pequeas el "boostrapping" podria ser usado.

9.4. Tratamiento de valores perdidos en clasificacin por rboles


CART hace uso de particiones sustitutas que son partciones que tienen rendimiento similar a la mejor particin para el repectivo nodo. La similaridad se determina por una medida de asociacin. El procedimiento es como sigue: se determina la mejor particion del nodo basado en una variable digamos xk con los datos que se tiene disponible.Si cuando se desea clasificar una observacin del conjunto de entrenamiento o de prueba no hay el valor correspondiente de la variable xk entonces se usa la particin sustituta y si no hubiera un valor observado de la variable envuelta en la variable sustituta entonces seusa una segunda particin sustituta y asi sucesivamente. Esto es algo asimilar a cuando en un modelo lineal se reemplaza el valor perdido de una variable predictora por la regresin con la variable predictora restante que esta m altamente correlacionada con ella. as

9.5. Clasificacin por rboles usando S-Plus


La funcin tree de S-Plus permite hacer clasificacin por rboles. Aunque aqu hemos usado la librera treefix del libro de Venables y Ripley que corrige algunos defectos de la funcin original. Ejemplo 12. En este ejemplo se aplica el mtodo de rboles a los datos del ejemplo 1. library(nnet) > library(treefix, first=T) > arbol<-tree(clases~E1+E2) > summary(arbol) Classification tree: tree(formula = clases ~ E1 + E2)

Edgar Acuna /ESMA 6835 Clasificacin

84

Number of terminal nodes: 3 Residual mean deviance: 0.3297 = 9.561 / 29 Misclassification error rate: 0.09375 = 3 / 32 > print(arbol) node), split, n, deviance, yval, (yprob) * denotes terminal node 1) root 32 35.990 p ( 0.2500 0.7500 ) 2) E2<50 12 15.280 f ( 0.6667 0.3333 ) 4) E1<63 5 0.000 f ( 1.0000 0.0000 ) * 5) E1>63 7 9.561 p ( 0.4286 0.5714 ) * 3) E2>50 20 0.000 p ( 0.0000 1.0000 ) * > # graficando el arbol > plot(arbol,type="u"); text(arbol) ># Graficando las regiones creadas por el arbol en que el espacio muestral > plot(E1,E2,type="n",xlab="E1",ylab="E2") > text(E1,E2,as.character(clases)) > lines(c(63,0),c(50,50)) > abline(v=63) > ajuste<-predict(arbol) > ajuste f p 1 0.0000000 1.0000000 2 0.0000000 1.0000000 3 0.0000000 1.0000000 4 0.0000000 1.0000000 5 0.0000000 1.0000000 6 0.0000000 1.0000000 7 0.0000000 1.0000000 8 0.0000000 1.0000000 9 0.0000000 1.0000000 10 0.0000000 1.0000000 11 0.0000000 1.0000000 12 0.0000000 1.0000000 13 0.0000000 1.0000000 14 0.0000000 1.0000000 15 0.0000000 1.0000000 16 0.4285714 0.5714286 17 0.0000000 1.0000000 18 0.0000000 1.0000000 19 0.4285714 0.5714286 20 0.0000000 1.0000000 21 0.4285714 0.5714286 22 0.0000000 1.0000000 23 0.4285714 0.5714286 24 0.0000000 1.0000000 25 1.0000000 0.0000000 26 1.0000000 0.0000000 27 0.4285714 0.5714286 28 0.4285714 0.5714286 29 1.0000000 0.0000000

Edgar Acuna /ESMA 6835 Clasificacin

85

30 1.0000000 0.0000000 31 0.4285714 0.5714286 32 1.0000000 0.0000000 > predi<-apply(ajuste,1,which.is.max) > predi 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 222222222 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 1 1 2 32 1 > c("F","P")[predi] [1] "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" [21] "P" "P" "P" "P" "F" "F" "P" "P" "F" "F" "P" "F" > En este ejemplo en la etapa inicial todas las observaciones estn en un grupo, entonces n1,P=24, n1,F=8 y n1=32 y p1, P =24/32=0.75 y p1, F =8/32=0.25. Asi que la devianza D=2[24log(0.75)+8log(0.25)=35.99. En la primera particin n1,P=20, n1,F=0 y n1=20 n2,P=4, n1,F=8 y n2=12

y p1, P =20/20=1, p1, F =0/20=0. Tambin p2,P =4/12=.3333 y p2,F = 8/12=.6666.


Luego, la Devianza es D=-2[20log1+0log0+4log(.3333)+8log(.6666)]=15.280, y asi sucesivamente.
Grafica de arbol mostrando los nodos terminales
E2<50 |

P
E1<63

Your text

F
f p

La siguiente figura muestra la regiones de clasificacin predichas por el mtodo de rboles

Edgar Acuna /ESMA 6835 Clasificacin

86

Separacion del espacio de mediciones por clases segun CART


100 p p p 80 p p p E2 60 p p p f 40 f f f 20 f p p f p f f 40 50 60 70 E1 80 90 100 p p p p p p pp p p p p

Notar que el error de clasificacin es 9.37% Ejemplo 13. En el siguiente program se aplica clasificacin por rboles a los datos del ejemplo 3. Adems se usa clasificacin cruzada para mejor la estimacin del error. sico<-read.table("a:discdat.dat",header=T) arbol<-tree(diag~x1+x1+x3+x4+x5,data=sico) arbol plot(arbol,type="u") text(arbol) title("Clasificacion usando arboles") cvtr<-cv.tree(arbol,FUN=prune.tree, rand=1:45) cvtr best.tree<-prune.tree(arbol,best=3) best.tree plot(best.tree, type="u") text(best.tree) title("Clasificacion usando el mejor arbol") ajus<-predict(best.tree) ajus pred<-apply(ajus,1,which.is.max) pred c("I","W")[pred] summary(best.tree) Se obtienen los siguientes resultados > sico<-read.table("a:discdat.dat",header=T) > arbol<-tree(diag~x1+x1+x3+x4+x5,data=sico) > arbol node), split, n, deviance, yval, (yprob) * denotes terminal node

Edgar Acuna /ESMA 6835 Clasificacin

87

1) root 45 57.290 W ( 0.3333 0.6667 ) 2) x5<2.5 26 35.430 I ( 0.5769 0.4231 ) 4) x4<1.5 14 14.550 I ( 0.7857 0.2143 ) 8) x1<1.5 7 5.742 I ( 0.8571 0.1429 ) * 9) x1>1.5 7 8.376 I ( 0.7143 0.2857 ) * 5) x4>1.5 12 15.280 W ( 0.3333 0.6667 ) 10) x1<2.5 6 8.318 I ( 0.5000 0.5000 ) * 11) x1>2.5 6 5.407 W ( 0.1667 0.8333 ) * 3) x5>2.5 19 0.000 W ( 0.0000 1.0000 ) * > plot(arbol,type="u") > text(arbol) > title("Clasificacion usando arboles") > cvtr<-cv.tree(arbol,FUN=prune.tree, rand=1:45) > cvtr $size: [1] 5 4 3 2 1 $dev: [1] 54.50130 54.82147 61.34824 72.84285 70.35433 $k: [1] -Inf 0.4308328 1.5518394 5.6012424 [5] 21.8604572 $method: [1] "deviance" attr(, "class"): [1] "prune" "tree.sequence" > best.tree<-prune.tree(arbol,best=3) > best.tree node), split, n, deviance, yval, (yprob) * denotes terminal node 1) root 45 57.29 W ( 0.3333 0.6667 ) 2) x5<2.5 26 35.43 I ( 0.5769 0.4231 ) 4) x4<1.5 14 14.55 I ( 0.7857 0.2143 ) * 5) x4>1.5 12 15.28 W ( 0.3333 0.6667 ) * 3) x5>2.5 19 0.00 W ( 0.0000 1.0000 ) * > plot(best.tree, type="u") > text(best.tree) > title("Clasificacion usando el mejor arbol") > ajus<-predict(best.tree) > ajus I W 1 0.3333333 0.6666667 2 0.7857143 0.2142857 3 0.7857143 0.2142857 4 0.7857143 0.2142857 5 0.7857143 0.2142857 6 0.7857143 0.2142857

Edgar Acuna /ESMA 6835 Clasificacin

88

7 0.3333333 0.6666667 8 0.7857143 0.2142857 9 0.7857143 0.2142857 10 0.7857143 0.2142857 11 0.7857143 0.2142857 12 0.7857143 0.2142857 13 0.3333333 0.6666667 14 0.7857143 0.2142857 15 0.3333333 0.6666667 16 0.3333333 0.6666667 17 0.0000000 1.0000000 18 0.3333333 0.6666667 19 0.3333333 0.6666667 20 0.0000000 1.0000000 21 0.0000000 1.0000000 22 0.0000000 1.0000000 23 0.0000000 1.0000000 24 0.3333333 0.6666667 25 0.0000000 1.0000000 26 0.7857143 0.2142857 27 0.3333333 0.6666667 28 0.0000000 1.0000000 29 0.3333333 0.6666667 30 0.0000000 1.0000000 31 0.0000000 1.0000000 32 0.7857143 0.2142857 33 0.0000000 1.0000000 34 0.0000000 1.0000000 35 0.0000000 1.0000000 36 0.0000000 1.0000000 37 0.0000000 1.0000000 38 0.0000000 1.0000000 39 0.0000000 1.0000000 40 0.0000000 1.0000000 41 0.7857143 0.2142857 42 0.3333333 0.6666667 43 0.0000000 1.0000000 44 0.3333333 0.6666667 45 0.0000000 1.0000000 > pred<-apply(ajus,1,which.is.max) > pred 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 211111211 1 1 1 2 1 2 2 2 2 2 2 2 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 2 2 2 2 1 2 2 2 2 2 1 2 2 2 2 2 2 2 40 41 42 43 44 45 2 1 2 2 2 2 > c("I","W")[pred] [1] "W" "I" "I" "I" "I" "I" "W" "I" "I" "I" "I" "I" "W" [14] "I" "W" "W" "W" "W" "W" "W" "W" "W" "W" "W" "W" "I" [27] "W" "W" "W" "W" "W" "I" "W" "W" "W" "W" "W" "W" "W"

Edgar Acuna /ESMA 6835 Clasificacin

89

[40] "W" "I" "W" "W" "W" "W" > summary(best.tree) Classification tree: snip.tree(tree = arbol, nodes = c(4, 5)) Variables actually used in tree construction: [1] "x5" "x4" Number of terminal nodes: 3 Residual mean deviance: 0.7101 = 29.82 / 42 Misclassification error rate: 0.1556 = 7 / 45
Clasificacion usando el mejor arbol
x5<2.5 |

x4<1.5 W

Notar que hay un error del clasificacin del 15.5%, usando validacin cruzada

9.6. Ventajas y desventajas de clasificacin por arboles


Ventajas: Puede ser aplicado a cualquier tipo de variables predictoras: continuas y categricas Los resultados son fciles de entender. No tiene problema de trabajar con datos perdidos. Hace automaticamente seleccin de variables. Es invariante a transforamciones de las variables predictoras. Es robusto a la presencia de "outliers". Desventajas: El proceso de seleccin de variables es sesgado hacia las variables con mayor valores distintos. La superficie de prediccion no es muy suave, ya que son planos.

Edgar Acuna /ESMA 6835 Clasificacin

90

10. Redes Neurales


La redes neurales pueden ser considerado como un intento de emular el cerebro humano. El cerebro tiene aproximadamente 1.5 x 1010 neuronas cada una con 10 a 104 conecciones llamadas sinapses. La idea es construir un modelo del cerebro humano basado en computadoras para realizar tareas complejas. En general, redes neurales son representaciones de modelos matemticos donde unidades computacionales son conectadas entre s por un mecanismo que aprende de la experiencia, es decir de los datos que se han tomado. Las primeras ideas fueron introducidas por McCulloch y Pits (1943). Posteriormente, Rosenblatt (1958, 1962) introdujo el concepto de Perceptron ( conjunto de neuronas) y lo trat de aplicar a clasificacin. Pero no fue hasta 1985, con los trabajos de Hinton, Rumellhart y Williams que presentaron el algoritmo de backpropagation para el aprendizaje de una red neural, cuando estas comenzaron a llamar la atencin de la comunidad cientfica. En estadstica los trabajos de Ripley (1993) y Chen y Titterigton (1994) fueron pioneros en la incursin de los estadsticosa en redesa neurales. Los usos en estadstica de las redes neurales artificiales, ANN por sus siglas en ingls (muchas veces se elimina la palabra artificiales) incluyen: a. Anlisis Discriminante b. Regresin c. Anlisis por conglomerados. d. Estiamcin de densidades

Tabla que relaciona terminos en redes neurales con terminos estadsticos


Estadistica Variables Variables independientes Variables dependientes Valores predichos Estimacin, Ajuste Parmetros estimados Transformaciones Interpolacin o Extrapolacin Regresin y anlisis discriminante Redes neurales Rasgos ("features") Entradas ( "Inputs") Objetivos ("Targets") Salidas ("Outputs") Aprendizaje("Learning"), Entrenamiento Pesos ("weights") Relaciones funcionales ("Functional Links") Genralizacin Aprendizaje supervisado( "Supervised Learning")

Tipos de Redes Neurales:


Existen muchos tipos de redes neurales, entre los principales estn: a) Para aprendizaje supervisado (anlisis de regresin y anlisis discriminante) Multilayer Perceptron (MLP) Radial basis function Networks (RBF) Learning Vector Quantization (LVQ) b) Para aprendizaje no supervisado (anlisis por conglomerados)

Edgar Acuna /ESMA 6835 Clasificacin

91

Hopfield Networks Kohonen's Self-Organizing Maps Adaptive Resonance Theory Diagramas de redes Las neuronas son representadas por circulos y cajas, mientras que las conecciones entre ellas son representadas por flechas: Los circulos representan variables observadas con el nombre adentro del circulo. Las cajas representan valores calculados con una funcin de uno o ms argumentos. El simbolo dentro de la caja indica el tipo de funcin. Las flechas indican que el punto de partida de la flecha es un argumento de la funcin calculada en el punto final de la flecha. Cada flecha tiene usualmente un parametero correpondiente a ser estimado. Dos lineas paralelas indican que los valores en cada extremo son ajustado por minimos cuadrados, mxima verosimiltud o algn otro criterio de estimacin.

Input

Output

Target

Variable Independiente

Valor Predicho

Variable Dependiente

Figura 1. Red Neural para regresin lineal Simple 10.1 El "Perceptron" simple Un "percenton" es un modelo de una neurona. En terminos de redes neurales un "perceptron" calcula una combinacin lineal de inputs (posiblemente con un intercepto, que es llamado el temino sesgo). Luego, una funcin de activacin, la cual es por lo general no lineal es aplicada a esta combinacin lineal para producir un output. Es decir el output yj es

yj = f j(

inputs:i

w x)
ij i

fj representa a la funcin de activacin y wij son los pesos, que los estadsticos llamamos parmetros, La red neural aprende los pesos de los datos que se han recolectado.

Edgar Acuna /ESMA 6835 Clasificacin

92

Tabla de funciones de Activacin Nombre Lineal Logstica Gaussiana Threshold Funcin Act(x)=x Act(x)=(1+e-x)-1 Act(x)=e-x2/2 Act(x)=0 si x<0, 1 en otro caso

En las siguientes figuras se muestran perceptron que son usadas en regresin logstica y anlisis discriminante respectivamente, este ltimo tambin es llamado ADELINE (Adaptive Linear Element, ver Widrow and Hoff (1960). En clasificacin, se prefiere usar una variable binaria yj para representar la clase j, y fj es una funcin threshold o la funcin logstica. En regresin lineal fj (w)=w.

Inputs
X1

Output

Target

W1

W2 X2 W3 Valor Predicho X3 Variables Independientes Y

Variable Dependiente

Edgar Acuna /ESMA 6835 Clasificacin

93

Figura 2. Perceptron simple Nolineal= Regresin Logstica.

Inputs
X1

Output

Target

X2

Variable Binaria Valor Predicho X3 Variables Independientes

Figura 3. Red Neural para Anlisis Discriminante

10.2 El "Perceptron" de multiple niveles (MLP) Una red neural de dos niveles puede ser escrita en dos ecuaciones

z j = ( j + h
y k = ( k + o

w
i
j

ij

xi )
xi )

ik

Aqui zj son las unidades del nivel escondido (Hidden Layer) , yk las unidades de salida, y o h son funciones de activacin. Casi siempre es la funcin logstica, tambin conocida como la h funcin de activacin sigmoidal, puede ser lineal, logstica o threshold. Sustituyendo la o primera ecuacin en la segunda se obtiene

y k = ( k + o

w
j

jk

( j + h

w
i

ij

xi ))

donde wij y i representan los pesos, es una funcin de activacin tipicamente logstica y es h o una funcin de activacin usualmente lineal, logistica o "threshold".

Edgar Acuna /ESMA 6835 Clasificacin

94

El MLP tambin es llamado red de alimentacin hacia adelante (FFNN) o red de propagacin hacia atras.

Entrenamiento de una red neural


Esto es equivalente a estimacin en estadstica. Los pesos w son elegidos de tal manera que alguna medida de ajuste se minimize. Para Regresin: Se minimiza la suma de los cuadrados de los errores. E=

(y
i =1 j =1

i j

y ij ) 2

con respecto a los pesos (j, wij) Para clasificacin: Se minimiza la funcion entropia cruzada E=

[y
i j

ij

log y ij + (1 y ij ) log(1 y ij )]

Mtodos de Minimizacin de E. Sea w la matriz de pesos de la red neural entonces la gradiente de E(w) es un campo vectorial de derivadas definido por

E ( w) = (

dE ( w) dE ( w) , ,......) dw1 dw 2

Por la forma del modelo de una red neural la gradiente puede ser calculada usando la regla de la cadena y a travs del aloritmo de "Backpropagation". Una aproximacin lineal a E(w) en una vecindad de una matriz de pesos wo esta dada por

E (w) E (w o ) + E ( w o )(w w o )
Tambin se puede usar una aproximacin de segundo orden que involucra el uso de la matriz Hessiana H-1= E de segundas derivadas. E puede ser minimizada usando mtodos de anlisis numrico y modelos nolineales incluyendo: Gradiente Descendente, mtodos Quasi-Newton (recomendado si el nmero de pesos es menor de 1000), Mtodo Gradiente Conjugado (recomendado si hay una gran cantidad de pesos a ser estimados) y "Simulated Annealing", Algoritmos Genticos.

Edgar Acuna /ESMA 6835 Clasificacin

95

La mayor dificultad de minimizar E es la presencia de multiples mnimos y el riesgo de elegir uno de ellos que no sea optimo.A menudo es necesario reempezar el proceso de minimizacin usando distintos valores iniciales.

Medidas remediales para overfitting


Parar el proceso iterativo de estimar el minimo de E. Se asume que se tiene un conjunto de validacin y se para el proceso iterativo cuando el rendimiento de la red neural en el cojunto de validacin se empieza a deteriorar. Regularizacin: En este caso se se aade una penalidad a E(w) y luego se minmiza. Ms especificamente, Minw[E(w)+ (w)]. Aqu w es la matriz de pesos, E(w) es el error de prediccin, es la constante de regularizacin y es la funcin de penalidad del modelo. El ejemplo ms simple es la regularizacin conocido como weight decay (deterioro de pesos) definido como Minw[E(w)+ 2 w Esto es muy similar a regresin ridge y a validacin cruzada. Promediar: En este caso se eligen varios valores iniciales para el proceso iterativo de minimizar E(w) y se promedian las predicciones obtenidas. Aadir ruido. En este caso se aade un ruido (noise) a cada variable de entrada y luego se ajusta la red neural. Se repite el proceso varias veces y luego se promedia. Bagging (Bootstrap aggregating). Se toma vraias muestras con reeplazamiento de la muestra de entrenamiento y se ajusta una red neural para cada una de ellas. Luego se promedian las predicciones finales en el caso de regresin o se asigna la observacin a la clase ms votada en el caso de clasificacin. Otrso mtodos relacionados son arcing, stackimg, boosting.

Ventajas y desventajas de redes neurales:


a) b) c) d) Son buenos para hacer predicciones pero malos para ser entendidos. Buenos para analizar conjuntos de datos de gran tamao y de estructura compleja. Pueden rendir mejor o peor que los mtodos estadsticos dependiendo del tipo de problema. Carecen de una buena teora estadstica para hacer inferencias, diagnsticos y seleccin de modelos.

10.3. Redes de Funciones de base radiales


las funciones de bases radiales fueron inicialmente aplicadas a aproximacin de funciones, Roomhead y Lowe (1988) fueron los primeros en usarlos para clasificacin. La funcin de base radial (RBF) puede ser escrita matemticamente como una combinacin lineal de funciones nolineales radialmente simtricas, son aproximaciones de la forma

Edgar Acuna /ESMA 6835 Clasificacin

96

y = +

(|| x
j j j =1

c j ||)

donde cj son centros pre-especificados, y j son pesos a ser estimados, las son las funciones j bases usualmente se consideran las mismas para todo j y las mas usadas son la gaussiana (r)=exp(-r2/2), la cuadrtica r 2 + ar + b y la "thin plate spline" (r)= (r)=r2log(r). El modelo es muy similar a mezclas gaussianas y a estimadores de densidad por kernel. Los centros son elegidos usando anlisis por conglomerados, knn, mezclas normales o minimos cuadrados ortogonales y el nmero de componentes m es elegido de tal manera que no ocurra "underfit" o "overfit" y usualmente se aplica validacin cruzada.

10.3 Redes Neurales en S-Plus


La funcin nnet de S-Plus permite modelar redes neurales. Ejemplo 15. En el siguiente ejemplo el mtodo es aplicado a los datos del ejemplo 1. > library(nnet) > clasnum<-class.ind(clases) > rednota<-nnet(examenes,clasnum,entropy=T,size=2,maxit=1000) # weights: 12 initial value 45.542762 final value 35.989449 converged > summary(rednota) a 2-2-2 network with 12 weights options were - entropy fitting b->h1 i1->h1 i2->h1 -0.01 -3.59 -0.53 b->h2 i1->h2 i2->h2 -0.41 -0.42 -0.45 b->o1 h1->o1 h2->o1 -1.10 -1.46 0.17 b->o2 h1->o2 h2->o2 1.10 1.18 -0.62 > rednota$fit f p [1,] 0.2499974 0.750001 [2,] 0.2499974 0.750001 [3,] 0.2499974 0.750001 [4,] 0.2499974 0.750001 [5,] 0.2499974 0.750001 [6,] 0.2499974 0.750001 [7,] 0.2499974 0.750001 [8,] 0.2499974 0.750001 [9,] 0.2499974 0.750001 [10,] 0.2499974 0.750001 [11,] 0.2499974 0.750001 [12,] 0.2499974 0.750001 [13,] 0.2499974 0.750001 [14,] 0.2499974 0.750001

Edgar Acuna /ESMA 6835 Clasificacin

97

[15,] 0.2499974 0.750001 [16,] 0.2499974 0.750001 [17,] 0.2499974 0.750001 [18,] 0.2499974 0.750001 [19,] 0.2499974 0.750001 [20,] 0.2499974 0.750001 [21,] 0.2499974 0.750001 [22,] 0.2499974 0.750001 [23,] 0.2499974 0.750001 [24,] 0.2499974 0.750001 [25,] 0.2499974 0.750001 [26,] 0.2499974 0.750001 [27,] 0.2499974 0.750001 [28,] 0.2499974 0.750001 [29,] 0.2499974 0.750001 [30,] 0.2499974 0.750001 [31,] 0.2499974 0.750001 [32,] 0.2499974 0.750001 > predic<-apply(rednota$fit,1,which.is.max) > c("F","P")[predic] [1] "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" [21] "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" > rednota<-nnet(examenes,clasnum,entropy=T,size=6,maxit=1000) # weights: 32 initial value 48.871751 iter 10 value 34.119951 iter 20 value 25.475002 iter 30 value 1.907809 iter 40 value 0.001067 final value 0.000102 converged > summary(rednota) a 2-6-2 network with 32 weights options were - entropy fitting b->h1 i1->h1 i2->h1 -0.05 0.22 0.27 b->h2 i1->h2 i2->h2 39.94 -0.23 -0.11 b->h3 i1->h3 i2->h3 -25.36 0.36 0.32 b->h4 i1->h4 i2->h4 106.77 -1.16 -0.71 b->h5 i1->h5 i2->h5 0.25 -0.13 -0.31 b->h6 i1->h6 i2->h6 0.25 -0.56 0.05 b->o1 h1->o1 h2->o1 h3->o1 h4->o1 h5->o1 h6->o1 -2.78 -3.30 3.95 -17.11 35.32 -0.23 -0.32 b->o2 h1->o2 h2->o2 h3->o2 h4->o2 h5->o2 h6->o2 16.13 16.15 -32.03 27.16 -46.11 0.93 -0.55

Edgar Acuna /ESMA 6835 Clasificacin

98

> rednota$fit f p [1,] 0.000000e+000 1.00000000000 [2,] 0.000000e+000 1.00000000000 [3,] 0.000000e+000 1.00000000000 [4,] 0.000000e+000 1.00000000000 [5,] 0.000000e+000 1.00000000000 [6,] 0.000000e+000 1.00000000000 [7,] 0.000000e+000 1.00000000000 [8,] 0.000000e+000 1.00000000000 [9,] 0.000000e+000 1.00000000000 [10,] 0.000000e+000 1.00000000000 [11,] 0.000000e+000 1.00000000000 [12,] 0.000000e+000 1.00000000000 [13,] 0.000000e+000 1.00000000000 [14,] 0.000000e+000 1.00000000000 [15,] 0.000000e+000 1.00000000000 [16,] 0.000000e+000 1.00000000000 [17,] 0.000000e+000 1.00000000000 [18,] 0.000000e+000 1.00000000000 [19,] 0.000000e+000 1.00000000000 [20,] 0.000000e+000 1.00000000000 [21,] 9.146935e-006 1.00000000000 [22,] 0.000000e+000 1.00000000000 [23,] 0.000000e+000 1.00000000000 [24,] 0.000000e+000 1.00000000000 [25,] 1.000000e+000 0.00000000000 [26,] 1.000000e+000 0.00000000000 [27,] 9.999601e-001 0.00001783479 [28,] 9.999994e-001 0.00000000000 [29,] 1.000000e+000 0.00000000000 [30,] 1.000000e+000 0.00000000000 [31,] 1.000000e+000 0.00000000000 [32,] 1.000000e+000 0.00000000000 > predic<-apply(rednota$fit,1,which.is.max) > c("F","P")[predic] [1] "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" "P" [21] "P" "P" "P" "P" "F" "F" "F" "F" "F" "F" "F" "F" Notar que el error de clasificacin es 0%. Ejemplo 16. Para los datos del ejemplo 3 el programa en S-Plus es como sigue: sico<-read.table("a:discdat.dat",header=T) targets<-class.ind(sico$diag) red<-nnet(sico[,-1],targets,entropy=T,size=2,maxit=4000) summary(red) red$fit pr<-apply(red$fit,1,which.is.max) c("I","W")[pr]

Edgar Acuna /ESMA 6835 Clasificacin

99

Se obtienen los siguientes resultados >library(nnet) > sico<-read.table("a:discdat.dat",header=T) > targets<-class.ind(sico$diag) > red<-nnet(sico[,-1],targets,entropy=T,size=2,maxit=4000) # weights: 18 initial value 63.946031 iter 10 value 34.827280 iter 20 value 25.418224 iter 30 value 21.030965 iter 40 value 19.235502 iter 50 value 19.213482 final value 19.213327 converged > summary(red) a 5-2-2 network with 18 weights options were - entropy fitting b->h1 i1->h1 i2->h1 i3->h1 i4->h1 i5->h1 -545.32 78.93 34.11 88.06 46.63 19.72 b->h2 i1->h2 i2->h2 i3->h2 i4->h2 i5->h2 307.72 -64.21 -175.49 95.56 -14.74 -79.88 b->o1 h1->o1 h2->o1 0.51 -3.81 53.18 b->o2 h1->o2 h2->o2 -0.51 3.81 -54.32 > red$fit I W 1 0.62499058 0.3750222 2 0.62501740 0.3749954 3 1.00000000 0.0000000 4 0.62501740 0.3749954 5 1.00000000 0.0000000 6 1.00000000 0.0000000 7 0.62499058 0.3750222 8 1.00000000 0.0000000 9 1.00000000 0.0000000 10 1.00000000 0.0000000 11 0.62501740 0.3749954 12 1.00000000 0.0000000 13 1.00000000 0.0000000 14 1.00000000 0.0000000 15 0.03571374 0.9642853 16 0.03571374 0.9642853 17 0.03571374 0.9642853 18 0.03571374 0.9642853 19 0.03571374 0.9642853 20 0.03571374 0.9642853 21 0.03572561 0.9642734 22 0.03571374 0.9642853

Edgar Acuna /ESMA 6835 Clasificacin

100

23 0.03571374 0.9642853 24 0.62499058 0.3750222 25 0.03571374 0.9642853 26 0.03571374 0.9642853 27 0.03571374 0.9642853 28 0.03571374 0.9642853 29 0.03571374 0.9642853 30 0.03571374 0.9642853 31 0.03571374 0.9642853 32 0.62501740 0.3749954 33 0.03571374 0.9642853 34 0.03571374 0.9642853 35 0.03571374 0.9642853 36 0.03571374 0.9642853 37 0.03571374 0.9642853 38 0.03571374 0.9642853 39 0.03571374 0.9642853 40 0.03571374 0.9642853 41 0.62501740 0.3749954 42 0.03571374 0.9642853 43 0.03571374 0.9642853 44 0.03571374 0.9642853 45 0.03571374 0.9642853 > pr<-apply(red$fit,1,which.is.max) > c("I","W")[pr] [1] "I" "I" "I" "I" "I" "I" "I" "I" "I" "I" "I" "I" "I" "I" "W" "W" "W" "W" "W" "W" [21] "W" "W" "W" "I" "W" "W" "W" "W" "W" "W" "W" "I" "W" "W" "W" "W" "W" "W" "W" "W" [41] "I" "W" "W" "W" "W" Hay 4 de 45 observaciones mal clasificadas para una tasa de error del 8.88%

Edgar Acuna /ESMA 6835 Clasificacin

101

11. Recientes avances en Anlisis Discriminante


1. Combinando mtodos de clasificacin para mejorar la prediccin "Stacking" (David Wolpert, 1992). "Boosting" (Yoav Freund and Robert Shapire, 1995) "Bagging" (Leo Breiman, 1996). "Bumping"(Robert Tisbhirani, 1996). "Arcing" (Leo Breiman, 1998) 2. Anlisis Discriminante Flexible (FDA) Se trata de adaptar tecnicas de regresin noparamtrica a anlisis discriminante. (Hastie, T., Tibshirani, R. y Buja, A, 1994.) 3. Anlisis Discriminante Penalizado (PDA) (Hastie, T., Tibshirani, R. y Buja, A, 1995.) 4. Anlisis Discriminante usando mezclas Gaussianas. (Hastie, T., Tibshirani, R. 1996.)

Edgar Acuna /ESMA 6835 Clasificacin

102

REFERENCIAS 1. Acua, E and Ramirez, Nazario (1995) Neural Networks and Satistical Pattern recognition. A proposal for DEPSCOR program. UPR-RUM. Puerto Rico. 2. Afifi, A.A and Clark, V. (1990) Computer-Aided Multivariate Analysis. Second edition, Chapman and Hall, New York. 3. Aitchison, J. and Aitken, C.G.G., Multivariate binary discrimination by the kernel method, Biometrika, 63, 413.420. 4. Breiman, L. Friedman, J.H., Olshen, R. y Stone, C.J. (1984) Classification and Regression Trees. Wadsworth, Belmont, CA. 5. Cornfield, J. (1962). Joitn dependence of risk coronary heart disease on serum cholesterol and systolic blood preassure. Fed Amer. Socs. Exper. Biol. Proc Suppl. 11, 58-61. 6. Efron, B. (1975). The efficiency of logistic regression compared to normal discrimant analysis. Journal of the American Statistical Association.70, 892-898. 7. Enas, G.G and Choi, S.C. (1986). Choice of the smoothing parameter and efficiency of the knearest neigbour classification. Comput. Math. Applic. 12A, 235-244. 8. Fisher, R.A. (1936). The use of multiple measurements in taxonomic problems. Annals of Eugenics, 7, 179-188. 9. Fix, E. and Hodges, J.L. (1951) Discriminatory analysis, nonparametric estimation: consistency properties. Reporrt No. 4, project, No. 21-49-004. UASF School of Aviation Medicine, Texas. 10. Hand, D.J. (1981). Discrimination and classification. John Wiley, New York. 11. Hand, D.J. (1997). Construction ans Assessmnet of Classification Rules. John Wiley, New York. 12. Hawkins, D.M. (1976). A test for multivariate normality and homocedasticy. Technometrics, 23, 105-110. 13. Hosner, D.W. Jr and Lemeshow, S. (1989). Applied logistic regression. New York, Wiley. 14. Lachenbruch, P.A. and Mickey, M.R. (1975) Discriminant Anaalysis, Hafner Press, New York. 15. Marks, S. and Dunn, O.J. (1974). Discriminant functions when covariance matrices are unequal. J. Amer. Statist. Assoc. 69, 555-559. 16. McLachlan, G.J. (1992) Discriminant Analysis and Statistical pattern recognition, John Wiley, New York. 17. Michie, D. Spiegelhalter, D.J and Taylor, C.C. (1994) Machine Learning, Neural aand Statistical classification. 18. Panel on Discriminant Analysis, Classification, and Clustering, Committee on Applied and Theoretical Statistics, National research Council (1988). Discriminant Analysis and Clustering. National Academic Press, Washington D.C. 19. Press, S.J. and Wilson, S. (1978), Choosing between logistic regression and discriminant analysis. J. of Amer. Statist. Assoc.73, 699-705. 20. Ripley, B. (1996). Pattern Recognition and Neural Networks. Cambridge University Press. 21. Rosemblatt, M. (1956) Remarks on some nonparametric estimates of a density function. Ann Math. Statist. 27, 832-837. 22. SAS Institute. (1990). SAS/STAT Users Guide. Fourth Edition. Cary, North Carolina. 23. Silverman, B.W (1986). Density Estimation for Statistics and Data Analysis. Chapman and Hall. London 24. Venables, W.N. and Ripley B.D. (1994). Modern Applied Statistics with S-Plus. SpringerVerlag, New York.

Edgar Acuna /ESMA 6835 Clasificacin

103

25. Weiss, S.M. and Kulikowski, C.A. (1991) Computer Systems that learn: Classification and Predition methods from Statistics, Neural nets, Machine learning and Expert systems. Morgan Kaufman, San Mateo, CA.

You might also like