inteligencia artificial - redes bayesianasgrafosacíclicosdirigidos cicloenungrafodirigido:camino...

161
Inteligencia Artificial Redes bayesianas Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla CCIA, US Inteligencia Artificial IA 1 / 90

Upload: others

Post on 27-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Inteligencia ArtificialRedes bayesianas

Departamento de Ciencias de la Computacióne Inteligencia Artificial

Universidad de Sevilla

CCIA, US Inteligencia Artificial IA 1 / 90

Page 2: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Repaso de Teoría de Grafos

CCIA, US Inteligencia Artificial IA 2 / 90

Page 3: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Grafos

Grafo no dirigido: u� = (𝑉 , 𝐸)▶ 𝑉 conjunto finito de vértices.▶ 𝐸 ⊆ {{𝑢, 𝑣} | 𝑢, 𝑣 ∈ 𝑉 , 𝑢 ≠ 𝑣} conjunto de aristas.

▶ {𝑢, 𝑣} ∈ 𝐸 lo notaremos por 𝑢 − 𝑣.

Grafo dirigido: u� = (𝑉 , 𝐸)▶ 𝑉 conjunto finito de vértices.▶ 𝐸 ⊆ 𝑉 × 𝑉 conjunto de arcos.

▶ ⟨𝑢, 𝑣⟩ ∈ 𝐸 lo notaremos por 𝑢 → 𝑣.▶ 𝑢 padre de 𝑣 y 𝑣 hijo de 𝑢.▶ pa(𝑣) y ch(𝑣): conjuntos de padres e hijos de 𝑣.

CCIA, US Inteligencia Artificial IA 3 / 90

Page 4: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Grafo no dirigido: ejemplo

A

C D E

B

F G

H

IGrafo no dirigido

A

C D E

B

F G

H

IGrafo dirigido

CCIA, US Inteligencia Artificial IA 4 / 90

Page 5: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Caminos

Vértices 𝑢 y 𝑣 conectados, 𝑢 ∼ 𝑣, si 𝑢 → 𝑣, 𝑣 → 𝑢 o 𝑢 − 𝑣.

▶ Camino de longitud 𝑛 − 1: ⟨𝑣1, … , 𝑣𝑛⟩ con 𝑣𝑖 − 𝑣𝑖+1 o𝑣𝑖 → 𝑣𝑖+1, para todo 𝑖 = 1, … , 𝑛 − 1.

▶ Sendero en un grafo dirigido: ⟨𝑣1, … , 𝑣𝑛⟩ con 𝑣𝑖 ∼ 𝑣𝑖+1,para todo 𝑖 = 1, … , 𝑛 − 1.

▶ 𝑢 ancestro de 𝑣 y 𝑣 descendiente de 𝑢 si existe camino de 𝑢a 𝑣.

▶ an(𝑣) y de(𝑣): conjuntos de ancestros y descendientes de 𝑣.▶ nd(𝑣) = 𝑉 ∖ de(𝑣): conjunto de no descendientes de 𝑣.

CCIA, US Inteligencia Artificial IA 5 / 90

Page 6: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Caminos: ejemplo

A

C D E

B

F G

H

ICamino de A a G

A

C D E

B

F G

H

ISendero de A a G

CCIA, US Inteligencia Artificial IA 6 / 90

Page 7: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Grafos acíclicos dirigidos

Ciclo en un grafo dirigido: camino ⟨𝑣1, … , 𝑣𝑛⟩ de longitud almenos 1 tal que 𝑣1 = 𝑣𝑛.

Grafo acíclico dirigido (DAG): grafo dirigido que no tiene ciclos.

Esqueleto de un DAG: grafo no dirigido que resulta al reemplazartodos los arcos dirigidos por aristas no dirigidas.

CCIA, US Inteligencia Artificial IA 7 / 90

Page 8: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

DAGs: ejemplo

A

C D E

B

F G

H

ICiclo

A

C D E

B

F G

H

IDAG

CCIA, US Inteligencia Artificial IA 8 / 90

Page 9: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico

Orden topológico de los vértices de un DAG u� = (𝑉 , 𝐸):⟨𝑣1, … , 𝑣𝑛⟩ tal que si 𝑣𝑖 → 𝑣j ∈ 𝐸 , entonces 𝑖 < 𝑗 .

Algoritmo para obtener un orden topológico de u�:1: establecer todos los vértices de u� como no marcados2: para 𝑖 desde 1 hasta 𝑛 hacer3: 𝑣𝑖 ← cualquier vértice 𝑣 cuyos padres estén todos

marcados4: marcar 𝑣𝑖5: fin para6: devolver ⟨𝑣1, … , 𝑣𝑛⟩

CCIA, US Inteligencia Artificial IA 9 / 90

Page 10: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico:

CCIA, US Inteligencia Artificial IA 10 / 90

Page 11: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A,

CCIA, US Inteligencia Artificial IA 10 / 90

Page 12: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A, D,

CCIA, US Inteligencia Artificial IA 10 / 90

Page 13: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A, D, C,

CCIA, US Inteligencia Artificial IA 10 / 90

Page 14: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A, D, C, F,

CCIA, US Inteligencia Artificial IA 10 / 90

Page 15: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A, D, C, F, G,

CCIA, US Inteligencia Artificial IA 10 / 90

Page 16: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A, D, C, F, G, B,

CCIA, US Inteligencia Artificial IA 10 / 90

Page 17: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A, D, C, F, G, B, E,

CCIA, US Inteligencia Artificial IA 10 / 90

Page 18: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A, D, C, F, G, B, E, H,

CCIA, US Inteligencia Artificial IA 10 / 90

Page 19: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Orden topológico: ejemplo

A

C D E

B

F G

H

I

Orden topológico: A, D, C, F, G, B, E, H, I.

CCIA, US Inteligencia Artificial IA 10 / 90

Page 20: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Grafos morales

Grafo moral de un DAG u� = (𝑉 , 𝐸): grafo no dirigidou�m = (𝑉 , 𝐸m) con

𝐸m = {{𝑢, 𝑣} |𝑢 y 𝑣 están conectados otienen un hijo común en u�}

Manto de Markov de un vértice 𝑣 en u�: conjunto de vérticesconectados a 𝑣 en el grafo moral de u�.

pa(𝑣) ∪ ch(𝑣) ∪ ⋃𝑢∈ch(𝑣)

pa(𝑢)

CCIA, US Inteligencia Artificial IA 11 / 90

Page 21: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Grafos morales: ejemplo

A

C D E

B

F G

H

IDAG

A

C D E

B

F G

H

IGrafo moral

Manto de Markov de D: {A, B, C, E, F, G}.

CCIA, US Inteligencia Artificial IA 12 / 90

Page 22: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Repaso deTeoría de la Probabilidad

CCIA, US Inteligencia Artificial IA 13 / 90

Page 23: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Eventos

Variable aleatoria discreta 𝑋 : toma valores en un conjunto finitoVal(𝑋).

Dadas 𝑋1, … , 𝑋𝑛 variables aleatorias discretas:▶ Espacio de eventos 𝑆 : asignaciones conjuntas de valores.▶ Evento elemental 𝑎: elemento del espacio de eventos, lonotaremos 𝑋1 = 𝑥1, … , 𝑋𝑛 = 𝑥𝑛.

▶ Evento 𝐴: subconjunto del espacio de eventos.▶ ¬𝐴 denota el evento 𝑆 ∖ 𝐴.

CCIA, US Inteligencia Artificial IA 14 / 90

Page 24: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Variables aleatorias discretas: ejemploConsideremos los siguientes objetos:

1 1 1 2

1 1 2 2

1 2 2 2

Elegimos uno de los objetos al azar:▶ Variable Forma:

Val(Forma) = {cuadrado, círculo, triángulo}▶ Variable Sombreado:

Val(Sombreado) = {no, sí} = {¬sombreado, sombreado}▶ Variable Valor:

Val(Valor) = {1, 2}CCIA, US Inteligencia Artificial IA 15 / 90

Page 25: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Espacio de eventos: ejemplo

𝑆 = {(Forma = cuadrado, ¬sombreado, Valor = 1),(Forma = cuadrado, ¬sombreado, Valor = 2),(Forma = cuadrado, sombreado, Valor = 1),(Forma = cuadrado, sombreado, Valor = 2),(Forma = círculo, ¬sombreado, Valor = 1),(Forma = círculo, ¬sombreado, Valor = 2),(Forma = círculo, sombreado, Valor = 1),(Forma = círculo, sombreado, Valor = 2),(Forma = triángulo, ¬sombreado, Valor = 1),(Forma = triángulo, ¬sombreado, Valor = 2),(Forma = triángulo, sombreado, Valor = 1),(Forma = triángulo, sombreado, Valor = 2)}

CCIA, US Inteligencia Artificial IA 16 / 90

Page 26: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Eventos: ejemplo

▶ ¬sombreado ∧ Valor = 2 ≡

{(Forma = cuadrado, ¬sombreado, Valor = 2),(Forma = círculo, ¬sombreado, Valor = 2),(Forma = triángulo, ¬sombreado, Valor = 2)}

▶ ¬(Valor = 2 ∨ (sombreado ∧ Forma = cuadrado)) ≡

{(Forma = cuadrado, ¬sombreado, Valor = 1),(Forma = círculo, ¬sombreado, Valor = 1),(Forma = círculo, sombreado, Valor = 1),(Forma = triángulo, ¬sombreado, Valor = 1),(Forma = triángulo, sombreado, Valor = 1)}

CCIA, US Inteligencia Artificial IA 17 / 90

Page 27: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Probabilidades

Función de probabilidad sobre un espacio de eventos 𝑆 :ℙ: {𝐴 | 𝐴 ⊆ 𝑆} → ℝ tal que1. ℙ(𝐴) ≥ 0, para todo 𝐴 ⊆ 𝑆 .2. ℙ(𝑆) = 1.3. Para todo par de eventos 𝐴, 𝐵 ⊆ 𝑆 mutuamente exclusivos

ℙ(𝐴 ∪ 𝐵) = ℙ(𝐴) + ℙ(𝐵)

CCIA, US Inteligencia Artificial IA 18 / 90

Page 28: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Propiedades de la función de probabilidad

▶ ℙ(¬𝐴) = 1 − ℙ(𝐴), para todo 𝐴 ⊆ 𝑆 .▶ ℙ(𝐴) ≤ ℙ(𝐵), para todo 𝐴 ⊆ 𝐵.▶ ℙ(𝐴) ≤ 1, para todo 𝐴 ⊆ 𝑆 .▶ ℙ(𝐴 ∪ 𝐵) = ℙ(𝐴) + ℙ(𝐵) − ℙ(𝐴 ∩ 𝐵), para todo

𝐴, 𝐵 ⊆ 𝑆 .▶ ℙ(𝐴) = ∑𝑛

𝑖=1 ℙ(𝑎𝑖), para todo 𝐴 = {𝑎1, … , 𝑎𝑛}.

CCIA, US Inteligencia Artificial IA 19 / 90

Page 29: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Función de probabilidad: ejemplo

ℙ(Forma = cuadrado, ¬sombreado, Valor = 1) = 0,

ℙ(Forma = cuadrado, ¬sombreado, Valor = 2) = 112

,

ℙ(Forma = cuadrado, sombreado, Valor = 1) = 14

,

ℙ(¬sombreado ∧ Valor = 2) = 112

+ 112

+ 112

= 14

ℙ(¬(Valor = 2 ∨ (sombreado ∧ Forma = cuadrado))) =

0 + 0 + 16

+ 0 + 112

= 14

CCIA, US Inteligencia Artificial IA 20 / 90

Page 30: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Probabilidades condicionadas

Probabilidad conjunta de dos eventos 𝐴 y 𝐵:

ℙ(𝐴, 𝐵) ≝ ℙ(𝐴 ∩ 𝐵)

Probabilidad de 𝐴 condicionada a 𝐵, con ℙ(𝐵) > 0:

ℙ(𝐴 | 𝐵) ≝ ℙ(𝐴, 𝐵)ℙ(𝐵)

CCIA, US Inteligencia Artificial IA 21 / 90

Page 31: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Regla de BayesRegla fundamental: para cualesquiera dos eventos 𝐴 y 𝐵

ℙ(𝐴, 𝐵) = ℙ(𝐴 | 𝐵)ℙ(𝐵) = ℙ(𝐵 | 𝐴)ℙ(𝐴)

Sigue inmediatamente la regla de Bayes:

ℙ(𝐴 | 𝐵) =ℙ(𝐵 | 𝐴)ℙ(𝐴)

ℙ(𝐵)

Versión generalizada de la regla de Bayes:

ℙ(𝐴 | 𝐵, 𝐶) =ℙ(𝐵 | 𝐴, 𝐶)ℙ(𝐴 | 𝐶)

ℙ(𝐵 | 𝐶)

CCIA, US Inteligencia Artificial IA 22 / 90

Page 32: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Probabilidades condicionadas: ejemplo

ℙ(Valor = 2 | sombreado) = ℙ(Valor = 2, sombreado)ℙ(sombreado)

= 1/43/4

= 13

Regla de Bayes:

ℙ(Valor = 2 | sombreado)

=ℙ(sombreado | Valor = 2)ℙ(Valor = 2)

ℙ(sombreado)

= 1/2 ⋅ 1/23/4

= 13

CCIA, US Inteligencia Artificial IA 23 / 90

Page 33: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Distribuciones de probabilidad

Distribución de probabilidad de una variable 𝑋 conVal(𝑋) = {𝑥1, … , 𝑥𝑛}:

ℙ(𝑋) ≝ (ℙ(𝑋 = 𝑥1), … , ℙ(𝑋 = 𝑥𝑛))

Dada otra variable 𝑌 , notaremos ℙ(𝑌 | 𝑋) el conjunto dedistribuciones de probabilidad ℙ(𝑌 | 𝑋 = 𝑥), para cada𝑥 ∈ Val(𝑋).

Si no hay confusión posible, notaremos ℙ(𝑋 = 𝑥) por ℙ(𝑥) yℙ(𝑌 | 𝑋 = 𝑥) por ℙ(𝑌 | 𝑥).

CCIA, US Inteligencia Artificial IA 24 / 90

Page 34: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Distribuciones de probabilidad: ejemploℙ(Forma):

cuadrado 1/3círculo 1/3triángulo 1/3

ℙ(Sombreado):

no 1/4sí 3/4

ℙ(Valor):

1 1/22 1/2

ℙ(Forma | Valor, Sombreado):

1 2sí no sí

cuadrado 1/2 1/3 0círculo 1/3 1/3 1/3triángulo 1/6 1/3 2/3

CCIA, US Inteligencia Artificial IA 25 / 90

Page 35: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización sobre una variable𝑋 , 𝑌 dos v. a., Val(𝑋) = {𝑥1, … , 𝑥𝑚}, Val(𝑌 ) = {𝑦1, … , 𝑦𝑛}Regla de la probabilidad total:

ℙ(𝑥i) =𝑛

∑𝑗=1

ℙ(𝑥𝑖, 𝑦𝑗)

La distribución de probabilidad ℙ(𝑋) se puede determinar apartir de la distribución de probabilidad conjunta ℙ(𝑋, 𝑌 ).

ℙ(𝑋) =(

𝑛

∑𝑗=1

ℙ(𝑥1, 𝑦𝑗), … ,𝑛

∑𝑗=1

ℙ(𝑥𝑚, 𝑦𝑗))

La expresión anterior se denomina marginalización sobre 𝑌 y sedenota por ∑𝑌 ℙ(𝑋, 𝑌 ).

CCIA, US Inteligencia Artificial IA 26 / 90

Page 36: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización: ejemplo

ℙ(Valor = 1) = ∑forma

∑sombra

ℙ(forma, sombra, 1)

= (0 + 14

) + (0 + 16

) + (0 + 112

) = 12

ℙ(Valor = 2) = ∑forma

∑sombra

ℙ(forma, sombra, 2)

= ( 112

+ 0) + ( 112

+ 112

) + ( 112

+ 16

) = 12

CCIA, US Inteligencia Artificial IA 27 / 90

Page 37: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Independencia

𝑋 es independiente de 𝑌 , 𝑋⊥ℙ𝑌 , si

ℙ(𝑥 | 𝑦) = ℙ(𝑥)

para todo 𝑥 ∈ Val(𝑋), 𝑦 ∈ Val(𝑌 ).

𝑋 es condicionalmente independiente de 𝑌 dado 𝑍 ,𝑋⊥ℙ𝑌 | 𝑍 , si

ℙ(𝑥 | 𝑦, 𝑧) = ℙ(𝑥 | 𝑧)para todo 𝑥 ∈ Val(𝑋), 𝑦 ∈ Val(𝑌 ), 𝑧 ∈ Val(𝑍).

Las relaciones de independencia e independencia condicionalson simétricas.

CCIA, US Inteligencia Artificial IA 28 / 90

Page 38: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Independencia: ejemploForma ⟂ℙ Sombreado:

ℙ(forma, sombreado) = 14

= 13

⋅ 34

= ℙ(forma)ℙ(sombreado)

ℙ(forma, ¬sombreado) = 112

= 13

⋅ 14

= ℙ(forma)ℙ(¬sombreado)

con forma ∈ Val(Forma).Forma /⟂ℙ Valor:

ℙ(cuadrado, 1) = 14

≠ 13

⋅ 12

= ℙ(cuadrado)ℙ(1)

Sombreado /⟂ℙ Valor:

ℙ(sombreado, 1) = 12

≠ 34

⋅ 12

= ℙ(sombreado)ℙ(1)

CCIA, US Inteligencia Artificial IA 29 / 90

Page 39: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Independencia condicional: ejemploConsideremos los siguientes objetos:

1 1 1 2

1 1 2 2

1 2 2 2

Forma /⟂ℙ Sombreado:

ℙ(cuadrado, sombreado) = 14

≠ 13

⋅ 12

= ℙ(cuadrado)ℙ(sombreado)

CCIA, US Inteligencia Artificial IA 30 / 90

Page 40: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Independencia condicional: ejemploConsideremos los siguientes objetos:

1 1 1 2

1 1 2 2

1 2 2 2

Forma ⟂ℙ Sombreado | Valor :

ℙ(forma, ¬sombreado | 1) = 0 = ℙ(forma | 1)ℙ(¬sombreado | 1)ℙ(forma, ¬sombreado | 2) = ℙ(forma | 2)ℙ(¬sombreado | 2)

ℙ(forma, sombreado | 1) = ℙ(forma | 1)ℙ(sombreado | 1)ℙ(forma, sombreado | 2) = 0 = ℙ(forma | 2)ℙ(sombreado | 2)

con forma ∈ Val(Forma).CCIA, US Inteligencia Artificial IA 30 / 90

Page 41: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Regla de la cadena

Dado el conjunto de variables 𝑿 = {𝑋1, … , 𝑋𝑛}, ladistribución de probabilidad conjunta ℙ(𝑿) se puededescomponer como

ℙ(𝑿) = ℙ(𝑋𝑛 | 𝑋𝑛−1, … , 𝑋1) ⋯ ℙ(𝑋2 | 𝑋1)ℙ(𝑋1)

=𝑛

∏𝑖=1

ℙ(𝑋𝑖 | 𝑋1, … , 𝑋𝑖−1)

CCIA, US Inteligencia Artificial IA 31 / 90

Page 42: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Regla de la cadena: ejemplo

ℙ(Forma, Sombreado, Valor)= ℙ(Sombreado | Forma, Valor)ℙ(Forma | Valor)ℙ(Valor)= ℙ(Sombreado | Valor, Forma)ℙ(Valor | Forma)ℙ(Forma)= ℙ(Forma | Sombreado, Valor)ℙ(Sombreado | Valor)ℙ(Valor)= …

CCIA, US Inteligencia Artificial IA 32 / 90

Page 43: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Redes bayesianas discretas

CCIA, US Inteligencia Artificial IA 33 / 90

Page 44: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Sistemas expertos

Sistemas capaces de resolver tareas dentro de un determinadodominio de conocimiento.

Componentes principales:▶ Conocimiento, que necesita ser representado.▶ Mecanismos para inferir nuevo conocimiento.

CCIA, US Inteligencia Artificial IA 34 / 90

Page 45: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Representación del conocimiento

Requisitos:▶ Potencia expresiva.▶ Facilidad de interpretación.▶ Eficiencia de la inferencia.

Ejemplos de formalismos:▶ Sistemas basados en reglas.▶ Sistemas basados en lógicas.▶ Redes bayesianas.

CCIA, US Inteligencia Artificial IA 35 / 90

Page 46: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conocimiento incierto

Ejemplo de regla:

Caries → Dolor de muelas

La regla es determinista, pero no siempre una caries causa dolorde muelas.

Los sistemas basados en reglas tienen serias limitaciones pararepresentar conocimiento incierto y razonar con él.

Las redes bayesianas son sistemas expertos que representan elconocimiento incierto mediante probabilidades.

CCIA, US Inteligencia Artificial IA 36 / 90

Page 47: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Componentes de una red bayesiana

Componente cualitativa:▶ Representa relaciones de dependencia entre variables.▶ DAG:

▶ vértices, variables aleatorias discretas;▶ arcos, dependencias directas;▶ caminos, dependencias indirectas.

Componente cuantitativa:▶ Representa la fuerza de las relaciones de dependencia.▶ Distribución de probabilidad conjunta descompuesta endistribuciones de probabilidad condicionada.

CCIA, US Inteligencia Artificial IA 37 / 90

Page 48: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Modelo de la alarma

El Sr. Holmes está trabajando en su despacho cuandorecibe una llamada de teléfono de su vecino elDr. Watson, quien le dice que la alarma antirrobo deHolmes ha saltado. Convencido de que ha habido unintento de robo en su casa, Holmes corre a su coche y sedirige a su casa. Por el camino escucha en la radio unanoticia que informa de que ha habido un pequeñoterremoto en el área. Sabiendo que los terremotostienden a hacer que las alarmas antirrobo salten,regresa a su despacho.

CCIA, US Inteligencia Artificial IA 38 / 90

Page 49: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Modelo de la alarma: DAG

Robo

Alarma

Terremoto

Noticia

Llamada

CCIA, US Inteligencia Artificial IA 39 / 90

Page 50: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Modelo de la alarma: DPCs I

ℙ(Robo):

R = no 0.90R = sí 0.10

ℙ(Terremoto):

T = no 0.99T = sí 0.01

ℙ(Alarma | Robo, Terremoto):

R = no R = síT = no T = sí T = no T = sí

A = no 0.99 0.10 0.10 0.01A = sí 0.01 0.90 0.90 0.99

CCIA, US Inteligencia Artificial IA 40 / 90

Page 51: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Modelo de la alarma: DPCs IIℙ(Noticia | Terremoto):

T = no T = síN = no 0.999 0.01N = sí 0.001 0.99

ℙ(Llamada | Alarma):

A = no A = síLl = no 0.99 0.05Ll = sí 0.01 0.95

CCIA, US Inteligencia Artificial IA 41 / 90

Page 52: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

EvidenciasDado un conjunto 𝑿 de variables, una evidencia para esasvariables es

ε𝑿: Val(𝑿) → ℝ≥0

Dos tipos de evidencia:▶ Evidencia fuerte ( ε ): asigna cero a todos salvo uno de loseventos.

▶ Evidencia débil ( ε ).

Asumiendo Val(Alarma) = no, sí:

εAlarma = (0, 1) certeza de que la alarma ha sonado

εAlarma = (1, 2) la alarma ha sonado con el doble decerteza de que no ha sonado

CCIA, US Inteligencia Artificial IA 42 / 90

Page 53: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Flujo de información

▶ Conexiones en serie:

AlarmaRobo Llamada

▶ Conexiones divergentes:

TerremotoAlarma Noticia

▶ Conexiones convergentes:

AlarmaRobo Terremoto

CCIA, US Inteligencia Artificial IA 43 / 90

Page 54: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones en serieLa información se puede transmitir a través de una conexión enserie 𝑋 → 𝑌 → 𝑍 , salvo que se conozca el estado de 𝑌 .

CCIA, US Inteligencia Artificial IA 44 / 90

Page 55: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones en serieLa información se puede transmitir a través de una conexión enserie 𝑋 → 𝑌 → 𝑍 , salvo que se conozca el estado de 𝑌 .

Sin evidencia de Alarma:

AlarmaRobo Llamada

ℙ(R = sí) = 0.1 ℙ(Ll = sí) = 0.11ℙ(R = sí | Ll = sí) = 0.77 ℙ(Ll = sí | R = sí) = 0.86

CCIA, US Inteligencia Artificial IA 44 / 90

Page 56: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones en serieLa información se puede transmitir a través de una conexión enserie 𝑋 → 𝑌 → 𝑍 , salvo que se conozca el estado de 𝑌 .

Con evidencia fuerte de Alarma:

Alarma εRobo Llamada

ℙ(R = sí | A = sí) = 0.84 ℙ(Ll = sí | A = sí) = 0.95ℙ(R = sí | Ll = sí, A = sí) = 0.84 ℙ(Ll = sí | R = sí, A = sí) = 0.95

CCIA, US Inteligencia Artificial IA 44 / 90

Page 57: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones divergentesLa información se puede transmitir a través de una conexióndivergente 𝑋 ← 𝑌 → 𝑍 , salvo que se conozca el estado de 𝑌 .

CCIA, US Inteligencia Artificial IA 45 / 90

Page 58: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones divergentesLa información se puede transmitir a través de una conexióndivergente 𝑋 ← 𝑌 → 𝑍 , salvo que se conozca el estado de 𝑌 .

Sin evidencia de Terremoto:

TerremotoAlarma Noticia

ℙ(A = sí) = 0.11 ℙ(N = sí) = 0.01ℙ(A = sí | N = sí) = 0.84 ℙ(N = sí | A = sí) = 0.08

CCIA, US Inteligencia Artificial IA 45 / 90

Page 59: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones divergentesLa información se puede transmitir a través de una conexióndivergente 𝑋 ← 𝑌 → 𝑍 , salvo que se conozca el estado de 𝑌 .

Con evidencia fuerte de Terremoto:

Terremotoε

Alarma Noticia

ℙ(A = sí | T = sí) = 0.91 ℙ(N = sí | T = sí) = 0.99ℙ(A = sí | N = sí, T = sí) = 0.91 ℙ(N = sí | A = sí, T = sí) = 0.99

CCIA, US Inteligencia Artificial IA 45 / 90

Page 60: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones convergentesLa información solo se puede transmitir a través de unaconexión convergente 𝑋 → 𝑌 ← 𝑍 si se conoce el estado de𝑌 o de alguno de sus descendientes.

CCIA, US Inteligencia Artificial IA 46 / 90

Page 61: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones convergentesLa información solo se puede transmitir a través de unaconexión convergente 𝑋 → 𝑌 ← 𝑍 si se conoce el estado de𝑌 o de alguno de sus descendientes.

Sin evidencia de Alarma:

AlarmaRobo Terremoto

ℙ(R = sí) = 0.1 ℙ(T = sí) = 0.01ℙ(R = sí | T = sí) = 0.1 ℙ(T = sí | R = sí) = 0.01

CCIA, US Inteligencia Artificial IA 46 / 90

Page 62: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones convergentesLa información solo se puede transmitir a través de unaconexión convergente 𝑋 → 𝑌 ← 𝑍 si se conoce el estado de𝑌 o de alguno de sus descendientes.

Con evidencia fuerte de Alarma:

Alarma εRobo Terremoto

ℙ(R = sí | A = sí) = 0.84 ℙ(T = sí | A = sí) = 0.08ℙ(R = sí | T = sí, A = sí) = 0.11 ℙ(T = sí | R = sí, A = sí) = 0.01

CCIA, US Inteligencia Artificial IA 46 / 90

Page 63: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Conexiones convergentesLa información solo se puede transmitir a través de unaconexión convergente 𝑋 → 𝑌 ← 𝑍 si se conoce el estado de𝑌 o de alguno de sus descendientes.

Con evidencia débil de Alarma:

Alarma εRobo Terremoto

ℙ(R = sí | Ll = sí) = 0.77 ℙ(T = sí | Ll = sí) = 0.08ℙ(R = sí | T = sí, Ll = sí) = 0.11 ℙ(T = sí | R = sí, Ll = sí) = 0.01

CCIA, US Inteligencia Artificial IA 46 / 90

Page 64: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Razonamientos en redes bayesianasLa representación de las dependencias entre variables medianteun DAG proporciona un medio compacto pero potente derealizar razonamientos abductivos, deductivos e intercausales.

CCIA, US Inteligencia Artificial IA 47 / 90

Page 65: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Razonamientos en redes bayesianasLa representación de las dependencias entre variables medianteun DAG proporciona un medio compacto pero potente derealizar razonamientos abductivos, deductivos e intercausales.

Razonamiento abductivo:

Robo

Alarma

Terremoto

Noticia

Llamadaε

CCIA, US Inteligencia Artificial IA 47 / 90

Page 66: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Razonamientos en redes bayesianasLa representación de las dependencias entre variables medianteun DAG proporciona un medio compacto pero potente derealizar razonamientos abductivos, deductivos e intercausales.

Razonamiento deductivo:

Robo

Alarma

Terremotoε

Noticia

Llamada

CCIA, US Inteligencia Artificial IA 47 / 90

Page 67: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Razonamientos en redes bayesianasLa representación de las dependencias entre variables medianteun DAG proporciona un medio compacto pero potente derealizar razonamientos abductivos, deductivos e intercausales.

Razonamiento intercausal:

Robo

Alarma ε

Terremotoε

Noticia

Llamada

CCIA, US Inteligencia Artificial IA 47 / 90

Page 68: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación

Un sendero π = ⟨𝑢, … , 𝑣⟩ en un DAG u� = (𝑉 , 𝐸) se dice queestá bloqueado por 𝑈 ⊆ 𝑉 , si π contiene un vértice 𝑤 tal que:

▶ o bien 𝑤 ∈ 𝑈 y los arcos de π no forman una conexiónconvergente en 𝑤;

▶ o bien 𝑤 ∉ 𝑈 , de(𝑤) ∩ 𝑈 = ∅ y los arcos de π forman unaconexión convergente en 𝑤.

Dados tres conjuntos disjuntos 𝑿, 𝒀 y 𝒁 de variables de 𝑉 , sedice que 𝑿 e 𝒀 están d-separados dado 𝒁 , 𝑿⊥u�𝒀 | 𝒁 , sitodo sendero entre ellos está bloqueado por 𝒁 .

CCIA, US Inteligencia Artificial IA 48 / 90

Page 69: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

CCIA, US Inteligencia Artificial IA 49 / 90

Page 70: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

X ⟂u� Y | A

CCIA, US Inteligencia Artificial IA 49 / 90

Page 71: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en A

X ⟂u� Y | A

CCIA, US Inteligencia Artificial IA 49 / 90

Page 72: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en B

X ⟂u� Y | A

CCIA, US Inteligencia Artificial IA 49 / 90

Page 73: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

X ⟂u� Y | AX /⟂u� Y | B

CCIA, US Inteligencia Artificial IA 49 / 90

Page 74: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

no bloqueado

X ⟂u� Y | AX /⟂u� Y | B

CCIA, US Inteligencia Artificial IA 49 / 90

Page 75: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 76: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en B

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 77: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en A, B y C

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 78: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, B

CCIA, US Inteligencia Artificial IA 49 / 90

Page 79: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

no bloqueado

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, B

CCIA, US Inteligencia Artificial IA 49 / 90

Page 80: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 81: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en A y B

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 82: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en B y C

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 83: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, CX /⟂u� Y | B, C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 84: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

no bloqueado

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, CX /⟂u� Y | B, C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 85: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, CX /⟂u� Y | B, C

X ⟂u� Y | A, B, C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 86: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en A

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, CX /⟂u� Y | B, C

X ⟂u� Y | A, B, C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 87: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en C

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, CX /⟂u� Y | B, C

X ⟂u� Y | A, B, C

CCIA, US Inteligencia Artificial IA 49 / 90

Page 88: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, CX /⟂u� Y | B, C

X ⟂u� Y | A, B, CX ⟂u� Y

CCIA, US Inteligencia Artificial IA 49 / 90

Page 89: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en B

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, CX /⟂u� Y | B, C

X ⟂u� Y | A, B, CX ⟂u� Y

CCIA, US Inteligencia Artificial IA 49 / 90

Page 90: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

d-separación: ejemplo

X

A B

C Y

bloqueado en A y B

X ⟂u� Y | AX /⟂u� Y | BX ⟂u� Y | C

X /⟂u� Y | A, BX ⟂u� Y | A, CX /⟂u� Y | B, C

X ⟂u� Y | A, B, CX ⟂u� Y

CCIA, US Inteligencia Artificial IA 49 / 90

Page 91: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Criterios para d-separación

u� = (𝑉 , 𝐸) un DAG:▶ El manto de Markov de 𝑋 ∈ 𝑉 es el subconjunto minimal

𝑈 ⊆ 𝑉 que d-separa a 𝑋 del resto del grafo.

𝑋⊥u�𝑉 ∖ (𝑈 ∪ {𝑋}) | 𝑈

▶ Dados 𝑿, 𝒀 , 𝒁 ⊆ 𝑉 disjuntos, 𝑿 e 𝒀 están d-separadosdado 𝒁 si en el grafo (u�an(𝑿∪𝒀 ∪𝒁))

m todo camino entre 𝑿e 𝒀 pasa por 𝒁 .

Toda variable de 𝑋 ∈ 𝑉 está d-separada de sus nodescendientes, nd(𝑋), dados sus padres, pa(𝑋).

CCIA, US Inteligencia Artificial IA 50 / 90

Page 92: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Criterios para d-separación: ejemplo

A B C

D E F G

H I J

K

CCIA, US Inteligencia Artificial IA 51 / 90

Page 93: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Criterios para d-separación: ejemplo

A B C

D E F G

H I J

K

Manto de Markov de F:{B, E, G, I, J}

F ⟂u� resto del grafo |B, E, G, I, J

CCIA, US Inteligencia Artificial IA 51 / 90

Page 94: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Criterios para d-separación: ejemplo

A B C

D E F G

H

𝑿 = {D, H}𝒀 = {C, G}𝒁 = {B, E, F}

𝑿 /⟂u� 𝒀 | 𝒁

CCIA, US Inteligencia Artificial IA 51 / 90

Page 95: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Mapas de dependencia e independencia

ℙ distribución de probabilidad sobre 𝑉 y u� = (𝑉 , 𝐸) un DAG.▶ u� mapa de dependencias (mapa-D) de ℙ: para todo

𝑿, 𝒀 , 𝒁 ⊆ 𝑉 disjuntos

𝑿⊥ℙ𝒀 | 𝒁 ⇒ 𝑿⊥u�𝒀 | 𝒁

▶ u� mapa de independencias (mapa-I) de ℙ: para todo𝑿, 𝒀 , 𝒁 ⊆ 𝑉 disjuntos

𝑿⊥u�𝒀 | 𝒁 ⇒ 𝑿⊥ℙ𝒀 | 𝒁

▶ u� mapa perfecto de ℙ si a la vez mapa-D y mapa-I de ℙ.

CCIA, US Inteligencia Artificial IA 52 / 90

Page 96: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Limitación expresiva de los DAGs

Consideremos 𝑋1, 𝑋2, 𝑋3, 𝑋4 cumpliendo únicamente lassiguientes relaciones de independencia:

𝑋1⊥ℙ𝑋2

𝑋1⊥ℙ𝑋4 | 𝑋2, 𝑋3

𝑋2⊥ℙ𝑋3 | 𝑋1, 𝑋4

Ningún DAG puede ser un mapa perfecto de ℙ.

CCIA, US Inteligencia Artificial IA 53 / 90

Page 97: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Redes bayesianas

DefiniciónDada una distribución de probabilidad ℙ sobre un conjunto devariables 𝑿 , una red bayesiana ℬ consta de:1. Un DAG u� = (𝑿, 𝐸).2. Un conjunto u� de distribuciones condicionales, conteniendo

ℙ(𝑋 | pa(𝑋)), para cada 𝑋 ∈ 𝑿 .de tal manera que u� es un mapa-I minimal de ℙ.

CCIA, US Inteligencia Artificial IA 54 / 90

Page 98: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Descomposición de la distribución conjuntaUna red bayesiana permite representar una distribuciónconjunta como producto de distribuciones condicionales:

ℙ(𝑿) =𝑛

∏𝑖=1

ℙ(𝑋i | pa(𝑋𝑖))

Esta descomposición posibilita reducir el número de parámetrosnecesarios.

Modelo de la alarma:▶ Distribución conjunta: 25 − 1 = 31 parámetros.▶ Distribuciones condicionales:

(2 − 1) + (2 − 1) + 4(2 − 1) + 2(2 − 1) + 2(2 − 1) = 10parámetros.CCIA, US Inteligencia Artificial IA 55 / 90

Page 99: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Construcción de redes bayesianas

Sea 𝑿 el conjunto de variables de la red bayesiana.

1: Establecer un orden 𝑋1, … , 𝑋𝑛 entre las variables de 𝑿 .2: u� ← DAG con conjunto de vértices 𝑿 y sin arcos3: para 𝑖 desde 1 hasta 𝑛 hacer4: pa(𝑋𝑖) ← 𝒀 ⊆ {𝑋1, … , 𝑋𝑖−1} minimal tal que

𝑋𝑖 ⟂ℙ {𝑋1, … , 𝑋𝑖−1} ∖ 𝒀 | 𝒀5: para 𝑋 en pa(𝑋𝑖) hacer6: añadir 𝑋 → 𝑋𝑖 a u�7: fin para8: asociar a 𝑋𝑖 la distribución ℙ(𝑋𝑖 | pa(𝑋𝑖))9: fin para10: devolver u�

CCIA, US Inteligencia Artificial IA 56 / 90

Page 100: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Construcción de redes bayesianasOrden entre las variables

El resultado proporcionado por el algoritmo de construcción deredes bayesianas:

▶ puede variar si se parte de diferentes ordenaciones de 𝑿 .▶ representa siempre la misma distribución de probabilidadconjunta ℙ de 𝑿 .

Es conveniente partir de un orden causal entre las variables:▶ la red bayesiana obtenida será más compacta;▶ las tablas de probabilidad condicionadas ocuparán menosespacio;

▶ la inferencia probabilística será más eficiente.

CCIA, US Inteligencia Artificial IA 57 / 90

Page 101: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Equivalencia de redes bayesianas

Dos redes bayesianas sobre las mismas variables sonequivalentes si representan la misma distribución deprobabilidad conjunta.

Una estructura-v es una conexión convergente 𝑋𝑖 → 𝑋𝑘 ← 𝑋𝑗tal que 𝑋𝑖 y 𝑋𝑗 no están conectados.

Dos redes bayesianas son equivalentes si y solo si los DAGsasociados tienen el mismo esqueleto y las mismas estructuras-v.

CCIA, US Inteligencia Artificial IA 58 / 90

Page 102: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Ejemplo de redes bayesianas equivalentesSupongamos que 𝑋⊥ℙ𝑌 | 𝑍 .

𝑍

𝑋 𝑌ℬ1

𝑍

𝑋 𝑌ℬ2

𝑍

𝑋 𝑌ℬ3

ℬ1 representa ℙ(𝑋, 𝑌 , 𝑍) = ℙ(𝑋 | 𝑌 , 𝑍)ℙ(𝑌 | 𝑍)ℙ(𝑍)= ℙ(𝑋 | 𝑍)ℙ(𝑌 | 𝑍)ℙ(𝑍)

ℬ2 representa ℙ(𝑋, 𝑌 , 𝑍) = ℙ(𝑋 | 𝑍, 𝑌 )ℙ(𝑍 | 𝑌 )ℙ(𝑌 )= ℙ(𝑋 | 𝑍)ℙ(𝑍 | 𝑌 )ℙ(𝑌 )

ℬ3 representa ℙ(𝑋, 𝑌 , 𝑍) = ℙ(𝑌 | 𝑍, 𝑋)ℙ(𝑍 | 𝑋)ℙ(𝑋)= ℙ(𝑌 | 𝑍)ℙ(𝑍 | 𝑋)ℙ(𝑋)

CCIA, US Inteligencia Artificial IA 59 / 90

Page 103: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Inferencia probabilística enredes bayesianas discretas

CCIA, US Inteligencia Artificial IA 60 / 90

Page 104: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Consultas

Consulta probabilística: determinar ℙ(𝒀 | ε)▶ 𝒀 : subconjunto de variables de consulta.▶ ε: evidencia disponible sobre otras variables.

Consulta MAP: determinar arg m ́ax𝒘 ℙ(𝒘 | ε)▶ ε: evidencia sobre el subconjunto de variables 𝑬 .▶ 𝒘: asignación de valores al resto de variables 𝑾 = 𝑿 ∖ 𝑬 .

Consulta MAP marginal: determinar arg m ́ax𝒚 ℙ(𝒚 | ε)▶ ε: evidencia sobre el subconjunto de variables 𝑬 .▶ 𝒚: asignación de valores al subconjunto de variables

𝒀 ⊆ 𝑿 ∖ 𝑬 .

CCIA, US Inteligencia Artificial IA 61 / 90

Page 105: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Consultas

Dificultad del problema:

MAP marginal > MAP > probabilística

En este tema nos centramos únicamente en las consultasprobabilísticas.

CCIA, US Inteligencia Artificial IA 61 / 90

Page 106: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

PotencialesPotencial de probabilidad sobre conjunto de variables 𝑿 ,denominado ámbito del potencial:

ϕ: Val(𝑿) → ℝ≥0

con Val(𝑿) = Val(𝑋1) × ⋯ × Val(𝑋𝑛)

Ejemplos: 𝐴 = {a1, a2} y 𝐵 = {b1, b2}.

Potencial de ámbito 𝐴:

ϕ1(𝐴)a1 a2

1 2

Potencial de ámbito 𝐴, 𝐵:

ϕ2(𝐴, 𝐵)b1 b2

a1 a2 a1 a2

5 7 3 1CCIA, US Inteligencia Artificial IA 62 / 90

Page 107: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

EvidenciasUna evidencia sobre un conjunto de variables 𝑿 es un potencialde probabilidad con ámbito 𝑿 .

Evidencia de que 𝐴 = a2:

a1 a2

0 1

CCIA, US Inteligencia Artificial IA 63 / 90

Page 108: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

EvidenciasUna evidencia sobre un conjunto de variables 𝑿 es un potencialde probabilidad con ámbito 𝑿 .

Evidencia de que (𝐴, 𝐵) = (a1, b1) o (𝐴, 𝐵) = (a2, b2):

b1 b2

a1 a2 a1 a2

1 0 0 1

CCIA, US Inteligencia Artificial IA 63 / 90

Page 109: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

EvidenciasUna evidencia sobre un conjunto de variables 𝑿 es un potencialde probabilidad con ámbito 𝑿 .

Evidencia de que 𝐴 = a1 es el doble de verosímil que 𝐴 = a2:

a1 a2

2 1

CCIA, US Inteligencia Artificial IA 63 / 90

Page 110: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales

Dados dos potenciales ϕ(𝑿) y ψ(𝒀 ), el producto ϕψ es elpotencial de ámbito 𝑿 ∪ 𝒀 definido, para cada𝒛 ∈ Val(𝑿 ∪ 𝒀 ), como

(ϕψ)(𝒛) = ϕ(𝒛𝑿)ψ(𝒛𝒀 )

donde 𝒛𝑿 y 𝒛𝒀 son las proyecciones de 𝒛 a 𝑿 e 𝒀 .

Propiedades:1. Conmutativa: ϕ1ϕ2 = ϕ2ϕ1.2. Asociativa: (ϕ1ϕ2)ϕ3 = ϕ1(ϕ2ϕ3)

CCIA, US Inteligencia Artificial IA 64 / 90

Page 111: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1

0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7

b2

0.8×0.1 0.8×0.2 0×0.1 0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 112: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5

0.5×0.7 0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7

b2

0.8×0.1 0.8×0.2 0×0.1 0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 113: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7

0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7

b2

0.8×0.1 0.8×0.2 0×0.1 0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 114: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7

0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7

b2 0.8×0.1

0.8×0.2 0×0.1 0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 115: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7

0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7

b2 0.8×0.1 0.8×0.2

0×0.1 0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 116: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7 0.1×0.5

0.1×0.7 0.3×0.5 0.3×0.7

b2 0.8×0.1 0.8×0.2

0×0.1 0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 117: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7

0.3×0.5 0.3×0.7

b2 0.8×0.1 0.8×0.2

0×0.1 0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 118: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7

0.3×0.5 0.3×0.7

b2 0.8×0.1 0.8×0.2 0×0.1

0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 119: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7

0.3×0.5 0.3×0.7

b2 0.8×0.1 0.8×0.2 0×0.1 0×0.2

0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 120: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7 0.3×0.5

0.3×0.7

b2 0.8×0.1 0.8×0.2 0×0.1 0×0.2

0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 121: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7b2 0.8×0.1 0.8×0.2 0×0.1 0×0.2

0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 122: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7b2 0.8×0.1 0.8×0.2 0×0.1 0×0.2 0.9×0.1

0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 123: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Producto de potenciales: ejemplo

ψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ψ1ψ2 = ψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7b2 0.8×0.1 0.8×0.2 0×0.1 0×0.2 0.9×0.1 0.9×0.2

CCIA, US Inteligencia Artificial IA 65 / 90

Page 124: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Cociente de potenciales

Dados dos potenciales ϕ(𝑿) y ψ(𝒀 ), el cociente ϕ/ψ es elpotencial de ámbito 𝑿 ∪ 𝒀 definido, para cada𝒛 ∈ Val(𝑿 ∪ 𝒀 ), como

(ϕ/ψ)(𝒛) =⎧⎪⎨⎪⎩

ϕ(𝒛𝑿)/ψ(𝒛𝒀 ), si ψ(𝒛𝒀 ) ≠ 00, si ϕ(𝒛𝑿) = 0no definido, en otro caso

donde 𝒛𝑿 y 𝒛𝒀 son las proyecciones de 𝒛 a 𝑿 e 𝒀 .

CCIA, US Inteligencia Artificial IA 66 / 90

Page 125: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización de potenciales

Dado un potencial ϕ(𝑿), la marginalización de ϕ sobre 𝒀 ⊆ 𝑿es el potencial de ámbito 𝑿 ∖ 𝒀 definido, para cada𝒛 ∈ Val(𝑿 ∖ 𝒀 ), como

∑𝒀

ϕ(𝒛) = ∑𝒚∈𝒀

ϕ(𝒛.𝒚)

donde 𝒛.𝒚 es el elemento de Val(𝑿) tal que (𝒛.𝒚)𝑿∖𝒀 = 𝒛 y(𝒛.𝒚)𝒀 = 𝒚.

Propiedades:1. Conmutativa: ∑𝑨 ∑𝑩 ϕ = ∑𝑩 ∑𝑨 ϕ.2. Distributiva: si 𝑨 ∩ ámbito(ϕ1) = ∅, entonces

∑𝑨 ϕ1ϕ2 = ϕ1 ∑𝑨 ϕ2.

CCIA, US Inteligencia Artificial IA 67 / 90

Page 126: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización de potenciales: ejemploψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.25 0.35 0.05 0.07 0.15 0.21b2 0.08 0.16 0 0 0.09 0.18

∑𝐵 ψ3 = ψ4(𝐴, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.25+0.08 0.35+0.16 0.05+0 0.07+0 0.15+0.09 0.21+0.18

CCIA, US Inteligencia Artificial IA 68 / 90

Page 127: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización de potenciales: ejemploψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.25 0.35 0.05 0.07 0.15 0.21b2 0.08 0.16 0 0 0.09 0.18

∑𝐵 ψ3 = ψ4(𝐴, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.25+0.08

0.35+0.16 0.05+0 0.07+0 0.15+0.09 0.21+0.18

CCIA, US Inteligencia Artificial IA 68 / 90

Page 128: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización de potenciales: ejemploψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.25 0.35 0.05 0.07 0.15 0.21b2 0.08 0.16 0 0 0.09 0.18

∑𝐵 ψ3 = ψ4(𝐴, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.25+0.08 0.35+0.16

0.05+0 0.07+0 0.15+0.09 0.21+0.18

CCIA, US Inteligencia Artificial IA 68 / 90

Page 129: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización de potenciales: ejemploψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.25 0.35 0.05 0.07 0.15 0.21b2 0.08 0.16 0 0 0.09 0.18

∑𝐵 ψ3 = ψ4(𝐴, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.25+0.08 0.35+0.16 0.05+0

0.07+0 0.15+0.09 0.21+0.18

CCIA, US Inteligencia Artificial IA 68 / 90

Page 130: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización de potenciales: ejemploψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.25 0.35 0.05 0.07 0.15 0.21b2 0.08 0.16 0 0 0.09 0.18

∑𝐵 ψ3 = ψ4(𝐴, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.25+0.08 0.35+0.16 0.05+0 0.07+0

0.15+0.09 0.21+0.18

CCIA, US Inteligencia Artificial IA 68 / 90

Page 131: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización de potenciales: ejemploψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.25 0.35 0.05 0.07 0.15 0.21b2 0.08 0.16 0 0 0.09 0.18

∑𝐵 ψ3 = ψ4(𝐴, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.25+0.08 0.35+0.16 0.05+0 0.07+0 0.15+0.09

0.21+0.18

CCIA, US Inteligencia Artificial IA 68 / 90

Page 132: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Marginalización de potenciales: ejemploψ3(𝐴, 𝐵, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.25 0.35 0.05 0.07 0.15 0.21b2 0.08 0.16 0 0 0.09 0.18

∑𝐵 ψ3 = ψ4(𝐴, 𝐶):

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.25+0.08 0.35+0.16 0.05+0 0.07+0 0.15+0.09 0.21+0.18

CCIA, US Inteligencia Artificial IA 68 / 90

Page 133: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Normalización de potencialesLa normalización respecto a 𝑿 de un potencial ϕ de ámbito𝑿, 𝒀 lo transforma en la distribución de probabilidad ℙ(𝒀 | 𝑿):

η𝑿(ϕ) =ϕ

∑𝒀 ϕ

Notaremos η = η∅.

CCIA, US Inteligencia Artificial IA 69 / 90

Page 134: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Normalización de potencialesLa normalización respecto a 𝑿 de un potencial ϕ de ámbito𝑿, 𝒀 lo transforma en la distribución de probabilidad ℙ(𝒀 | 𝑿):

η𝑿(ϕ) =ϕ

∑𝒀 ϕ

Notaremos η = η∅.

Ejemplos:

ℙ(𝐴) = η(ϕ1(𝐴))

=ϕ1(𝐴)

∑𝐴 ϕ1(𝐴)

a1 a213

23

CCIA, US Inteligencia Artificial IA 69 / 90

Page 135: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Normalización de potencialesLa normalización respecto a 𝑿 de un potencial ϕ de ámbito𝑿, 𝒀 lo transforma en la distribución de probabilidad ℙ(𝒀 | 𝑿):

η𝑿(ϕ) =ϕ

∑𝒀 ϕ

Notaremos η = η∅.

Ejemplos:

ℙ(𝐴, 𝐵) = η(ϕ2(𝐴, 𝐵))

=ϕ2(𝐴, 𝐵)

∑𝐴,𝐵 ϕ2(𝐴, 𝐵)

b1 b2

a1 a2 a1 a2516

716

316

116

CCIA, US Inteligencia Artificial IA 69 / 90

Page 136: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Normalización de potencialesLa normalización respecto a 𝑿 de un potencial ϕ de ámbito𝑿, 𝒀 lo transforma en la distribución de probabilidad ℙ(𝒀 | 𝑿):

η𝑿(ϕ) =ϕ

∑𝒀 ϕ

Notaremos η = η∅.

Ejemplos:

ℙ(𝐴 | 𝐵) = η𝐵(ϕ2(𝐴, 𝐵))

=ϕ2(𝐴, 𝐵)

∑𝐴 ϕ2(𝐴, 𝐵)

b1 b2

𝑎1512

34

𝑎2712

14

CCIA, US Inteligencia Artificial IA 69 / 90

Page 137: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Eliminación de una variable

Sean Φ un conjunto de potenciales y 𝑋 una variable.

El proceso de eliminar 𝑋 de Φ consta de los siguientes pasos:1. Calcular Φ𝑋 = {ϕ ∈ Φ | 𝑋 ∈ ámbito(ϕ)}.2. Calcular ϕ−𝑋 = ∑𝑋 ∏ Φ𝑋 .

3. Devolver Φ−𝑋 = (Φ ∖ Φ𝑋) ∪ {ϕ−𝑋}.

CCIA, US Inteligencia Artificial IA 70 / 90

Page 138: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Reducción de potencialesψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ε(𝐵):

b1 b2

1 0

CCIA, US Inteligencia Artificial IA 71 / 90

Page 139: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Reducción de potencialesψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ε(𝐵):

b1 b2

1 0

ψ1ψ2ε:

a1 a2 a3

c1 c2 c1 c2 c1 c2

b1 0.5×0.5×1 0.5×0.7×1 0.1×0.5×1 0.1×0.7×1 0.3×0.5×1 0.3×0.7×1b2 0.8×0.1×0 0.8×0.2×0 0×0.1×0 0×0.2×0 0.9×0.1×0 0.9×0.2×0

CCIA, US Inteligencia Artificial IA 71 / 90

Page 140: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Reducción de potencialesψ1(𝐴, 𝐵):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ2(𝐵, 𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ε(𝐵):

b1 b2

1 0

∑𝐵 ψ1ψ2ε:

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.5×0.5×1 0.5×0.7×1 0.1×0.5×1 0.1×0.7×1 0.3×0.5×1 0.3×0.7×1+0.8×0.1×0 +0.8×0.2×0 +0×0.1×0 +0×0.2×0 +0.9×0.1×0 +0.9×0.2×0

CCIA, US Inteligencia Artificial IA 71 / 90

Page 141: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Reducción de potencialesψ′

1(𝐴):

a1 a2 a3

b1 b2 b1 b2 b1 b2

0.5 0.8 0.1 0 0.3 0.9

ψ′2(𝐶):

b1 b2

c1 c2 c1 c2

0.5 0.7 0.1 0.2

ε(𝐵):

b1 b2

1 0

∑𝐵 ψ1ψ2ε = ψ′1ψ′

2:

a1 a2 a3

c1 c2 c1 c2 c1 c2

0.5×0.5 0.5×0.7 0.1×0.5 0.1×0.7 0.3×0.5 0.3×0.7

CCIA, US Inteligencia Artificial IA 71 / 90

Page 142: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Algoritmo de eliminación de variablesDada una red bayesiana ℬ con conjunto de variables 𝑿 , serealiza la consulta ℙ(𝒀 | ε):

▶ Variables de consulta: 𝒀 .▶ Variables de evidencia: 𝑬 = ámbito(ε).▶ Variables a eliminar: 𝒁 = 𝑿 ∖ (𝒀 ∪ 𝑬).

Algoritmo de eliminación de variables para calcular ℙ(𝒀 | ε):1: Φ ← DPCs de ℬ junto con ε2: elegir 𝑍1, … , 𝑍n ordenación de 𝒁3: para 𝑖 desde 1 hasta 𝑛 hacer4: eliminar 𝑍𝑖 de Φ5: Φ ← Φ−𝑍𝑖

6: fin para7: devolver η(∏ Φ)

CCIA, US Inteligencia Artificial IA 72 / 90

Page 143: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Ejemplo de inferencia probabilísticaCalcular ℙ(Robo | llamada, ¬noticia).

Algoritmo de eliminación de variables:

Potenciales Variable aeliminar

ϕR(R), ϕT(T), ϕA(A, R, T), ϕN(T), ϕLl(A) TϕR(R), ϕLl(A), ϕ−T(A, R) AϕR(R), ϕ−A(R)

Devolver η(ϕR(R)ϕ−A(R)).

CCIA, US Inteligencia Artificial IA 73 / 90

Page 144: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Potenciales iniciales I

ϕR(Robo):

R = no 0.90R = sí 0.10

ϕT(Terremoto):

T = no 0.99T = sí 0.01

ϕA(Alarma, Robo, Terremoto):

R = no R = síT = no T = sí T = no T = sí

A = no 0.99 0.10 0.10 0.01A = sí 0.01 0.90 0.90 0.99

CCIA, US Inteligencia Artificial IA 74 / 90

Page 145: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Potenciales iniciales II

ϕN(Terremoto):

T = no T = síN = no 0.999 0.01

ϕLl(Alarma):

A = no A = síLl = sí 0.01 0.95

CCIA, US Inteligencia Artificial IA 75 / 90

Page 146: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Eliminación de la variable Terremoto

ϕTϕAϕN(Alarma, Robo, Terremoto):

R = noA = no A = sí

T = no 0.99 × 0.99 × 0.999 0.99 × 0.01 × 0.999T = sí 0.01 × 0.1 × 0.01 0.01 × 0.9 × 0.01

R = síA = no A = sí

T = no 0.99 × 0.1 × 0.999 0.99 × 0.9 × 0.999T = sí 0.01 × 0.01 × 0.01 0.01 × 0.99 × 0.01

CCIA, US Inteligencia Artificial IA 76 / 90

Page 147: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Eliminación de la variable Terremoto

ϕ−T(Alarma, Robo) = ∑T ϕTϕAϕN:

R = no R = síA = no A = sí A = no A = sí

0.9791299 0.0099801 0.098902 0.890208

CCIA, US Inteligencia Artificial IA 76 / 90

Page 148: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Eliminación de la variable Alarma

ϕLlϕ−T(Alarma, Robo):

R = no R = síA = no 0.01 × 0.9791299 0.01 × 0.098902A = sí 0.95 × 0.00099801 0.95 × 0.890208

ϕ−A(Robo) = ∑A ϕLlϕ−T:

R = no R = sí0.019272394 0.84668662

CCIA, US Inteligencia Artificial IA 77 / 90

Page 149: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Resultado de la inferencia probabilística

ϕRϕ−A(Robo):

R = no R = sí0.9 × 0.019272394 0.1 × 0.84668662

η(ϕRϕ−A(Robo)):

R = no R = sí0.170027507 0.829972493

CCIA, US Inteligencia Artificial IA 78 / 90

Page 150: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Variables irrelevantesVariable irrelevante para la consulta ℙ(𝒀 | ε): ni ella ni ningunode sus descendientes es una variable de consulta ni deevidencia.

Ejemplo: en el modelo de la alarma, la variable Noticia esirrelevante para la consulta ℙ(Robo | llamada).

ℙ(R | ll) ∝ ℙ(R, ll) = ∑T,A,N

ℙ(R, T, A, ll,N)

= ∑T,A,N

ℙ(R)ℙ(T)ℙ(A | R, T)ℙ(ll | A)ℙ(N | T)

= ℙ(R) ∑T

ℙ(T) ∑A

ℙ(A | R, T)ℙ(ll | A) ∑N

ℙ(N | T)

∑N ℙ(N | T) = 1 para cada valor de T.CCIA, US Inteligencia Artificial IA 79 / 90

Page 151: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Complejidad del algoritmo

Complejidad del algoritmo de eliminación de variables:▶ Exponencial en el tamaño máximo de los ámbitos de lospotenciales generados.

▶ Lineal para las redes bayesianas cuyo DAG subyacente es unpoliárbol (es decir, su esqueleto es un árbol).

El orden en el que se eliminan las variables influye en laeficiencia del algoritmo:

▶ Cálculo más eficiente si el orden de eliminación lleva apotenciales generados de menor tamaño.

▶ Existen criterios heurísticos para elegir el orden deeliminación.

CCIA, US Inteligencia Artificial IA 80 / 90

Page 152: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Inferencia aproximada en redes bayesianas

Métodos basados en la generación aleatoria de muestras de lared bayesiana.

Muestra aleatoria: asignación de valores a las variables, conprobabilidad de generación igual a la probabilidad conjunta.

1: 𝑋1, … , 𝑋𝑛 orden topológico de las variables2: para 𝑖 desde 1 hasta 𝑛 hacer3: 𝑥𝑖 ← elemento aleatorio de Val(𝑋𝑖) según la distri-

bución ℙ(𝑋𝑖 | pa(𝑋𝑖))4: fin para5: devolver (𝑥1, … , 𝑥𝑛)

CCIA, US Inteligencia Artificial IA 81 / 90

Page 153: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Muestra aleatoria: ejemplo

Modelo de la alarma: en este ejemplo elegimos en cada caso elvalor más probable.

▶ ℙ(Robo) = (0.9, 0.1). Elegimos ¬robo.▶ ℙ(Terremoto) = (0.99, 0.01). Elegimos ¬terremoto.▶ ℙ(Alarma | ¬robo, ¬terremoto) = (0.99, 0.01). Elegimos¬alarma.

▶ ℙ(Llamada | ¬alarma) = (0.99, 0.01). Elegimos ¬llamada.▶ ℙ(Noticia | ¬terremoto) = (0.999, 0.001). Elegimos¬noticia.

La muestra aleatoria generada es

(¬robo, ¬terremoto, ¬alarma, ¬llamada, ¬noticia)

CCIA, US Inteligencia Artificial IA 82 / 90

Page 154: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Valor aleatorio de una variableSea 𝑋 una variable aleatoria discreta con:

▶ Val(𝑋) = {𝑥1, … , 𝑥n}.▶ ℙ(𝑋 = 𝑥𝑖) = 𝑝𝑖 (∑𝑛

𝑖=1 𝑝𝑖 = 1).

Para generar un valor aleatorio de 𝑋 :1: generar un valor aleatorio 𝑝 ∈ (0, 1)2: devolver 𝑥𝑗 tal que ∑𝑗−1

𝑖=1 𝑝𝑖 < 𝑝 ≤ ∑𝑗𝑖=1 𝑝𝑖

0 1

𝑝𝑝1 𝑝2 𝑝3 𝑝𝑛⋯

CCIA, US Inteligencia Artificial IA 83 / 90

Page 155: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Estimación de la probabilidad conjunta

𝑒1, … , 𝑒𝑁 secuencia de muestras aleatorias de una redbayesiana para ℙ.

La ley fuerte de los grandes números nos asegura que

#{𝑒𝑖 | 𝑒𝑖 = (𝑥1, … , 𝑥n)}𝑁

−−−−−→𝑁→+∞

ℙ(𝑋1 = 𝑥1, … , 𝑋n = 𝑥n)

CCIA, US Inteligencia Artificial IA 84 / 90

Page 156: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Algoritmo de muestreo con rechazo𝑒[𝒀 ]: valores asignados a las variables de 𝒀 por la muestra 𝑒.

1: ϕ ← potencial de ámbito 𝒀 que asigna 0 a cada combi-nación de valores

2: Generar 𝑁 muestras aleatorias 𝑒1, … , 𝑒𝑁3: para cada muestra 𝑒 generada hacer4: si 𝑒 es compatible con ε entonces5: incrementar ϕ(𝑒[𝒀 ]) en 16: si no entonces7: rechazar 𝑒8: fin si9: fin para10: devolver η(ϕ)

Se tiene que η(ϕ) −−−−−→𝑁→+∞

ℙ(𝒀 | ε).CCIA, US Inteligencia Artificial IA 85 / 90

Page 157: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Muestreo con rechazo: ejemplo

Estimar ℙ(Robo | llamada, ¬noticia).

Generar 1000 muestras aleatorias:▶ 898 muestras no son consistentes con la evidencia: serechazan.

▶ De las 102 consistentes con la evidencia:▶ 17 muestras le asignan el valor no a la variable Robo.▶ 85 muestras le asignan el valor sí a la variable Robo.

Por lo tanto,

ℙ(Robo | llamada, ¬noticia) ≅ η((17, 85)) ≅ (0.17, 0.83)

CCIA, US Inteligencia Artificial IA 86 / 90

Page 158: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Muestreo con rechazo con evidenciaimprobable

Probabilidad de la evidencia muy pequeña: se necesita un valorextremadamente grande de muestras aleatorias para una buenaestimación.

ℙ(llamada, ¬noticia) ≅ 0.102: en el ejemplo anterior serechazan unas 900 muestras de 1000 generadas.

ℙ(noticia, ¬terremoto) = 0.00099: de 1000 muestrasgeneradas aproximadamente solo una compatible con esaevidencia.

ℙ(Llamada | noticia, ¬terremoto): se necesitan millones demuestras para una buena estimación.

CCIA, US Inteligencia Artificial IA 87 / 90

Page 159: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Muestra aleatoria ponderadaGeneración de muestra aleatoria compatible con la evidencia ε:

1: 𝑋1, … , 𝑋𝑛 orden topológico de las variables2: 𝑤 ← 13: para 𝑖 desde 1 hasta 𝑛 hacer4: si 𝑋𝑖 es de evidencia entonces5: 𝑥𝑖 ← ε[𝑋𝑖]6: multiplicar 𝑤 por ℙ(𝑥𝑖 | pa(𝑋𝑖))7: si no entonces8: 𝑥𝑖 ← elemento aleatorio de Val(𝑋𝑖) según la dis-

tribución ℙ(𝑋𝑖 | pa(𝑋𝑖))9: fin si10: fin para11: devolver ⟨(𝑥1, … , 𝑥𝑛), 𝑤⟩

CCIA, US Inteligencia Artificial IA 88 / 90

Page 160: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Muestra aleatoria ponderada: ejemploSupongamos la evidencia ε = (llamada, ¬terremoto):

▶ ℙ(Robo) = (0.9, 0.1). Elegimos ¬robo.▶ Terremoto = no.

𝑤 = 1 × ℙ(¬terremoto) = 0.99.▶ ℙ(Alarma | ¬robo, ¬terremoto) = (0.99, 0.01). Elegimos¬alarma.

▶ Llamada = sí.𝑤 = 0.99 × ℙ(llamada | ¬alarma) = 0.0099.

▶ ℙ(Noticia | ¬terremoto) = (0.999, 0.001). Elegimos¬noticia.

La muestra aleatoria generada es

(¬robo, ¬terremoto, ¬alarma, llamada, ¬noticia)

con un peso asociado de 0.0099.CCIA, US Inteligencia Artificial IA 89 / 90

Page 161: Inteligencia Artificial - Redes bayesianasGrafosacíclicosdirigidos Cicloenungrafodirigido:camino 1,…, delongitudal menos1talque 1= . Grafoacíclicodirigido(DAG):grafodirigidoquenotieneciclos

Algoritmo de ponderación por verosimilitud

1: ϕ ← potencial de ámbito 𝒀 que asigna 0 a cada combi-nación de valores

2: Generar 𝑁 muestras aleatorias ponderadas⟨𝑒1, 𝑤1⟩, … , ⟨𝑒𝑁 , 𝑤𝑁⟩ compatibles con la evidencia

3: para cada muestra 𝑒𝑖 generada hacer4: sumar 𝑤𝑖 a ϕ(𝑒𝑖[𝒀 ])5: fin para6: devolver η(ϕ)

Se tiene que η(ϕ) −−−−−→𝑁→+∞

ℙ(𝒀 | ε).

CCIA, US Inteligencia Artificial IA 90 / 90