APRENDIZAJE AUTOMATIZADO
(MACHINE LEARNING)
1er Semestre 2008

Práctico 3: Clasificador Naive-Bayes

Programas y archivos necesarios : Programa base del clasificador bayesiano y ejemplos de archivos de configuraciones.

Trabajos a realizar:

a) Complete el programa nb_n.c (o haga uno propio) para aproximar p(a|C)  por una Gaussiana (a es un atributo y C una clase). El programa debe ajustar los dos parámetros de la función (la media y la desviación estándar) en forma independiente para cada clase y cada atributo.

b) Dimensionalidad: Repita el punto 7 del Práctico 1, usando el Clasificador Bayesiano con Gaussianas del punto a). Genere una gráfica incluyendo también los resultados de redes y árboles.

c) Límites del clasificador: Resuelva el problema de dos-elipses utilizando el Clasificador Bayesiano con Gaussianas. Compare el resultado con el obtenido con redes. Realice una gráfica de la predicción sobre el conjunto de test. Resuelva el problema de las espirales-anidadas, y también compare con el resultado de redes y realice la gráfica. Explique por qué se obtienen esos resultados.

d) Modifique el programa nb_n.c de manera de aproximar ahora p(a|C) por la frecuencia del atributo a en la clase C, es decir, construyendo histogramas. La cantidad de bins que utilice para ello será un parámetro de entrada, que deberá ser optimizado usando un conjunto de validación. Implemente la corrección a la estimación de probabilidades indicada en el punto 6.9.1.1, pág. 179 del libro de Mitchell (con p=1/m). Entregue el programa modificado.
Revisite los problemas de dos-elipses y de espirales-anidadas, usando conjuntos de validación adecuados. Haga un barrido conveniente sobre el número de bins utilizados. Grafique el error porcentual de clasificación en ajuste, validación y test en función de dicho número de bins (hay sobreajuste?). Elija la cantidad óptima de bins y grafique las clasificaciones en test. Compárelos con los resultados del punto c).

e) Opcional: Implemente el método de discretización recursiva por mínima entropía discutida en el punto 3.3 de este paper. Entregue el programa. Aplíquelo al problema dos-elipses. Interprete los resultados.

En todos los items del práctico discutir los puntos o resultados que considere conveniente.