3.1 Aprendizaje Naïve Bayes 2011 (40d)

Page 1

Naïve Bayes

un método de aprendizaje de máquina Mas yo les digo que de toda palabra ociosa que hablen los hombres, de ella darán cuenta en el día del juicio. Jesucristo

1


Aprendizaje Dados los datos (o conjunto de aprendizaje) D={(x1, y1), (x2, y2)... (xm, ym)}

2


Aprendizaje Dados los datos (o conjunto de aprendizaje) D={(x1, y1), (x2, y2)... (xm, ym)} (X11, X12,...X1n) entrada

3


Aprendizaje Dados los datos (o conjunto de aprendizaje) D={(x1, y1), (x2, y2)... (xm, ym)} (X11, X12,...X1n) entrada

salida Clasificación: cuando “y” es discreta Regresión: cuando “y” es continua

Meta: encontrar una hipótesis h en la clase de hipótesis H que haga un buen trabajo de mapeo de x ay 4


La mejor hipótesis Hipótesis deben  Hacer un buen trabajo de descripción de datos

 No sea muy complejo

5


La mejor hipótesis Hipótesis deben  Hacer un buen trabajo de descripción de datos  

Idealmente: h(xi)=yi Numero de errores: E(h, D)

•No sea muy complejo -medida:C(h)

6


La mejor hipótesis Hipótesis deben  Hacer un buen trabajo de descripción de datos  

Idealmente: h(xi)=yi Numero de errores: E(h, D)

•No sea muy complejo -medida:C(h) Minimizar: E(h, D) + α C(h) compensación 7


Aprendizaje como búsqueda Cómo podemos encontrar la hipótesis con el valor mas pequeño de E(h, D) + α C(h) ? Buscando!  Para algunas clases de hipótesis podemos calcular la

dirección óptima de h directamente ! (separadores lineales)  Para otros, se pueden hacer búsquedas locales(gradiente descendente en redes neuronales)  Para algunos espacios de hipótesis estructuradas, construyendo una voraz(codiciosa) (greedy)

8


Naïve Bayes Basada en la regla de Bayes para inferencia probabilística (Rev. Thomas Bayes) Probabilidad de hipótesis basada en evidencia. Selecciona la hipótesis con el máximo de probabilidades después que la evidencia ha sido incorporada.

9


Naïve Bayes Basada en la regla de Bayes para inferencia probabilística (Rev. Thomas Bayes) Probabilidad de hipótesis basada en evidencia. Selecciona la hipótesis con el máximo de probabilidades después que la evidencia ha sido incorporada. El algoritmo es particularmente útil para dominios con muchos atributos. 10


Ejemplo f1

f2

f3

f4

y

0

1

1

0

1

0

0

1

1

1

1

0

1

0

1

0

0

1

1

1

0

0

0

0

1

1

0

0

1

0

1

1

0

1

0

1

0

0

0

0

1

1

0

1

0

1

0

1

1

0 11


Ejemplo f1

f2

f3

f4

y

0

1

1

0

1

•R1 (1,1)=1/5: fracción que representa al

0

0

1

1

1

1

0

1

0

1

atributo 1 cuando esta en on en el subconjunto de todos los ejemplos positivos.

0

0

1

1

1

0

0

0

0

1

1

0

0

1

0

1

1

0

1

0

1

0

0

0

0

1

1

0

1

0

1

0

1

1

0

•R1 (0,1)= 4/5: fracción que representa al atributo 1 cuando esta en off en el subconjunto de todos los ejemplos positivos.

12


Ejemplo f1

f2

f3

f4

y

0

1

1

0

1

•R1 (1,1)=1/5: fracción del atributo 1 en on en

0

0

1

1

1

los ejemplos positivos

1

0

1

0

1

0

0

1

1

1

0

0

0

0

1

1

0

0

1

0

1

1

0

1

0

1

0

0

0

0

1

1

0

1

0

1

0

1

1

0

•R1 (0,1)= 4/5: fracción del atributo 1 en off en los ejemplos positivos

•R1 (1,0)=5/5: fracción del atributo 1 en on en los ejemplos negativos

•R1 (0,0)=0/5: fracción del atributo 1 en off en los ejemplos negativos 13


Ejemplo f1

f2

f3

f4

y

0

1

1

0

1

0

0

1

1

1

1

0

1

0

1

0

0

1

1

1

0

0

0

0

1

1

0

0

1

0

1

1

0

1

0

1

0

0

0

0

1

1

0

1

0

1

0

1

1

0

R1 (1,1)=1/5 R1 (0,1)=4/5 R1 (1,0)=5/5 R1 (0,0)= 0/5 R2 (1,1)= 1/5 R2 (0,1)=4/5 R2 (1,0)= 2/5 R2 (0,0)=3/5 R3 (1,1)= 4/5

R3 (0,1)=1/5

R3 (1,0)= 1/5

R3 (0,0)=4/5

R4 (1,1)= 2/5

R4 (0,1)=3/5

R4 (1,0)= 4/5

R4 (0,0)=1/5

14


Predicci贸n R1 (1,1)=1/5 R1 (0,1)=4/5 R1 (1,0)=5/5 R1 (0,0)= 0/5 R2 (1,1)= 1/5 R2 (0,1)=4/5 R2 (1,0)= 2/5 R2 (0,0)=3/5 R3 (1,1)= 4/5 R3 (0,1)=1/5 R3 (1,0)= 1/5

R3 (0,0)=4/5

R4 (1,1)= 2/5

R4 (0,1)=3/5

R4 (1,0)= 4/5

R4 (0,0)=1/5

hip贸tesis

15


Predicción R1 (1,1)=1/5 R1 (0,1)=4/5 R1 (1,0)=5/5 R1 (0,0)= 0/5 R2 (1,1)= 1/5 R2 (0,1)=4/5 R2 (1,0)= 2/5 R2 (0,0)=3/5 R3 (1,1)= 4/5 R3 (0,1)=1/5 R3 (1,0)= 1/5

R3 (0,0)=4/5

R4 (1,1)= 2/5

R4 (0,1)=3/5

R4 (1,0)= 4/5

R4 (0,0)=1/5

•Nuevo x = <0,0,1,1>

Y=?

•S(1) = R1 (0,1) * R2 (0,1)* R3 (1,1)* R4 (1,1)= 0.205 16


Predicción R1 (1,1)=1/5 R1 (0,1)=4/5 R1 (1,0)=5/5 R1 (0,0)= 0/5 R2 (1,1)= 1/5 R2 (0,1)=4/5 R2 (1,0)= 2/5 R2 (0,0)=3/5 R3 (1,1)= 4/5 R3 (0,1)=1/5 R3 (1,0)= 1/5

R3 (0,0)=4/5

R4 (1,1)= 2/5

R4 (0,1)=3/5

R4 (1,0)= 4/5

R4 (0,0)=1/5

•Nuevo x = <0,0,1,1>

Y=?

Med id Prob a de a de se bilidad r posit ivo

•S(1) = R1 (0,1) * R2 (0,1)* R3 (1,1)* R4 (1,1)= 0.205 17


Predicción R1 (1,1)=1/5 R1 (0,1)=4/5 R1 (1,0)=5/5 R1 (0,0)= 0/5 R2 (1,1)= 1/5 R2 (0,1)=4/5 R2 (1,0)= 2/5 R2 (0,0)=3/5 R3 (1,1)= 4/5 R3 (0,1)=1/5 R3 (1,0)= 1/5

R3 (0,0)=4/5

R4 (1,1)= 2/5

R4 (0,1)=3/5

R4 (1,0)= 4/5

R4 (0,0)=1/5

•Nuevo x = <0,0,1,1> •S(1) = R1 (0,1) * R2 (0,1)* R3 (1,1)* R4 (1,1)= 0.205 • S(0) = R1 (0,0) * R2 (0,0)* R3 (1,0)* R4 (1,0)= 0

18


Predicción R1 (1,1)=1/5 R1 (0,1)=4/5 R1 (1,0)=5/5 R1 (0,0)= 0/5 R2 (1,1)= 1/5 R2 (0,1)=4/5 R2 (1,0)= 2/5 R2 (0,0)=3/5 R3 (1,1)= 4/5 R3 (0,1)=1/5 R3 (1,0)= 1/5

R3 (0,0)=4/5

R4 (1,1)= 2/5

R4 (0,1)=3/5

R4 (1,0)= 4/5

R4 (0,0)=1/5

• Nuevo x = <0,0,1,1> •S(1) = R1 (0,1) * R2 (0,1)* R3 (1,1)* R4 (1,1)= 0.205 • S(0) = R1 (0,0) * R2 (0,0)* R3 (1,0)* R4 (1,0)= 0 •S(1) > S(0) , por tanto predecimos clase 1

19


Algoritmo de aprendizaje J: atributo i: ejemplos

El estimado de los datos para todo j: Rj(1,1)=#(xji =1 ^ yi = 1) / #(yi = 1)

20


Algoritmo de aprendizaje El estimado de los datos para todo j: Rj(1,1)=#(xji =1 ^ yi = 1) / #(yi = 1) Rj(0,1)= 1 - Rj( 1,1)

21


Algoritmo de aprendizaje El estimado de los datos para todo j: Rj(1,1)=#(xji =1 ^ yi = 1) / #(yi = 1) Rj(0,1)= 1 - Rj( 1,1)

Rj(1,0)= #(xji =1 ^ yi = 0) / #(yi = 0) Rj(0,0)=1 - Rj( 1,0)

22


Algoritmo de predicción Dado un nuevo x, Rj(1,1) S(1) =П

Rj(0,1)

si xj = 1 de lo contrario

j

23


Algoritmo de predicción Dado un nuevo x, Rj(1,1) S(1) =П

Rj(0,1)

si xj = 1 de lo contrario

j

S(0) =П

xj

Rj(1,0)

si

=1

Rj(0,0)

de lo contrario

j 24


Algoritmo de predicción Dado un nuevo x, Rj(1,1) Rj(0,1)

S(1) =П

si xj = 1 de lo contrario

j

Rj(1,0)

si

xj

=1

•Salida 1 si S(1) S(0) =П Rj(0,0) de lo contrario> S(0) 25


Algoritmo de predicción Dado un nuevo x, log S(1) =Σ

log Rj(1,1) log Rj(0,1)

si xj = 1 de lo contrario

j

log S(0) =Σ

log Rj(1,0)

si

xj

=1

j

log Rj(0,0) de lo contrario

•Salida 1 si log S(1) > log S(0) Mejor sumar logaritmos que multiplicar pequeñas probabilidades 26


Correcci贸n de Laplace Evita obtener 0 o 1 como respuesta Rj(1,1)=#(xji =1 ^ yi = 1) + 1/ #(yi = 1) +2 Rj(0,1)= 1 - Rj( 1,1)

Rj(1,0)= #(xji =1 ^ yi = 0)+1 / #(yi = 0)+2 Rj(0,0)=1 - Rj( 1,0) 27


Ejemplo con correcci贸n f1

f2

f3

f4

y

0

1

1

0

1

0

0

1

1

1

1

0

1

0

1

0

0

1

1

1

0

0

0

0

1

1

0

0

1

0

1

1

0

1

0

1

0

0

0

0

1

1

0

1

0

1

0

1

1

0

R1 (1,1)=2/7 R1 (0,1)=5/7 R1 (1,0)=6/7 R1 (0,0)= 1/7 R2 (1,1)= 2/7 R2 (0,1)=5/7 R2 (1,0)= 3/7 R2 (0,0)=4/7 R3 (1,1)= 5/7 R3 (0,1)=2/7 R3 (1,0)= 2/7

R3 (0,0)=5/7

R4 (1,1)= 3/7

R4 (0,1)=4/7

R4 (1,0)= 5/7

R4 (0,0)=2/7

28


Predicción con corrección R1 (1,1)=2/7 R1 (0,1)=5/7 R1 (1,0)=6/7 R1 (0,0)= 1/7 R2 (1,1)= 2/7 R2 (0,1)=5/7 R2 (1,0)= 3/7 R2 (0,0)=4/7 R3 (1,1)= 5/7 R3 (0,1)=2/7 R3 (1,0)= 2/7

R3 (0,0)=5/7

R4 (1,1)= 3/7

R4 (0,1)=4/7

R4 (1,0)= 5/7

R4 (0,0)=2/7

• Nuevo x = <0,0,1,1> •S(1) = R1 (0,1) * R2 (0,1)* R3 (1,1)* R4 (1,1)= 0.156 • S(0) = R1 (0,0) * R2 (0,0)* R3 (1,0)* R4 (1,0)= 0.017 •S(1) > S(0) , por tanto predecimos clase 1

29


O (or) Exclusivo f1

f2

f3

f4

y

0 1 1 0 1 1 0 1 0 0 1 0 0 1 0 0 1 0 1 0 1 1 1 0 1 0 0 0 1 1

Este algoritmo asume que se puede caracterizar la influencia de cada atributo sobre la clase independientemente. 30


Or Exclusivo f1

f2

f3

f4

y

0 1 0 1 0

R1 (1,1)=2/4 R1 (0,1)=2/4 R1 (1,0)=3/6 R1 (0,0)= 3/6 R2 (1,1)= 2/4 R2 (0,1)=2/4 R2 (1,0)= 3/6 R2 (0,0)=3/6 R3 (1,1)= 2/4 R3 (0,1)=2/4

1 1 1 0 1

R3 (1,0)= 3/6

R3 (0,0)=3/6

R4 (1,1)= 2/4

R4 (0,1)= 2/4

R4 (1,0)= 3/6

R4 (0,0)=3/6

0 1 1 0 1 1 0 1 0 0 1 0 0 1 0

0 0 0 1 1

R es obtenida via conteo y correcci贸n de Laplace 31


Or Exclusivo f1

f2

f3

f4

y

0 1 0 1 0

R1 (1,1)=2/4 R1 (0,1)=2/4 R1 (1,0)=3/6 R1 (0,0)= 3/6 R2 (1,1)= 2/4 R2 (0,1)=2/4 R2 (1,0)= 3/6 R2 (0,0)=3/6 R3 (1,1)= 2/4 R3 (0,1)=2/4

1 1 1 0 1

R3 (1,0)= 3/6

R3 (0,0)=3/6

R4 (1,1)= 2/4

R4 (0,1)= 2/4

R4 (1,0)= 3/6

R4 (0,0)=3/6

0 1 1 0 1 1 0 1 0 0 1 0 0 1 0

0 0 0 1 1

• Para cualquier nueva x •S(1) =0.5 * 0.5 * 0.5 * 0.5 = 0.0625 • S(0) = 0.5 * 0.5 * 0.5 * 0.5 = 0.0625 •Estamos sin base para predecir la salida

32


Inferencia probabilística

(justificación probabilística de los algoritmos) Piense en los atributos de salida como variables randómicas. Aprenda Pr(Y = 1| f1, …fn ) Dado un nuevo ejemplo, calcule su probabilidad como valor 1 Genere respuesta 1 si ese valor es > 0.5, de lo contrario 0

Concéntrese en estimar la distribución de los datos Pr(Y = 1| f1, …fn )

33


Regla de Bayes Genéricamente: 

Pr(A|B )=Pr(B|A)*(Pr(A)/Pr(B))

34


Regla de Bayes Genéricamente: 

Pr(A|B )=Pr(B|A)(Pr(A)/Pr(B))

Específicamente: 

Pr(Y = 1| f1 …fn )=Pr(f1 …fn |Y=1) *(Pr(Y=1)/Pr(f1 …fn ))

35


Algoritmo de aprendizaje Estimación de los datos, para todo j:  R(fj=1/ Y=1) =#(xji =1 ^ yi = 1) / #(yi = 1)  R(fj =0 / Y = 1)= 1 - R( fj=1/ Y=1)

 R(fj=1/Y=0)= #(xji =1 ^ yi = 0) / #(yi = 0)  R(fj=0/Y=0)=1 - R(fj = 1 / Y=0) 36


Algoritmo de predicción Dado un nuevo x, 

S(x1…xn/Y=1) =Π R(fj = 1/ Y=1)

si xj =1

R(fj = 0 / Y=1) de otro modo 

S(x1…xn/Y=0)= Π

R(fj = 1 / Y =0) si xj = 1 R(fj = 0 / Y = 0) de otro modo

Salida será 1 si  S(x1…xn/Y=1) > S(x1…xn /Y=0) 37


Tomado del Instituto Tecnol贸gico de Massachusetts www.owc.mit.edu 6.034 Artificial Intelligence 2004 Archivo: ch5-mach1.pdf

38


Ejercicios: Dado el siguiente conjunto de datos, organice la matriz booleana, encuentre la hipótesis con la técnica Naive Bayes con la corrección de Laplace y prediga la nueva entrada Tipo de tierra

inclinación

precipitación

siembra

10cc

Época del año invierno

arenoso

40°

arcilloso

20°

10cc

verano

si

arcilloso

40°

10cc

invierno

no

arenoso

20°

10cc

verano

si

arcilloso

20°

15cc

verano

no

arenoso

50°

10cc

verano

si

arenoso

18

15cc

invierno

no

39


Ejercicio con Árbol de decisión Responda el siguiente problema.

0

1

1

0

1 2

3

4

5

1

1

6

7

0

8

9

1

10 11 12

Cual de los tres siguientes evaluaciones usted escogería como el nodo raíz en un árbol de decisión? X <= 1.5 x<= 5 x<=10.5 Justifique su respuesta.

40


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.