Escolar Documentos
Profissional Documentos
Cultura Documentos
Tarea N1
Clasificador Bayesiano
Profesor:
Javier Ruiz del Solar
Auxiliar:
Patricio Loncomilla
Ayudantes:
Felipe Valdes
Pedro Orellana
Integrantes:
Roberto Rojas
Fecha:
April 14, 2015
Introducci
on
El presente informe da cuenta de la primera tarea del curso, la cual pretende entregar una primera
aproximacion al proceso de clasificaci
on de caractersticas. En particular, se pretende dise
nar un
clasificador Bayesiano que permita determinar en forma probabilstica si un vino pertenece a la clase
Blanco o Tinto.
Dado que las verosimilitudes de las muestras son desconocidas, estas deberan ser estimadas. Para
ello, se proponen dos enfoques: por un lado, utilizacion de histogramas en un escenario Naive Bayes,
mientras que por otro, estimaci
on de vector media y matriz de covarianza para un modelo gaussiano
multidimensional.
Marco Te
orico
Esta seccion se basa en los contenidos expuestos por [1]. Especficamente, el captulo 2 aborda de
manera detallada la teora bayesiana de clasificacion, mientras que el captulo 3 muestra reglas de
estimacion parametrica.
2.1
Clasificador de Bayes
El clasificador de Bayes se basa en la teora de deteccion bayesiana, en la cual se utiliza la regla que
minimiza el riesgo.
En primer lugar, se define el riesgo condicional como el costo esperado de tomar la accion i , dado
que se observa el vector de caractersticas ~x:
R(i |~x) =
c
X
(i |j )p(j |~x)
(1)
j=1
R((~x)|~x)p(~x) d~x
(2)
Rd
El clasificador bayesiano busca minimizar el riesgo bayesiano, lo cual implica minimizar el riesgo
condicional en 1 para cada ~x. Si se tiene un set de datos o muestras {x~1 , x~2 , . . . , x~n }, para cada xj se
elige la decision i que minimiza 1. En general, se tiene igual n
umero de decisiones que de clases, tal
que i corresponde a decidir la clase i .
2.1.1
Para el caso particular de dos clases (y por ende dos decisiones), se debe computar el riesgo condicional
para 1 y 2 :
R(1 |~x) = 11 p(1 |~x) + 12 p(2 |~x)
R(2 |~x) = 21 p(1 |~x) + 22 p(2 |~x)
El clasificador elige la clase 1 (i.e. decisi
on 1 ) si:
R(1 |~x) < R(2 |~x)
11 p(1 |~x) + 12 p(2 |~x) < 21 p(1 |~x) + 22 p(2 |~x)
(11 21 )p(1 |~x) < (22 12 )p(2 |~x)
1
Se puede observar que la regla de decision encontrada queda en funcion de las probabilidades a
posteriori, algo que no es dato y es difcil de obtener. Sin embargo, usando la regla de Bayes:
(11 21 )p(~x|1 )p(1 ) < (22 12 )p(~x|2 )p(2 )
Finalmente, considerando ii < ij , i 6= j (pues acertar debera tener un costo menor que fallar),
resulta una regla de decisi
on en la que se elige la clase w1 si:
p(~x|1 )
(12 22 )p(2 )
p(~x|2 )
(21 11 )p(1 )
(3)
Las distribuciones o funciones likelihood en 3 pueden obtenerse de forma aproximada a partir de datos
de entrenamiento. Una forma de hacerlo es a traves de estimacion.
2.2
Estimaci
on param
etrica
~j
= argmax
~j
p(~xmi |j ; ~j )
i=1
argmax
~j
M
Y
M
X
ln[p(~xmi |j ; ~j )] = argmax
~j
i=1
M
X
l(~j )
i=1
M
X
~j [ln(p(~xmi |j ; ~j ))] = ~0
(4)
i=1
Distribuci
on gaussiana con media y varianza desconocida
1
2 (xk 1 )
1 )2
212 + (xk2
2
2
Utilizando la condici
on 4, se obtienen las dos ecuaciones que determinan los parametros desconocidos:
M
X
1
(xk 1 ) = 0
2
k=1
M
X
k=1
X (xk 1 )2
1
+
=0
22
222
k=1
M
1 X
xk
M
k=1
(5)
M
1 X
2
(xk
)2
=
M
k=1
~ =
~xk
M
= 1
k=1
M
X
(6)
(~xk
~)(~xk
~)
k=1
Resultados y An
alisis
3.1
Base de datos
La base de datos utilizada en este trabajo corresponde a Wine Quality Data Set, la cual forma parte del
UC Irvine Machine Learning Repository. La base de datos contiene 11 caractersticas fisicoqumicas
medidas para cada muestra de vino.
a) En general, una base de datos se divide en 2 subconjuntos: conjunto de entrenamiento y conjunto de test o prueba. A su vez, el conjunto de entrenamiento se puede dividir, dejando un
subconjunto para el ajuste de par
ametros y el otro como un conjunto de validacion.
El conjunto de entrenamiento se utiliza para dise
nar o ajustar los parametros de alg
un sistema
de aprendizaje, como un clasificador bayesiano o una red neuronal. Por ejemplo, si el clasificador
se basa en la funci
on de probabilidad de las muestras, los parametros de ajuste seran el vector
de medias y la matriz de covarianza, o la altura de los histogramas, dependiendo del enfoque
que se utilice. En el caso de una red neuronal, los parametros corresponden a los pesos sinapticos.
El conjunto de validaci
on se utiliza para comparar la performance o rendimiento de los clasificadores candidatos y decidir as con cual quedarse.
Finalmente, el conjunto de prueba se utiliza para obtener las caractersticas o rendimiento del
clasificador elegido. Si el clasificador funciona muy bien para el conjunto de entrenamiento, pero
mal para el conjunto test, es muy probable que exista un sobreajuste de datos en la etapa de
dise
no.
b) Para la base de datos completa, se pudo observar que el porcentaje de cada clase corresponde
PT into 49% y PBlanco 51%, para las clases Tinto y Blanco, respectivamente. El c
odigo
en Parte1.m realiza lo solicitado, generando aleatoriamente los conjuntos de entrenamiento y
test, siempre cumpliendose la proporcion que estas clases tienen en la base de datos completa.
3
3.2
a) La aproximaci
on Naive Bayes permite obtener de una manera mas simple las verosimilitudes
para cada clase. Dado que ~x es un vector de caractersticas, las verosimilitudes son distribuciones conjuntas. Si se adopta un enfoque discretizado (uso de histogramas) y la cantidad de
caractersticas consideradas es N , se requiere un histograma de dimension N para aproximar la
verosimilitud de las muestras. La aproximacion Naive Bayes se basa en asumir independencia
entre las caractersticas (variables aleatorias), de modo que la verosimilitud corresponde a la
pitatoria de las distribuciones marginales (i.e. para cada caracterstica por separado). De este
modo, se requieren N histogramas de dimension 1 dada una clase, simplificando el problema.
b) La funcion implementada display hist parte2(Nbins).m entrega los 22 histogramas (11 por
cada clase) que deben calcularse, pidiendo como entrada el n
umero de bins a considerar. El
conjunto de entrenamiento considerado corresponde al utilizado en todo el desarrollo de la tarea.
En este punto, es necesario hacer una observacion respecto a las muestras de la caracterstica
2. Existen 4 mediciones que se escapan notoriamente del valor que toman en general las dem
as
muestras. Estos valores corresponden a 1185, 1035, 1115 y 1025[g/L], mientras que el resto de
las muestras no superan los 5[g/L]. Mas a
un, los lmites legales de esta caracterstica (Volatile
acidity) en U.S. corresponde a 1.2[g/L] para el vino tinto y 1.1[g/L] para el vino blanco [2]. Dado
lo anterior, si alguna de estas mediciones aparece en el conjunto de entrenamiento, se cambia
dicho valor por el de la media emprica de las muestras (obviamente sin considerar estas malas
mediciones).
c) La seccion Evaluate test set and Performance del codigo en parte2.m calcula las verosimilitudes para cada muestra, buscando primero el bin en el que se encuentra cada una, tanto para
los histogramas de la clase Tinto como para los de la clase Blanco.
Cuando alguna muestra se encuentra fuera del rango considerado por los histogramas de entrenamiento (bin cero), esta queda asociada con una probabilidad cero. Esta consideracion no
es tan alejada de la realidad, dado que los histogramas poseen colas muy cercanas cero.
Finalmente, las verosimilitudes para cada vector muestra dado clase Tinto se encuentran en el
vector likelihood givenR, mientras que el vector likelihood givenW contiene las verosimilitudes
dado clase Blanco (primero se debe correr el script Parte2.m).
d) El script Parte2.m contiene todo lo solicitado en la parte 2 de la tarea, para finalmente entregar
un grafico de la curva ROC. La figura 1 muestra la curva ROC para el clasificador Naive Bayes,
considerando 20 bins para cada histograma.
e) En primer lugar, se ha considerado el mismo n
umero de bins para cada histograma, tomando el
maximo valor de cada caracterstica (en conjunto de entrenamiento) como el inicio del u
ltimo
bin. De esta forma, el vector rango se obtiene con la funcion de Matlab linspace(a,b,N).
La importancia de los histogramas radica en su aproximacion como funcion de probabilidad para
cada caracterstica. Por lo mismo, el histograma debe tener la forma de la distribucion a aproximar. El siguiente an
alisis se basa en comparar los histogramas para la caracterstica 1, dada
la clase Tinto, con la pdf emprica, obtenida mediante la funcion de Matlab ksdensity(muestras).
La figura 2 muestra que una cantidad de bins muy peque
na no alcanza para una buena aproximacion, dado que solo dos bins (en los que se concentra toda la informacion) no bastan para
representar la forma cuasi-gaussiana de la pdf.
Por otro lado, la figura 3 muestra que una cantidad muy grande de bins tampoco aproxima
de buena manera la distribuci
on, puesto que existen bins que deberan tener un valor mayor
del que poseen. Especficamente, si se considera la mitad creciente de la pdf, las probabilidades
4
0.9
0.8
TPR
0.7
0.6
0.5
0.4
0.1
0.2
0.3
0.4
0.5
0.6
0.7
FPR
Figura 1: Curva ROC para enfoque Naive Bayes, considerando 20 bins en histogramas.
o cuentas normalizadas de los bins tambien deberan presentar un crecimiento monotono; sin
embargo, hay bins que otorgan un crecimiento irregular o no monotono. Esto se debe a que la
cantidad de muestras es muy poca para la cantidad de bins que se usa.
Por u
ltimo, la figura 4 muestra una mejor aproximacion que los casos anteriores. Luego, se
desprende que la cantidad de bins no debe ser muy peque
na ni muy grande; debe ser ajustado
en un valor intermedio que, de hecho, dependera de la cantidad de muestras que se posee.
0.7
normalized counts
0.6
0.5
0.4
0.3
0.2
0.1
0
10
12
14
16
18
20
Figura 2: Comparaci
on histograma fixed acidity clase Tinto con pdf emprica, considerando 4 bins.
normalized counts
0.25
0.2
0.15
0.1
0.05
10
15
Figura 3: Comparaci
on histograma fixed acidity clase Tinto con pdf emprica, considerando 60 bins.
Normalized histogram feature 1 given Red wine class
0.4
Normalized histogram 10 bins
empirical pdf
0.35
normalized counts
0.3
0.25
0.2
0.15
0.1
0.05
0
10
12
14
16
Figura 4: Comparaci
on histograma fixed acidity clase Tinto con pdf emprica, considerando 10 bins.
El analisis anterior concuerda con el rendimiento que se alcanza considerando dichas cantidades
de bins. La figura 5 compara las curvas ROC obtenidas para 4, 10 y 60 bins.
3.3
Modelo Gaussiano
1
n
2
(2) ||
1
2
t 1 (~
x~
u)
e 2 (~x~u)
(7)
donde
~ = E[~x] es el vector media y es la matriz de covarianza, definida como:
ij = E[(xi i )(xj j )]
(8)
0.9
0.8
TPR
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
FPR
0.95
0.9
TPR
0.85
0.8
0.75
0.7
0.65
0.1
0.2
0.3
0.4
0.5
0.6
0.7
FPR
Figura 6: Curva ROC para clasificador bayesiano, considerando un enfoque gaussiano multivariante.
3.4
Comparaci
on
a) La figura 7 muestra las curvas ROC obtenidas para ambos enfoques, donde se ha considerado
20 bins para el modelo de histogramas.
ROC Curve Naive Bayes and MD Gaussian Model
1
0.9
Naive Bayes
MD Gaussian
0.8
0.7
TPR
0.6
0.5
0.4
0.3
0.2
0.1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
FPR
Figura 7: Curvas ROC para clasificador bayesiano, considerando enfoque de histogramas (Naive
Bayes) y modelo gaussiano multivariante.
Se puede observar en general un mejor rendimiento para el modelo gaussiano multivariante,
dado que para un F P R fijo, la tasa de verdaderos positivos para dicho modelo es superior a la
conseguida por el enfoque Naive Bayes. A pesar de esto, ambas curvas expresan un desempe
no
deseado, puesto que el codo de estas se ubica en una zona donde la tasa de falsos positivos es
muy baja y la de verdaderos positivos muy alta.
Una de las ventajas que posee el enfoque gaussiano multivariante es la simplicidad en los calculos,
puesto que el entrenamiento se basa en calcular 4 parametros a partir de las muestras (2 por
cada clase), para luego evaluar cada muestra de test en base a 7. Por otro lado, para el enfoque
Naive Bayes se tuvo que calcular 11 histogramas por cada clase, dado que no se asumio ninguna
distribuci
on para la funci
on verosimilitud. Mas a
un, el desempe
no del modelo de histogramas
depende de que estos resulten una buena aproximacion de la pdf en cuestion, para lo cual debe
elegirse una cantidad de bins acorde con el tama
no del conjunto de entrenamiento que se posee.
Por u
ltimo, se pretende realizar un analisis del supuesto de independencia realizado para el
enfoque Naive Bayes. Para ello, se calculo los coeficientes de correlacion muestrales entre caractersticas, para cada clase en el conjunto de entrenamiento. Las tablas 1 y 2 muestran los
resultados, omitiendo la trianguar inferior dada la simetra existente en los coeficientes de correlacion. Se puede apreciar que, en general, los coeficientes son cercanos a cero para ambas
clases. Los coeficientes mayores a 0.5 estan marcados con rojo, pues indican una correlacion no
menor entre las caractersticas en cuestion. Estos valores altos permiten asegurar la dependencia
entre dichas caractersticas, sin embargo nada puede afirmarse para los valores cercanos a cero.
Esto, pues el teorema indica una implicancia entre independencia y no-correlacion, pero no una
equivalencia. Por lo tanto, para la clase Tinto por ejemplo, caractersticas como 1 y 3, 1 y 8 o
1 y 9 no son una buena aproximaci
on de independencia.
Features
Feat.1
Feat.2
Feat.3
Feat.4
Feat.5
Feat.6
Feat.7
Feat.8
Feat.9
Feat.10
Feat.11
Feat.1
1,000
Feat.2
-0,017
1,000
Feat.3
0,642
-0,047
1,000
Feat.4
0,015
0,045
0,114
1,000
Feat.5
0,105
0,008
0,176
-0,010
1,000
Feat.6
-0,189
-0,033
-0,076
0,185
-0,034
1,000
Feat.7
-0,149
-0,030
0,030
0,245
0,016
0,671
1,000
Feat.8
0,584
0,002
0,266
0,233
0,205
-0,066
0,026
1,000
Feat.9
-0,688
0,067
-0,504
-0,040
-0,243
0,033
-0,090
-0,283
1,000
Feat.10
0,190
-0,023
0,300
-0,039
0,321
0,027
0,050
0,145
-0,214
1,000
Feat.11
-0,055
0,007
0,164
0,111
-0,223
-0,057
-0,178
-0,560
0,189
0,097
1,000
Feat.1
1,000
Feat.2
-0,051
1,000
Feat.3
0,234
-0,164
1,000
Feat.4
0,053
0,055
0,039
1,000
Feat.5
0,035
0,087
0,200
0,062
1,000
Feat.6
-0,036
-0,062
0,076
0,265
0,030
1,000
Feat.7
0,063
0,136
0,070
0,379
0,163
0,645
1,000
Feat.8
0,249
0,008
0,115
0,825
0,242
0,283
0,524
1,000
Feat.9
-0,467
0,001
-0,148
-0,143
-0,107
-0,009
0,010
-0,099
1,000
Feat.10
-0,039
-0,014
0,057
-0,036
0,047
0,110
0,177
0,090
0,131
1,000
Conclusi
on
El modelo de histogramas con la simplificacion Naive Bayes entrega un clasificador con desempe
no aceptable. Lo anterior radica en la curva ROC obtenida, la cual posee una zona donde
las tasas de verdederos positivos y negativos son muy altas (mayor a 96% y 99%, respectivamente).
Los histogramas se utilizan para aproximar la distribucion probabilstica (pdf ) de una caracterstica. La cantidad de bins considerada determina la forma del histograma, ante lo cual se
pudo observar que no puede ser muy peque
na ni muy grande. La cantidad optima de bins ser
a
un n
umero intermedio que dependera de la cantidad de muestras que se tenga.
El modelo gaussiano multivariante otorga un gran desempe
no al clasificador. En la curva ROC
obtenida se observa una zona donde la tasa de verdaderos positivos y negativos es 1.
La implementaci
on del clasificador mediante el enfoque gaussiano multivariante es mas simple,
puesto que el entrenamiento consiste en determinar 2 parametros por clase. Por otro lado, para
el primer modelo utilizado se requirio un histograma por caracterstica, dada una clase.
Feat.11
-0,121
0,063
-0,082
-0,442
-0,330
-0,242
-0,445
-0,805
0,166
-0,068
1,000
Anexos
5.1
Funciones implementadas
References
[1] Richard O Duda, Peter E Hart, and David G Stork. Pattern classification. 2nd. Edition. New
York, 2001.
[2] Davis University of California.
Volatile Acidity.
http://waterhouse.ucdavis.edu/
whats-in-wine/volatile-acidity, 2012. [Online; accessed 12-April-2015].
10