Modelos gráficos

Anuncio
2016-2017
Aprendizaje Automático
5. Modelos gráficos
Francisco Casacuberta Nolla
([email protected])
Enrique Vidal Ruiz
([email protected])
Departament de Sistemas Informàtics i Computació (DSIC)
Universitat Politècnica de València (UPV)
Septiembre, 2016
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.1
Index
◦ 1 Introducción a los modelos gráficos . 1
2 Redes bayesianas . 6
3 Independencia condicional . 14
4 Inferencia en redes bayesianas . 23
5 Campos de Markov aleatorios . 33
6 Aprendizaje de modelos gráficos . 40
7 Bibliografı́a y notación . 51
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.2
Modelos gráficos (MG)
• Los MGs y concretamente las redes bayesianas fundamentan la aproximación
probabilı́stica a los Sistemas Inteligentes. Uno de los más famosos impulsores
fue Judea Pearl ganador del “ACM A.M. Turing Award” en 2011.
• Concepto: Representación compacta de distribuciones de probabilidad conjunta
mediante grafos dirigidos (redes bayesianas) y no dirigidos (campos aleatorios
markovianos) (teorı́a de grafos + teorı́a de la probabilidad). Los MGs generalizan
a las redes neuronales y a los modelos de Markov ocultos entre otros.
• Aspectos:
– Inferencia: deducir distribuciones de probabilidad a partir de otras dadas
– Aprendizaje: obtener el modelo probabilı́stico a partir de observaciones
• Aplicaciones:
– Diagnóstico médico, de fallos, ...
– Visión por computador: segmentación de imágenes, reconstrucción 3D,
análisis de escenas
– Procesado del lenguaje natural: reconocimiento del habla, extracción de
información textual, traducción automática, ...
– Robótica: planificación, localización, ...
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.3
PÁGINA INTENCIONADAMENTE EN BLANCO
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.4
Algunos conceptos sobre la teorı́a de las probabilidades
Probabilidad
X
P (x) :
P (x) = 1
x
Probabilidad conjunta
P (x, y) :
XX
x
Probabilidad condicional
Marginales
X
P (x) =
X
P (x | y) :
x
P (x, y),
P (x, y) = 1
y
P (x | y) = 1 ∀y
P (y) =
y
P (x, y)
x
Regla de la probabilidad conjunta
Regla de la cadena
X
P (x, y) = P (x) P (y | x)
P (x1, x2, . . . , xN ) = P (x1)
N
Y
i=2
Regla de Bayes
P (y | x) P (x) = P (y) P (x | y)
P (xi | x1, . . . , xi−1)
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.5
Factorización de distribuciones conjuntas
Una distribución conjunta sobre tres variables puede expresarse exactamente
mediante seis factorizaciones completas diferentes:
P (a, b, c) = P (a) P (b | a) P (c | a, b) = P (a) P (c | a) P (b | a, c)
= P (b) P (a | b) P (c | a, b) = P (b) P (c | b) P (a | b, c)
= P (c) P (a | c) P (b | a, c) = P (c) P (b | c) P (a | b, c)
Estas factorizaciones se pueden representar mediante grafos dirigidos acı́clicos:
a
a
b
b
c
Septiembre, 2016
b
c
b
c
a
c
c
c
a
a
b
b
a
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.6
Index
1 Introducción a los modelos gráficos . 1
◦ 2 Redes bayesianas . 6
3 Independencia condicional . 14
4 Inferencia en redes bayesianas . 23
5 Campos de Markov aleatorios . 33
6 Aprendizaje de modelos gráficos . 40
7 Bibliografı́a y notación . 51
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.7
Redes bayesianas: ejemplos
Si hay dependencias inexistentes (o despreciables), la factorización exacta
(o aproximada) de una distribución conjunta puede ser incompleta, lo que
queda reflejado en el grafo correspondiente. Ejemplos:
P (a, b, c) =
P (a) P (b) P (c | a, b)
P (a, b, c, d, e, f ) =
P (a) P (b) P (c) P (d | b, c) P (e | a, b, d) P (f | a, c)
a
a
c
b
d
b
c
f
e
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.8
Redes bayesianas: un ejemplo detallado
Aspersor
P (A | L)
Lluvia (L)
s
n
P (L)
Aspersor (A)
f
p
0.01 0.99
0.40 0.60
Lluvia
Lluvia (L)
s
n
0.2 0.8
Césped
Aspersor
Césped
Lluvia
f:
p:
m:
r:
s:
n:
P (C | A, L)
funciona
parado
mojado
reseco
sı́ llueve
no llueve
Lluvia (L)
s
s
n
n
Aspersor (A)
f
p
f
p
Césped (C)
m
r
0.99 0.01
0.80 0.20
0.90 0.10
0.00 1.00
Distribución conjunta: P (L, A, C) = P (L) P (A | L)P (C | L, A)
Ejercicio: calcular P (L = l, A = a, C = c),
Septiembre, 2016
l ∈ {s, n}, a ∈ {f, p}, c ∈ {m, r}.
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.9
Un ejemplo detallado (cont.)
• ¿Cuál es la probabilidad de que llueva si el césped está mojado?
P (L = s | C = m) =
=
=
P (L = s, C = m)
P (C = m)
P
a∈{f,p} P (L = s, A = a, C = m)
P
a∈{f,p},l∈{s,n} P (L = l, A = a, C = m)
0.00198 + 0.1584
0.00198 + 0.288 + 0.1584 + 0.0
= 0.3577
• El césped está mojado. ¿Cuál es la mejor predicción: llueve o no llueve?
arg max P (L = l | C = m) = n
l∈{s,n}
Ejercicio:
a) Calcular P (A = a | L = l, C = c), a ∈ {p, f}, l ∈ {s, n}, c ∈ {m, r}.
b) Llueve y el cesped está mojado.
¿Cuál es la mejor predicción sobre el estado del aspersor?
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.10
Redes bayesianas: otro ejemplo
P (P )
Polución (P)
a
b
0.1
0.9
Polución
Cáncer de
pulmón
P (X | C)
Cáncer (C)
p
n
Rayos X (X)
p
d
n
0.70 0.20 0.10
0.10 0.10 0.80
Polución
Fumador
Disnea
Rayos X
Cáncer
Septiembre, 2016
Fumador
a:
b:
s:
n:
s:
n:
p:
d:
n:
p:
n:
Disnea
Rayos X
alto
bajo
sı́
no
sı́
no
positivo
dudoso
negativo
positivo
negativo
Polución (P)
a
a
b
b
P (F )
Fumador (F)
s
n
0.3
0.7
P (D | C)
Disnea (D)
s
n
Cáncer (C)
p
0.65 0.35
n
0.30 0.70
P (C | P, F )
Cáncer (C)
Fumador (F)
p
n
s
0.08
0.92
n
0.05
0.95
s
0.03
0.97
n
0.001 0.999
Ejercicio: ¿Cuál es la probabilidad de que un paciente
no fumador no tenga cáncer si la radiografı́a ha dado un
resultado negativo pero sufre de disnea?
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.11
Redes bayesianas
Una red bayesiana es un grafo dirigido y acı́clico (“directed acyclic graph”
-DAG-) donde:
• Los nodos representan:
– variables aleatorias (discretas o contı́nuas)
– distribuciones de probabilidad condicional para cada variable xi dados
los valores de las variables asociadas a los nodos padres a(xi)
• Los arcos representan dependencias entre las variables
Una red bayesiana con nodos x1, . . . , xD define una distribución de
probabilidad conjunta:
P (x1, . . . , xD ) =
D
Y
i=1
Septiembre, 2016
P (xi | a(xi))
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.12
Algunas redes bayesianas simples
• El clasificador de Bayes (x ∈ Rd y c ∈ {1, . . . , C}):
P (c)
c
P (x, c) = P (c) P (x | c)
P (x | c)
x
P (x, c)
P
c P (x, c)
P (c | x) =
• Modelos naive-Bayes (xi ∈ R con 1 ≤ i ≤ d y c ∈ {1, . . . , C}):
c
P (c)
P (x1, . . . , xd, c) = P (c)
xd
x1
P (x1 | c)
d
Y
i=1
P (xi | c)
P (xd | c)
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.13
Otro ejemplo de red bayesiana: modelo oculto de Markov
P(q |q )
2 2
P(q |q )
1 1
P(x|q ) P(q |q )
1
2 1
q
1
P(X |Q ) P(X |Q )
1 1
2 2
X1
X2
P(X |Q )
3 3
X3
P(X |Q )
4 4
X4
P(x|q )
2
q2
Σ = {a, b, c}, x ∈ Σ
Q = {q1, q2}
Q
1
P(Q )
1
Q
2
P(Q |Q )
2 1
Q
3
P(Q |Q )
3 2
Q
4
P(Q |Q )
4 3
Las variables aleatorias Qi toman valores en Q y las Xi en Σ, 1 ≤ i ≤ 4.
Probabilidad conjunta de la red bayesiana:
P (X1 X2 X3 X4, Q1 Q2 Q3 Q4) =
P (Q1) P (X1 | Q1) P (Q2 | Q1) P (X2 | Q2) P (Q3 | Q2) P (X3 | Q3) P (Q4 | Q3) P (X4 | Q4)
Probabilidad de generar la cadena “aabc”:
X
P (X1 = a, X2 = a, X3 = b, X4 = c) =
P (X1 = a, X2 = a, X3 = b, X4 = c, Q1 = r1, Q2 = r2, Q3 = r3, Q4 = r4)
r1 ,r2 ,r3 ,r4 ∈Q
O sea, la suma de probabilidades de generar “aabc” mediante todas las secuencias de 4 estados.
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.14
Index
1 Introducción a los modelos gráficos . 1
2 Redes bayesianas . 6
◦ 3 Independencia condicional . 14
4 Inferencia en redes bayesianas . 23
5 Campos de Markov aleatorios . 33
6 Aprendizaje de modelos gráficos . 40
7 Bibliografı́a y notación . 51
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.15
Independencia condicional
Se dice que a es condicionalmente independiente de b
dado c (o también que a está D-separado de b por c, y se
denota como: a b | c) si:
P (a | b, c) = P (a | c) ⇔ P (a, b | c) = P (a | c)P (b | c)
Se dice que a es incondicionalmente independiente de b
(y se denota como: a b | ∅) si:
P (a, b) = P (a) P (b)
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.16
Independencia in/condicional: estructuras tı́picas de RBs (I)
• Caso 1: ¿Cuál es la relación entre a y b?
P (a, b, c) = P (a)P (c | a)P (b | c)
c
a
b
b
P
c P (a)P (c
| a)P (b | c)
En general P (a, b) 6= P (a)P (b) ⇒ a / b | ∅
P (a, b | c) =
c
a
P (a, b) =
P (a, b, c) P (a)P (c | a)P (b | c)
=
P (c)
P (c)
b|c
= P (a | c)P (b | c) ⇒ a
El nodo c es cabeza-con-cola con respecto al camino desde a a b via c: Dos
nodos a y b conectados via un nodo c cabeza-con-cola son independientes
condicionalmente si c está dado (nodo c bloquea al camino desde a a b).
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.17
Independencia in/condicional: estructuras tı́picas de RBs (II)
• Caso 2: ¿Cuál es la relación entre a y b?
P (a, b, c) = P (a | c)P (b | c)P (c)
c
P (a, b) =
a
b
P
c P (a
| c)P (b | c)P (c)
En general P (a, b) 6= P (a)P (b) ⇒ a / b | ∅
c
a
P (a, b, c)
= P (a | c)P (b | c) ⇒ a
P (c)
b|c
P (a, b | c) =
b
El nodo c es cola-con-cola con respecto a el camino desde a a b via c:
Dos nodos a y b conectados via un nodo c cola-con-cola son independientes
condicionalmente si c está dado, (nodo c bloquea al camino desde a a b).
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.18
Independencia in/condicional: estructuras tı́picas de RBs (III)
• Caso 3: ¿Cuál es la relación entre a y b?
P (a, b, c) = P (a)P (b)P (c | a, b)
a
b
P (a, b) =
P
c P (a)P (b)P (c
a
b
P (a, b | c) =
b|∅
= P (a)P (b) ⇒ a
c
| a, b)
P (a, b, c) P (a)P (b)P (c | a, b)
=
P (c)
P (c)
En general P (a, b | c) 6= P (a | c)P (b | c) ⇒ a / b | c
c
El nodo c es cabeza-con-cabeza con respecto al camino desde a a b via c: Dos
nodos a y b conectados via un nodo c cabeza-con-cabeza no son independientes
condicionalmete si c está dado, pero a y b sı́ son incondicionalmente
independientes si c es desconocido.
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.19
Independencia conditional e inconditional: Resumen
Dirección causal: a
b
c
Septiembre, 2016
P (a, b | c) = P (a | c)P (b | c)
pero en general P (a, b) 6= P (a)P (b)
b
a
b | c, a / b | ∅
Estructura en V: a / b | c, a
b|∅
a
Causa común: a
c
P (a, b | c) = P (a | c)P (b | c)
pero en general P (a, b) 6= P (a)P (b)
a
b | c, a / b | ∅
b
c
En general P (a, b | c) 6= P (a | d)P (b | c)
pero P (a, b) = P (a)P (b)
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.20
Independencia condicional: Ejemplo (I)
• B es el estado de la baterı́a (cargada B = 1 o descargada B = 0)
• C es el estado del depósito de combustible (lleno C = 1 o vacı́o C = 0)
• I es el estado del indicador eléctrico del combustible (lleno I = 1 o vacı́o I = 0)
P (B = 1) = P (C = 1) = 0.9
B
C
P (I = 1 | B = 1, C = 1) = 0.8
P (I = 1 | B = 1, C = 0) = 0.2
I
P (I = 1 | B = 0, C = 1) = 0.2
P (I = 1 | B = 0, C = 0) = 0.1
P (B, C, I) = P (B) P (C) P (I | B, C)
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.21
Independencia condicional: Ejemplo (II)
B
I
B
1
1
0
0
C
1
0
1
0
1
0.8
0.2
0.2
0.1
0
0.2
0.8
0.8
0.9
1
0.9
B
C
B
I
C
1
0.9
C
0
0.1
0
0.1
I
P (B, C, I) = P (B) P (C) P (I | B, C)
Si no tenemos información sobre I ¿cuál es la probabilidad conjunta de B y C ?:
=
=
P (B, C, I = 0) + P (B, C, I = 1)
P (B) P (C) P (I = 0 | B, C) + P (I = 1 | B, C) = P (B) P (C) ⇒ B
C|∅
P (B, C)
Supongamos que vemos I = 0, ¿Cuál es la probabilidad P (B = 0, C = 0 | I = 0)?
P (B = 0) P (C = 0) P (I = 0 | B = 0, C = 0)
= 0.02857
b,c∈{0,1} P (B = b) P (C = c) P (I = 0 | B = b, C = c)
P
c∈{0,1} P (B = 0) P (C = c) P (I = 0 | B = 0, C = c)
P (B = 0 | I = 0) = P
= 0.25714
b,c∈{0,1} P (B = b) P (C = c) P (I = 0 | B = b, C = c))
P
b∈{0,1} P (B = b) P (C = 0) P (I = 0 | B = b, C = 0)
P (C = 0 | I = 0) = P
= 0.25714
b,c∈{0,1} P (B = b) P (C = c) P (I = 0 | B = b, C = c))
P (B = 0, C = 0 | I = 0) = P
P (B = 0, C = 0 | I = 0) = 0.02857 6= P (B = 0 | I = 0) P (C = 0 | I = 0) = 0.06612 ⇒ B / C | I
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.22
Independencia condicional: Ejemplo (III)
I
B
1
1
0
0
C
1
0
1
0
1
0.8
0.2
0.2
0.1
0
0.2
0.8
0.8
0.9
B
1
0.9
B
1
0.9
B
0
0.1
C
B
C
I
I
C
0
0.1
C
I
P (B, C, I) = P (B) P (C) P (I | B, C)
• Conocido I = 0 pero no B:
P (C = 0 | I = 0) = · · · = 0.25714 > P (C = 0) = 0.1
es decir, C depende de I.
• Conocidos B = 0 y I = 0:
P (C = 0 | I = 0, B = 0) = · · · ≈ 0.111 < P (C = 0 | I = 0) = 0.25714
es decir C depende de B si se conoce I.
• Conocido B = 0 pero no I:
P (C = 0 | B = 0) = · · · = 0.1 = P (C = 0)
es decir, C no depende de B si no se conoce I.
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.23
Index
1 Introducción a los modelos gráficos . 1
2 Redes bayesianas . 6
3 Independencia condicional . 14
◦ 4 Inferencia en redes bayesianas . 23
5 Campos de Markov aleatorios . 33
6 Aprendizaje de modelos gráficos . 40
7 Bibliografı́a y notación . 51
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.24
Inferencia con redes bayesianas
• En general, el problema consiste en calcular la probabilidad a posteriori de alguna
variable x a partir de las distribuciones conjuntas asociadas a una RB, dada alguna
evidencia e (como valores dados de alguna otra variable) y sin importar los valores
de resto de las variables f :
P (x | e) =
X
X
P (x, e)
con P (e) =
P (x, e, f ) y P (x, e) =
P (x, e, f )
P (e)
x,f
f
• El objetivo es calcular eficientemente P (e) y P (x, e)
• Por ejemplo: Sea P (x1, x2, x3, x4) una distribución conjunta dada por
P (x1, x2, x3, x4) = P (x2)P (x1 | x2)P (x3 | x2)P (x4 | x3)
y se pretende calcular P (x3). Si xi ∈ X para i = 1, 2, 3 verifica que |X| = n
P
– P (x3) = x1,x2,x4 P (x2)P (x1 | x2)P (x3 | x2)P (x4 | x3) ⇒ O(n3) operaciones.
P
P
P
– P (x3) = x2 P (x2)P (x3 | x2) x1 P (x1 | x2) x4 P (x4 | x3)
P
= x2 P (x2)P (x3 | x2) ⇒ O(n) operaciones.
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.25
Inferencia con redes bayesianas
Situaciones donde es útil calcular las probabilidades a-posteriori:
• Predicción: ¿Cuál es la probabilidad de observar un sı́ntoma sabiendo que se
tiene una determinada enfermedad?
• Diagnóstico: ¿Cuál es la probabilidad de que una determinada enfermedad
sea un diagnóstico correcto dados algunos sı́ntomas?
En RB, la dirección de los enlaces entre variables no restringe el tipo de preguntas
que se pueden hacer.
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.26
Tipos de redes bayesianas
La estructura de una Red Bayesiana puede permitir ciertas factorizaciones
sistemáticas en los cálculos asociados a la inferencia.
Dos tipos de estructura adimiten factorizaciones eficientes: cadena y (poli-)árbol.
Cadena
Árbol
Grafo (DAG)
Poli-árbol
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.27
Inferencia en una cadena
xi
x i+1
x n-1
Ex+
n
xn
x n+1
x f-1
xf
Exn
Supongamos que el último xi ∈ Ex+n y el primer xf ∈ Ex−n están dados:
=
=
P (xn, xi, xf )
P (xi, xf )
P (xn) P (xi | xn) P (xf | xn, ZxZi )
P (xi, xf )
(Indep. cond.: xf
P (xn) P (xi) P (xn | xi) P (xf | xn)
) P (x , x )
P(x
n
i f
= α P (xn | xi) P (xf | xn)
xi | xn )
P (xn | xi, xf ) =
(Regla de Bayes)
(α = P (xi)/P (xi, xf ))
• Ejercicio: ¿Qué ocurre si también conocemos xi0 ∈ Ex+n con i0 < i?
• Ejercicio: ¿Qué ocurre si también conocemos xf 0 ∈ Ex−n con f 0 > f ?
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.28
Inferencia en una cadena
Propagación de creencias (“Belief propagation”)
π (xn )
xi
x i+1
x n-1
Ex+
n
λ (x )
n
xn
x n+1
x f-1
xf
Exn
def
P (xn | xi, xf ) = α P (xn | xi) P (xf | xn) = α π(xn) λ(xn)
donde π(xn) y λ(xn) se calculan como:
π(xi) = 1
π(xn) =
λ(xf ) = 1
X
xn−1
P (xn | xn−1) π(xn−1)
λ(xn) =
X
xn+1
P (xn+1 | xn) λ(xn+1)
• Ejercicio: Obtener una expresión para P (xn)
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.29
Inferencia en una cadena (derivación I)
π (xn-1 )
xi
x i+1
Ex+
n
π(xn) = P (xn | xi) =
=
X
xn−1
=
X
xn−1
π (xn )
x n-1
X
xn−1
xn
x n+1
x f-1
xf
Exn
P (xn, xn−1 | xi)
P (xn−1 | xi) P (xn | xi , xn−1) =
X
xn−1
P (xn−1 | xi) P (xn | xn−1)
π(xn−1) P (xn | xn−1)
π(xi) = 1
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.30
Inferencia en una cadena (derivación II)
λ (xn+1 )
λ (x )
n
xi
x i+1
x n-1
Ex+
n
λ(xn) = P (xf | xn) =
=
X
xn+1
=
X
xn+1
X
xn+1
x n+1
xn
x f-1
xf
Exn
P (xf , xn+1 | xn)
P (xn+1 | xn) P (xf | xn, xn+1) =
X
xn+1
P (xn+1 | xn) P (xf | xn+1)
P (xn+1 | xn) λ(xn+1)
λ(xf ) = 1
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.31
Inferencia en un árbol
ui
π x (ui )
λ x(uj i )
λ y (xj)
E+xj
j
xj
k
π y (x j)
k
y
k
E-xj
Para calcular P (xj | Ex+j , Ex−j ) = α π(xj ) λ(xj )
λ(xj ) =
π(xj ) =
X
ui
Septiembre, 2016
m
Y
k=1
λyk (xj ) con λyk (xj ) =
X
yk
λ(yk ) P (yk | xj )
P (xj | ui) πxj (ui) con πxj (ui) = α
Y
j 0 6=j
λxj 0 (ui) π(ui)
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.32
Inferencia en otros tipos de grafos
• Poli-arboles (“Polytrees”). Los nodo pueden tener múltiples
padres, pero solo puede existir un camino único entre cualquier
par de nodos: una generalización del algoritmo sobre un árbol.
• Grafos generales. Inferencia aproximada:
– Métodos variacionales.
– Métodos basados en el muestreo.
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.33
Index
1 Introducción a los modelos gráficos . 1
2 Redes bayesianas . 6
3 Independencia condicional . 14
4 Inferencia en redes bayesianas . 23
◦ 5 Campos de Markov aleatorios . 33
6 Aprendizaje de modelos gráficos . 40
7 Bibliografı́a y notación . 51
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.34
Campos de Markov aleatorios
• Aspectos generales:
– Independencia conditional simplificada
– Asignación compleja de distribuciones de probabilidad.
• Definición de un campo de Markov aleatorio
– Dado un conjunto de variables V = {x1, . . . , xD }
– Un grafo no-dirigido R = (V, E)
– Para un clique C en R (un subgrafo completamente conectado), VC es el
conjunto variables en el clique C:
P (x1, . . . , xD ) =
1 Y
ψC (VC )
Z
∀C∈R
ψC (VC ) es una función potential (estrictamente positiva) y Z es un factor
de normalización (función de partición).
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.35
Campos de Markov aleatorios
P (x1, . . . , xD ) =
1 Y
ψC (VC )
Z
∀C∈R
• Las funciones de potencial son de la forma:
ψC (VC ) = exp (−E(VC )) ,
donde E(VC ) es una función de energı́a. Por lo tanto,
X
1
P (x1, . . . , xD ) = exp −
E(VC )
Z
∀C∈R
!
• Un tipo de función de energı́a interesante es el queda definido mediante funciones
lineales generalizadas:
E(VC ) = −
X
θC,k fC,k (VC )
k
• A partir de una red bayesiana se puede construir un campo de Markov aleatorio
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.36
Un ejemplo
Un conjunto x de pı́xeles binarios
xi ∈ {−1, +1}, 1 ≤ i ≤ D
La imagen está corrupta con probabilidad
10% en un conjunto y de pı́xeles binarios
yi ∈ {−1, +1}, 1 ≤ i ≤ D
El objetivo es recuperar la imagen original a partir de la imagen corrupta
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.37
Un ejemplo
(Bishop. Pattern Recognition and Machine Learning. 2006)
• Fuerte correlación entre xi y yi
yi
• Correlación entre xi y xj si los dos pı́xeles son vecinos.
xi
• La función de energı́a (cliques máximos: Cij = (xi, xj ), Ci = (xi, yi) ∀i, j ∈ N (i)):
)
X
X
X
E(VCij ) = −β xi xj
→
E(VC ) = −β
x i xj − ν
xi yi
E(VCi ) = −ν xi yj
i,j
i
∀C∈R
• La distribución conjunta:
P (x1, . . . , xD , y1, . . . , yD ) =
Septiembre, 2016


X
X
1
xi xj + ν
xi yi
exp β
Z
i,j
i
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.38
Un ejemplo
(Bishop. Pattern Recognition and Machine Learning. 2006)
• A partir de la distribución conjunta:
P (x1, . . . , xD , y1, . . . , yD ) =

1
exp β
Z
X
i,j
xi xj + ν
X
i

xiyi
• el objetivo es: (x̂1, . . . , x̂D ) = arg max P (x1, . . . , xD | y1, . . . , yD )
x1 ,...,xD
Esto es:
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.39
Inferencia con campos de Markov aleatorios
• En cadenas: Algoritmo adelante-atrás (”Backward-Forward
algorithm”)
• En árboles: Algoritmo suma-producto
• En grafos generales: Algoritmo de árbol de unión (“Junction
tree algorithms”), algoritmo suma-producto (“Loopy belief
propagation”)
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.40
Index
1 Introducción a los modelos gráficos . 1
2 Redes bayesianas . 6
3 Independencia condicional . 14
4 Inferencia en redes bayesianas . 23
5 Campos de Markov aleatorios . 33
◦ 6 Aprendizaje de modelos gráficos . 40
7 Bibliografı́a y notación . 51
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.41
Aprendizaje de redes bayesianas
• Dada la estructura, aprender las distribuciones de probabilidad a
partir de un conjunto de entrenamiento.
– Métodos basados en la maximización de la verosimilitud
(algoritmo EM -T3-).
– Aprendizaje bayesiano.
• Aprender la estructura a partir de un conjunto de entrenamiento.
– Un problema de selección de modelos: búsqueda en el espacio
de grafos.
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.42
Aprendizaje en redes bayesianas: ejemplo
• B es el estado de la baterı́a (cargada B = 1 o descargada B = 0)
• C es el estado del depósito de combustible (lleno C = 1 o vacı́o C = 0)
• I es el estado del indicador eléctrico del combustible (lleno I = 1 o vacı́o I = 0)
Por simplicidad se asume que las distribuciones asociadas a las variables I y C son
fijas y conocidas y hay que estimar la distribución de B a partir de observaciones.
P (B) = ?
B
C
P (C = 1) = 0.9
P (I = 1 | B = 1, C = 1) = 0.8
P (I = 1 | B = 1, C = 0) = 0.2
I
P (I = 1 | B = 0, C = 0) = 0.1
P (B, C, I) = P (B) P (C) P (I | B, C)
P (I = 1 | B = 0, C = 1) = 0.2
P (B) viene dada por dos valores de probabilidad, p0 = P (B = 0), p1 = P (B = 1).
Por tanto los parámetros a estimar son:
Θ = (p0, p1),
p0 + p1 = 1
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.43
Aprendizaje con observaciones completas
Sea S = {(b1, c1, i1), . . . , (bN , cN , iN ), } un conjunto de observaciones de entrenamiento.
Sean N0 y N1 = N − N0 los números de observaciones en las que b = 0 y b = 1,
respectivamente. Se asume que S está ordenado de forma que bn = 0, 1 ≤ n ≤ N0 y
bm = 1, NN0+1 ≤ m ≤ N . La log-verosimilitud es:
LS (p0, p1)
=
N
X
log P (b = bn, C = cn, I = in)
n=1
=
=
N
X
n=1
N0
X
n=1
log P (b = bn)P (C = cn)P (I = in | B = bn, C = cn)
log p0 +
N
X
log p1 + K = N0 log p0 + N1 log p1 + K
m=N0 +1
donde K incluye los términos independientes de p0, p1. Maximización de LS mediante multiplicadores de Lagrange, como en el ejemplo de estimación de probs. a priori del Tema 3 · · · →
p̂0 =
Ejemplos:
Septiembre, 2016
N0
,
N
p̂1 =
S = {(0, 1, 1), (1, 1, 0)} →
S = {(0, 0, 1), (1, 1, 0)} →
S = {(0, 1, 1), (1, 1, 0), (0, 0, 1)} →
N1
N
p̂0 = 21 , p̂1 =
p̂0 = 12 , p̂1 =
p̂0 = 23 , p̂1 =
1
2
1
2
1
3
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.44
Algoritmo esperanza-maximización (EM) (Recordatorio)
Dada la muestra S = {x1, . . . , xN }y variables latentes {z 1, . . . , z N }.
• Inicialización: t = 1, Θ(1) = arbitrario.
• Iteración hasta la convergencia
– Paso E: A partir de Θ(t) y para todo 1 ≤ n ≤ N ,
q̂n(z n) , P (z n | xn; Θ(t))
– Paso M: Maximización de Q(Θ, q̂) con respecto a Θ
0
Θ(t + 1) = arg max Q (Θ, q̂) = arg max
Θ
Θ
– t=t+1
N X
X
n=1 z n
q̂n(z n) log P (xn, z n | Θ)
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.45
Algoritmo esperanza-maximización (EM)
En el ejemplo, se dispone de observaciones del estado del depósito de combustible
y de lo que marque el indicador del estado de baterı́a, pero no del verdadero
estado de la baterı́a, la muestra incompleta serán los datos observables, S =
{(c1, i1), . . . , (cN , iN )}, (x = (c, i)), las variables latentes, {b1, . . . , bN } (z = b) y los
parámetros p0 y p1 (Θ = (p0, p1)).
• Inicialización: t = 1, p0(1) = arbitrario y p1(1) = 1 − p0(1).
• Iteración hasta la convergencia
– Paso E. A partir de p0(t) y p1(t) y cada muestra 1 ≤ n ≤ N .
– Paso M.
q̂n(b) , P (B = b | C = cn, I = in; p0(t), p1(t))
(p0(t + 1), p1(t + 1)) = arg max Q0(p0, p1, q̂)
p0 ,p1
= arg max
p0 ,p1
– t=t+1
Septiembre, 2016
N X
1
X
n=1 b=0
q̂n(b) log P (C = cn, I = in, B = b | p0, p1)
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.46
Aprendizaje EM con observaciones incompletas: Paso E
En el paso E hay que calcular, para cada observación incompleta, la distribución de
probabilidad de la variable oculta o latente (B) dados los valores conocidos de las
otras dos variables (C e I) y de los parámetros obtenido en la iteración anterior t
(p0(t), p1(t)).
q̂n(b) = P (B = b | C = cn, I = in; p0(t), p1(t))
P (B = b, C = cn, I = in; p0(t), p1(t))
P (C = cn, I = in; p0(t), p1(t))
=
H
HH
P (B = b; p0(t), p1(t)) PH(C)P
(I | B = b, C)
H
H
H
HH
HH
P (B = 0) PH(C)P
(I | B = 0, C) + P (B = 1) PH(C)P
(I | B = 1, C)
H
H
=
pb(t)kbn
p0(t)k0n + p1(t)k1n
=
para b ∈ {0, 1}
Donde: k0n = P (I = in | B = 0, C = cn) y k1n = P (I = in | B = 1, C = cn)
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.47
Aprendizaje EM con observaciones incompletas: paso M
En el paso M hay que maximizar Q0(p0, p1, q̂), definida en base a las esperanzas
calculadas en el paso E.
0
Q (p0, p1, q̂) =
=
=
N X
1
X
n=1 b=0
N X
1
X
n=1 b=0
N
X
q̂n(b) log P (B = b, C = cn, I = in; p0, p1)
q̂n(b) log(P (B = b; p0, p1)P (C = cn)P (I = in | B = b, C = cn))
q̂n(0) log p0 + q̂n(1) log p1 + K = q̄0 log p0 + q̄1 log p1 + K
n=1
Donde,
K=
N X
1
X
n=1 b=0
q̂n(b) log(P (C = cn)P (I = in | B = b, C = cn))
q̄0 =
.
Septiembre, 2016
N
X
n=1
q̂n(0) y q̄1 =
N
X
q̂n(1)
n=1
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.48
Aprendizaje EM con observaciones incompletas: paso M
Maximizar Q0: similar a estimación de probabilidades a priori por máxima
verosimilitud (Tema 3):
• Función de Lagrange:
Λ(p0, p1, β) = Q0(p0, p1, q̂) + β(1 − p0 − p1)
= q̄0 log p0 + q̄1 log p1 + K + β(1 − p0 − p1)
q̄0
∂Λ
= 0 ⇒ p?0 = ;
∂p0
β
• Función dual:
∂Λ
q̄1
= 0 ⇒ p?1 =
∂p1
β
ΛD (β) = K 0 + β − (q̄0 + q̄1) log β = K 0 + β − N log β
Donde K 0 = K + q̄0 log q̄0 + q̄1 log q̄1
• Optimizando la función dual:
dΛD
N
=1−
= 0 ⇒ β? = N
dβ
β
• Solución final: p0(t + 1) , p?0 =
q̄0
q̄1
; p1(t + 1) , p?1 =
N
N
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.49
Aprendizaje EM con observaciones incompletas: ejemplos
Sea S = {(1, 1), (1, 0)} (N = 2):
Paso E: q̂1(0) = 0.2p0(t)/(0.2p0(t) + 0.8p1(t)), q̂1(1) = 0.8p0(t)/(0.2p0(t) + 0.8p1(t)),
q̂2(0) = 0.8p0(t)/(0.8p0(t) + 0.2p1(t)), q̂2(1) = 0.2p0(t)/(0.8p0(t) + 0.2p1(t)).
q̄0 = q̂1(0) + q̂2(0),
q̄0
,
N
Inicializando con p1(1) = 0.9, p0(1) = 0.1:
Paso M:
p0(t + 1) =
q̄1 = q̂1(1) + q̂2(1)
p1(t + 1) =
.
q̄1
N
t
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
p1(t) 0.90 0.83 0.75 0.68 0.62 0.58 0.55 0.53 0.52 0.51 0.51 0.51 0.50 0.50 0.50 0.50
Si ahora las observaciones son S = {(0, 1), (1, 0)}:
1
2
3
4
5
10
20
25
30
35
36
37
38
39
40
41
t
p1(t) 0.90 0.82 0.72 0.61 0.52 0.45 0.28 0.19 0.18 0.18 0.17 0.17 0.17 0.17 0.17 0.17
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.50
Algunos toolkits
• BNT
https://code.google.com/p/bnt
• GMTK
http://melodi.ee.washington.edu/˜bilmes/gmtk/
• GraphLab
http://graphlab.org/toolkits/graphical-models/
• PMTK3 probabilistic modeling toolkit for Matlab/Octave
https://github.com/probml/pmtk
• Software Packages for Graphical Models
http://www.cs.ubc.ca/˜murphyk/Software/bnsoft.html
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.51
Index
1 Introducción a los modelos gráficos . 1
2 Redes bayesianas . 6
3 Independencia condicional . 14
4 Inferencia en redes bayesianas . 23
5 Campos de Markov aleatorios . 33
6 Aprendizaje de modelos gráficos . 40
◦ 7 Bibliografı́a y notación . 51
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.52
Bibliografı́a
Christopher M. Bishop: “Pattern Recognition and Machine Learning”. Springer, 2006.
Septiembre, 2016
DSIC – UPV
Aprendizaje Automático. 2016-2017
Modelos gráficos: 5.53
Notación
• P (x): probabilidad de x
• P (x, y): probabilidad conjunta de x e y
• P (x | y): probabilidad condicional de x dado y
• Para un conjunto de variables VC en un clique C, ψC (VC ) = exp (−E(VC ))
es una función potential donde E(VC ) es una función de energı́a.
• Una función de energı́a lineal: E(VC ) = −
X
θC,k fC,k (VC ) donde fC,k son
k
determinadas funciones que obtienen caracterı́sticas del clique C.
Septiembre, 2016
DSIC – UPV
Descargar