1 APRENDIZAJE PROBABILÍSTICO NAIVE BAYES Bases de Datos Masivas 9 de Noviembre de 2016
2 Razonamiento Probabilístico Es una herramienta de aprendizaje estadístico. Se trata de razonar en un contexto incierto; y la mejor forma de representar la incertidumbre es a través de probabilidades. Como vimos en temas previos vamos a trabajar en aprendizaje a partir de observaciones. Dado un conjunto de entrenamiento d y con un conjunto de hipótesis H, candidatas a ser aprendidas El conjunto de datos d representa una serie de evidencias observadas Las hipótesis de H son modelos probabilísticos de cómo funciona el dominio Instancias de una variable aleatoria D Una distribución de probabilidad
3 Ejemplo Partimos de un dataset como evidencia Variables aleatorias que describen el dominio Las hipótesis serán teorías probabilísticas de cómo funciona el dominio. Nuestros caramelos preferidos tienen un envoltorio donde no es posible determinar el sabor h Los caramelos se 1 : 100% Cereza Cereza guardan en 5 bolsas h 2 : 75% Cereza + 25% Limón diferentes h 3 : 50% Cereza + 50% Limón h Limón 4 : 25% Cereza + 75% Limón h 5 : 100% Limón Dada una nueva bolsa v.a. H denota una nueva bolsa que puede ser de h 1 a h 5 H no es directamente observable Cuando se abre e inspecciona una bolsa se revelan los datos D 1, D 2,..,D n D i es una en una v.a. con valores posibles cereza y limón El objetivo de este sistema es predecir el sabor del siguiente caramelo [ Russell et al. 1996 ]
4 Teorema de Bayes Sea X una muestra de datos (evidencia): se desconoce su clase Sea H la hipótesis de que X pertenece a la clase C La clasificación es para determinar H X): la probabilidad de que la hipótesis se sostenga dada una muestra de las observaciones X H) es la probabilidad a priori, es decir la probabilidad inicial. X va a comer un caramelo, independientemente del sabor, etc. X): Probabilidad de observación de una muestra X H) probabilidad a posteriori, la probabilidad de observar la muestra dado que la hipótesis se sostiene. Dado que X va a comer un caramelo cuál es la probabilidad que sea de Cereza
5 Teorema de Bayes Teniendo en cuenta los datos de entrenamiento X, la probabilidad a posteriori de la hipótesis H, H X), el Teorema de Bayes se denota cómo: Verosimilitud de los datos dada cada una de las hipótesis Probabilidad a priori H X) X H) H) X) Así podemos saber, cuál es la probabilidad de pertenencia de una instancia X a una clase C i si y sólo si la probabilidad C i X) es la más alta entre todas las C k X) para todas las clases de k Dificultad práctica: requiere conocimientos iniciales de muchas probabilidades, costo computacional significativo
6 Clasificación: Naïve Bayes Sea D un conjunto de tuplas de entrenamiento y sus etiquetas de clase asociados, y cada tupla se representada mediante un vector de atributos n-d X = (x 1, x 2,..., x n ) Supongamos que hay m clases C 1, C 2,, C m. La clasificación la haremos a partir de la hipótesis más probable. Máximo a posteriori o hipótesis MAP. Máximo( C i X) ) Esto se puede derivar de teorema de Bayes: C X) i X C ) C ) i i X) Puesto que X) es constante para todas las clases, sólo se busca maximizar: C X) i X C ) C ) i i Principio de independencia condicional
7 Clasificación: Naïve Bayes Calcular X C i ) si el dataset tiene muchos atributos el costo computacional es muy alto. Independencia condicional con respecto a la clase C. Ese es el supuesto naive que se adopta. Los valores de los atributos son independientes dada la clase. X Ci) n x k 1 k Ci) x Ci) x x k es el valor del atributo A k en X Ci)... x Ci) Esto reduce considerablemente el costo de cálculo: sólo cuenta la distribución de clases 1 2 n
8 Clasificación: Naïve Bayes Si A k es categórica, x k C i ) es el nro # de tuplas en C i que tienen valor x k para A k dividido C i, D (# de tuplas of C i in D) Si A k es un valor continuo, x k C i ) se calcula utilizando una distribución Gausiana con media μ desviación estándar σ y x k C i ) es: g ( x ) 1 2 2 ( x,, ) e 2 2 X Ci) g( x,, k C i Ci )
Clasificador Naïve Bayesian: Ejemplo 9 edad ingreso estudiante calificación_crediticia compra_computadora <=30 alto no buena no <=30 alto no excelente no 31 40 alto no buena si >40 medio no buena si >40 bajo si buena si >40 bajo si excelente no 31 40 bajo si excelente si <=30 medio no buena no <=30 bajo si buena si >40 medio si buena si <=30 medio si excelente si 31 40 medio no excelente si 31 40 alto si buena si >40 medio no excelente no Clase: C 1 :compra_computadora = si C 2 :compra_computadora = no Muestra X = (edad <=30, ingresos = medio, estudiante = si, calif_credit. = buena)
10 Ejemplo C i ): compra_computadora = si ) = 9/14 = 0.643 compra_computadora = no ) = 5/14 = 0.357 Calcular X C i ) para cada una de las clases: age = <=30 compra_computadora = si ) = 2/9 = 0.222 age = <= 30 compra_computadora = no ) = 3/5 = 0.6 ingresos = medio compra_computadora = si ) = 4/9 = 0.444 ingresos = medio compra_computadora = no ) = 2/5 = 0.4 estudiante = si compra_computadora = si) = 6/9 = 0.667 estudiante = si compra_computadora = no ) = 1/5 = 0.2 calificación_crediticia = buena compra_computadora = si ) = 6/9 = 0.667 calificación_crediticia = buena compra_computadora = no ) = 2/5 = 0.4 Muestra: X = (age <= 30, ingresos = medio, estudiante = si, calificación_crediticia = buena) X C i ) : X compra_computadora = si ) = 0.222 x 0.444 x 0.667 x 0.667 = 0.044 X compra_computadora = no ) = 0.6 x 0.4 x 0.2 x 0.4 = 0.019 X C i )*C i ) : X compra_computadora = si ) * compra_computadora = si ) = 0.028 X compra_computadora = no ) * compra_computadora = no ) = 0.007 De esta manera, X pertenece a la clase ( compra_computadora = si )
11 Evitar el problema de 0-Pr La predicción con Naïve Bayes requiere que cada una de las probabilidades condicionales no sea cero. De lo contrario la probabilidad predicha será cero: X Ci) n xk k 1 Ci) Por ejemplo, tenemos un dataset de 1000 tuplas, ingresos=bajo (0), ingresos= medio (990), ingresos = alto (10), Se puede usar Laplacian correction (o estimador Laplaciano) Agrega 1 a cada caso Prob(ingresos = bajo) = 1/1003 Prob(ingresos = medio) = 991/1003 Prob(ingresos = alto) = 11/1003 Las estimaciones de probabilidad "corregidas" están próximas a sus contrapartes "no corregidas"
12 Comentarios Ventajas Fácil de implementar Buenos resultados obtenidos en la mayoría de los casos Desventajas Asumir class conditional independence, y por lo tanto la perdida de precisión. En la práctica, existen dependencias entre las variables Por ejemplo, los hospitales: pacientes: Perfil: edad, antecedentes familiares, etc. Síntomas: fiebre, tos, etc., enfermedades: cáncer de pulmón, diabetes, etc. Dependencias entre estos no pueden ser modeladas por un clasificador Naïve Bayes Cómo manejar las dependencias? Redes Bayesianas
20 Referencias Russell, S. J., & Norvig, P. (2004). Inteligencia Artificial: un enfoque moderno. Seguenda Edición. Cap. 20: Métodos estadísticos de aprendizaje. Jiawei Han,Micheline Kamber.Data Mining,Concepts and Techniques- 2 da edición- The Morgan Kaufmann Series in Data Management Systems