Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf ·...

38
F l dd Ci i d l C F acultad de Ciencias de la Computacn Introducción a los algoritmos Introducción a los algoritmos Introducción a los algoritmos Introducción a los algoritmos (Redes Bayesianas) (Redes Bayesianas) Abraham Sánchez López Grupo MOVIS

Transcript of Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf ·...

Page 1: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

F l d d Ci i d l C ióFacultad de Ciencias de la Computación

Introducción a los algoritmosIntroducción a los algoritmosIntroducción a los algoritmosIntroducción a los algoritmos(Redes Bayesianas)(Redes Bayesianas)

Abraham Sánchez LópezGrupo MOVISp

Page 2: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

IntroducciónDesde un punto de vista intuitivo, la inferencia en una red decausalidades consiste en propagar la información de una o máscausalidades consiste en propagar la información de una o másafirmaciones dentro de esta red, para deducir cómo se modifican lascreencias acerca de los otros nodos.Esto es exactamente lo que hemos hecho manualmente en los dosEsto es exactamente lo que hemos hecho manualmente en los dosejemplos que se presentaron anteriormente

2(c) ASLOtoño 2015

Page 3: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

InferenciaSupongamos que tenemos una red bayesiana definida por un grafo y ladistribución de probabilidad asociada (G p)distribución de probabilidad asociada (G, p).Supongamos que el grafo contiene n nodos, denotados como:{X1, X2,..., Xn}.El bl l d l i f i l d l l (X | Y) d d YEl problema general de la inferencia es el de calcular p(Xi | Y), donde YX, Xi Y.Es evidente que la complejidad de este problema depende de laq p j p pestructura de la red.Estudiaremos primero el problema de la inferencia de manera empírica,para mostrar que el método "intuitivo“ consiste en propagar lap q p p ginformación a lo largo de los arcos, lo que conduce a conclusioneserróneas en el caso general.A continuación presentamos los métodos aplicables en el caso general.co uac ó p ese a os os é odos ap cab es e e caso ge e aLa siguiente figura muestra gráficamente la inferencia en las diferentesestructuras de redes bayesianas.

3(c) ASLOtoño 2015

Page 4: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Inferencia en diferentes estructuras

4(c) ASLOtoño 2015

Page 5: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Enfoque intuitivo, IqSupongamos que tenemos una red bayesiana (G, p), por ejemplo una delas cuatro redes presentadas en el acetato anterior donde todas laslas cuatro redes presentadas en el acetato anterior, donde todas lasvariables son binarias, y pueden tener los valores “verdadero" o "falso".Por ejemplo, en el caso de la red en forma de cadena, supongamos quetenemos la información A = Vtenemos la información A V.Cómo propagar esta información en la red, es decir, cómo calcular p(C |A = V)?Sobre la estr ct ra de este grafo sabemos (definición de na redSobre la estructura de este grafo, sabemos (definición de una redbayesiana): )()|()|(),,( ApABpBCpCBAp ⋅⋅=

Además (de la definición de la probabilidad condicional)

se tiene:)()|(),|(),,( ApABpBACpCBAp ⋅⋅=

se e e

Ad á ( l t d B )

)|(),|( BCpBACp =

5(c) ASL

Además, (por el teorema de Bayes)

Otoño 2015

Page 6: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Enfoque intuitivo, IIq

y por lo tanto∑ ⋅=

BABpBACpACp )|(),|()|(

y por lo tanto

finalmente∑ ⋅=

BABpBCpACp )|()|()|(

+==⋅===== )|()|()|( VAVBpVBVCpVAVCp

( | ) ( | )p C V B F p B F A V= = ⋅ = =

y de la misma manera

+==⋅===== )|()|()|( VAVBpVBFCpVAFCp

Se puede observar por lo tanto que la operación, simplemente calcula de

)|()|( VAFBpFBFCp ==⋅==

forma gradual la probabilidad de cada nodo, propagando lasprobabilidades condicionales conocidas.Veamos ahora, si este método se puede generalizar.

6(c) ASL

p g

Otoño 2015

Page 7: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Cadenas, I Consideremos una cadena de longitud n, y calculemos p(Xi | Xj). Si elnodo Xi se sitúa en apoyo del nodo Xj pero no es un descendientenodo Xi se sitúa en apoyo del nodo Xj, pero no es un descendientedirecto de Xi (j < i − 1).

Se puede escribir:∑

−− ⋅=1

)|()|()|( 11iX

jiiiji XXpXXpXXp

Si el nodo Xi−1 es un descendiente directo de Xj, hemos terminado (casoA, B, C siguiente).De lo contrario es suficiente con descomponer p(Xi 1 | Xj) en la mismaDe lo contrario, es suficiente con descomponer p(Xi−1 | Xj) en la mismaforma, hasta obtener directamente el descendiente directo de Xj.Cuando el nodo Xi se encuentra en el nodo ascendente Xj, es un pocomás complicadomás complicado.

7(c) ASLOtoño 2015

Page 8: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Cadenas, IIDebe utilizarse primero la propagación antes de partir del inicio de lacadena para conocer para cada nodo su probabilidad marginal p(Xk)cadena, para conocer para cada nodo su probabilidad marginal p(Xk)para 1 ≤ j ≤ k.Se puede utilizar la propiedad de inversión de la probabilidad condicional:

)()()|()|(

1

11

+

++

⋅=

i

iiiii Xp

XpXXpXXp

Del mismo modo, si Xi es ascendente directo de Xj, entonces se termina.De lo contrario, se podrá continuar gradualmente.

8(c) ASLOtoño 2015

Page 9: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Árboles y poliárboles y pEl caso de un árbol se trata de la misma manera que las cadenas, porejemplo considerando que un nodo situado en un punto de uniónejemplo considerando que un nodo situado en un punto de unión(confluencia) puede duplicarse, para obtener dos cadenas.

Se llama poliárbol a una red sin ciclo En la práctica esto significa queSe llama poliárbol a una red sin ciclo. En la práctica, esto significa quecada nodo puede tener varios padres.La propagación de información en un poliárbol es más compleja, porquela información puede circular de un padre a otrola información puede circular de un padre a otro.Sin embargo, el caso de los poliárboles puede tratarse de la mismamanera, es decir mediante una propagación local.

9(c) ASLOtoño 2015

Page 10: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Caso general, IgAhora intentemos aplicar un razonamiento local a un grafo con ciclos.Supongamos que buscamos representar con una red bayesiana lasSupongamos que buscamos representar con una red bayesiana lassiguientes reglas lógicas:

CBBA

⇔⇒

),(XOR DCEDB

CB

⇔¬⇔

Este conocimiento puede representarse en el siguiente grafo:),(

Debemos igualmente utilizar las siguientes tablas de probabilidades:

10(c) ASL

Debemos igualmente utilizar las siguientes tablas de probabilidades:

Otoño 2015

Page 11: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Caso general, IIg

Suponemos que A sea falsa, y probamos concluir sobre E. Intentamos primero el razonamiento lógico.Como A es falso, no podemos utilizar la regla A⇒ B, y por lo tanto no se puede decir nada sobre B.Sin embargo B es ciertamente, ya sea verdadera, ya sea falsa.

11(c) ASL

g y y

Otoño 2015

Page 12: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Caso general, IIIgSupongamos que B es verdadera. En este caso, C es verdadera, y D esfalsa y por lo tanto E es verdaderafalsa, y por lo tanto E es verdadera.Supongamos que B es falsa. En este caso, C es falsa, y D es verdadera,y E es verdadera. Por lo tanto, si A es falsa, E es verdadera.Intentemos ahora la propagación "local" de las probabilidadesIntentemos ahora la propagación local de las probabilidades.Como A es falsa, la probabilidad de que B es verdadera(respectivamente falsa) es 1/2.Por lo tanto la probabilidad de que C es verdadera también es 1/2 y lomismo para D.Por último, se concluye que la probabilidad de que E sea verdaderatambién es 1/2.!En el caso de una red con ciclos, la propagación local de probabilidadesno funciona.

12(c) ASLOtoño 2015

Page 13: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Condicionamiento, I Intentamos comprender intuitivamente porque el razonamientoprobabilista que vimos anteriormente no funcionaprobabilista que vimos anteriormente no funciona.Propagando la información de B a C, después de B a D, consideramosque C y D eran independientes.Sabemos que en una conexión divergente C B D C y D sonSabemos que, en una conexión divergente, C ← B → D, C y D sonindependientes sólo si B es conocido (si B no es conocido, la"información" puede circular de C a D).En n estro ejemplo como A era falso B no era conocido por lo tantoEn nuestro ejemplo, como A era falso, B no era conocido y por lo tanto,hemos hecho un cálculo erróneo.En el caso general, por lo tanto no es posible efectuar una propagaciónl l d l i f iólocal de la información.Uno de los métodos empleados consiste precisamente en aplicar elprimer tipo de razonamiento.Este método, llamado condicionamiento, consiste simplemente enejecutar las siguientes etapas:

13(c) ASLOtoño 2015

Page 14: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Condicionamiento, IIIdentificar un conjunto de nodos tales que, si todos los arcos de estos nodos sesuprimieron de la red, la red no tendría ningún ciclo (B juega este papel en elp g ( j g p pejemplo anterior).Considerar todas las hipótesis posibles sobre los valores de cada uno de estosnodos.En cada una de estas hipótesis, efectuar las propagaciones "locales" en la redsin ciclo correspondiente, y deducir la probabilidad condicional buscada.Sumar las probabilidades obtenidas en cada hipótesis, ponderadas por la

b bilid d d d hi ót iprobabilidad de cada hipótesis.En el ejemplo anterior, es suficiente escribir:

∑ ⋅= AbpAbEpAEp )|(),|()|(

Vemos que, en este tipo de enfoque, es importante elegir el conjunto delos N nodos que suprimen todos los ciclos.

∑b

ppp )|(),|()|(

q pEs decir, suponiendo que cada nodo tiene k estados posibles, el númerode propagaciones completas a efectuarse es igual a kN.La siguiente figura muestra el principio del método de condicionamiento

14(c) ASL

La siguiente figura muestra el principio del método de condicionamiento.

Otoño 2015

Page 15: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Principio del método de condicionamientop

15(c) ASLOtoño 2015

Page 16: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Árbol de uniones Existe un método alternativo más técnico, llamado construcción del árbolde uniónde unión.A partir de una red cualquiera, se puede construir una red que es unárbol cuyos nodos corresponden a los subconjuntos de los nodos de lared inicialred inicial.Es entonces posible transformar el problema de la inferencia en la redinicial en un problema de propagación de la información más complejo enla red transformadala red transformada.Este método es actualmente el más conocido en términos de complejidadalgorítmica. Sin embargo, ha sido demostrado que el problema generalde la inferencia en una red bayesiana es NP completo (G Cooper 1990)de la inferencia en una red bayesiana es NP-completo (G. Cooper, 1990).En algunos casos, el uso de otros métodos, basados más a menudo enheurísticas o en cálculos aproximados, son necesarios para las redes degran tamañogran tamaño.Este enfoque es más común hoy en día en la literatura, y el más utilizadoen las herramientas de software.

16(c) ASLOtoño 2015

Page 17: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Métodos aproximadospUno de los métodos más sencillo y más eficaz para las redes complejasutiliza simulaciónutiliza simulación.Consideremos nuevamente el ejemplo anterior. Supongamos que seefectúa un conjunto de simulaciones gracias a un generador de númerosaleatorios de la siguiente manera:aleatorios de la siguiente manera:

Para cada nodo, se conoce el estado a priori, no se hace nada (aquí, A).Para cada nodo sin padre, se efectúa un sorteo de acuerdo a sus probabilidadesmarginales y se coloca este nodo en el estado obtenido (aquí, no se refiere a ningúng y ( q , gnodo).Tan pronto como un nodo ve a todos sus padres afectados de un estadodeterminado, se efectúa un torneo del estado de este nodo, de acuerdo a la tabla deprobabilidades que le condiciona en el estado de sus padres (aquí B C D E)probabilidades que le condiciona en el estado de sus padres (aquí, B, C, D, E).Una vez que todos los nodos tienen un estado determinado, se almacena laconfiguración obtenida en una tabla.

Realizar este sorteo un gran número de vecesRealizar este sorteo un gran número de veces.Una vez efectuado este trabajo, se puede disponer de una estimación dela probabilidad de cualquier nodo bajo la hipótesis inicial (aquí A = F).Esto permite leer directamente n alor estimado de p(E | A)

17(c) ASL

Esto permite leer directamente un valor estimado de p(E | A).

Otoño 2015

Page 18: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje, Ip jEn este momento en nuestro estudio sobre las redes bayesianas, nosparece interesante un pequeño resumenparece interesante un pequeño resumen.En primer lugar, hemos mostrado que la representación intuitiva de ungrafo de causalidades podría hacerse de forma cuantitativa mediante eluso de probabilidadesuso de probabilidades.Enseguida, hemos también mostrado que las propiedades del grafo decausalidades permiten facilitar los cálculos (inferencia) en este grafo, eigualmente se han descrito los principales métodos de inferenciaigualmente se han descrito los principales métodos de inferencia.La última pregunta que se plantea es importante: como calcular estasprobabilidades?E b t t li t t d á i dEs bastante poco realista pensar que un experto podrá proporcionar demanera numérica el conjunto de parámetros necesarios en la inferenciaen un grafo.A l di h d l ibilid d d lAunque algunos estudios han mostrado que la sensibilidad de lasconclusiones a los parámetros de configuración era relativamente baja,podría ser interesante en algunos casos determinar dichos parámetros a

ti d l j l d b

18(c) ASL

partir de algunos ejemplos de base.

Otoño 2015

Page 19: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje, IIp jSe trata por lo tanto del aprendizaje, en un sentido bastante cercano alque hemos utilizado por ejemplo para las redes neuronales en laque hemos utilizado por ejemplo, para las redes neuronales, en lamedida que se busca encontrar el conjunto de parámetros tal como, laestructura de la red conocida, lo que toma en consideración de la mejormanera posible la base de ejemplos que se tienen.p j p qEn esta última etapa, entonces tendremos un conjunto completo deherramientas que permitan obtener de una forma operacional ycuantitativa, el conocimiento empírico que se describe en la forma de uncuantitativa, el conocimiento empírico que se describe en la forma de ungrafo de causalidades.Ahora iremos un poco más lejos.Supongamos que tenemos dos modelos causales de concurrencia (esSupongamos que tenemos dos modelos causales de concurrencia (esmuy fácil encontrar ejemplos en economía, por ejemplo).Sin embargo, tenemos a una única base de ejemplos, de la realidad. P l l i d d lPor lo tanto, resulta muy interesante comparar estos dos modelos.El método entonces se deriva directamente de lo anterior.

19(c) ASLOtoño 2015

Page 20: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje, IIIp jPara cada uno de los dos modelos (cada uno de los grafos decausalidad) vamos a buscar los parámetros que le permitan estar lo máscausalidad), vamos a buscar los parámetros que le permitan estar lo máscerca posible de los datos.Está claro que si uno de los modelos es incompleto (por ejemplo, si sesupone que dos variables son independientes aunque estas no lo sean)supone que dos variables son independientes aunque estas no lo sean)la distribución de probabilidad que se representará será más pobre que larealidad.Por lo tanto cualquiera que sean los parámetros utilizados estaPor lo tanto, cualquiera que sean los parámetros utilizados, estadistribución estará más allá de la distribución empírica (constatada en losdatos), que los derivados de un modelo que no consideran la hipótesis dela independencia de estas dos variablesla independencia de estas dos variables.El método de aprendizaje puede entonces utilizarse para comparar dosmodelos.Finalmente considerando que el número de modelos de causalidadesFinalmente, considerando que el número de modelos de causalidadesque vinculan un cierto número de variables es finito, igual si este esgrande, se puede entonces pensar en la ayuda de un experto.

20(c) ASLOtoño 2015

Page 21: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje, IVp jSe podría entonces construir un modelo únicamente a partir de los datos,buscando simplemente entre todos los posible modelos aquel quebuscando simplemente entre todos los posible modelos aquel querepresente mejor la realidad,Vamos ahora a presentar los principios de los métodos utilizados enestos dos tipos de aprendizaje:estos dos tipos de aprendizaje:

Aprendizaje de parámetros. Dada la estructura de una red (es decir, el grafosubyacente) encontrar el mejor conjunto de parámetros (es decir lassubyacente), encontrar el mejor conjunto de parámetros (es decir, lasdiferentes probabilidades condicionales utilizadas en el grafo) para considerarlos datos observados.Aprendizaje de estructura. Sin ninguna hipótesis sobre la estructura de la red,p j g p ,buscar aquella, que una vez que se han proporcionado los mejores parámetros,considere lo mejor posible los datos observados.

A continuación se presentará un ejemplo de cada tipo de aprendizaje.

21(c) ASLOtoño 2015

Page 22: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje de parámetros, Ip j pPara comprender el método, generalmente utilizado para el aprendizajede parámetros comencemos por un ejemplo bastante simplede parámetros, comencemos por un ejemplo bastante simple.En primer lugar, recordemos que entendemos por parámetro unaprobabilidad.Supongamos que tenemos un clavo de tapicería y buscamos estimar laSupongamos que tenemos un clavo de tapicería y buscamos estimar laprobabilidad de que caiga ya sea sobre su cabeza, o ya sea de lado,como se muestra en la siguiente figura.Consideramos además q e el lado pila corresponde al caso c ando elConsideramos, además, que el lado pila corresponde al caso cuando elclavo cae de cabeza. Deseamos calcular la probabilidad de obtener pila,que denotaremos como θ. Supongamos también que hemos observado ppilas y c caraspilas y c caras.

22(c) ASLOtoño 2015

Page 23: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje de parámetros, IIp j pEl método de estimación más clásico de θ, consiste simplemente enmedir la frecuencia de los lados pilas y de considerar:medir la frecuencia de los lados pilas, y de considerar:

E t lt d d t d ácp

p+

Este resultado puede encontrarse de una manera un poco máselaborada. Como no conocemos esta probabilidad, estimamos a priorique esta sigue una cierta distribución p(θ).La probabilidad de obtener p pilas y c caras, eventos que denotaremosX(p, c) para θ esta dada por:

cppcpCcpXp )1()|),(( θθθ −⋅= +

Aplicando la regla de inversión de Bayes, la distribución de probabilidad aposteriori de θ, considerando este evento, es:

cpCcpp )()|),(( θθθ +

pos e o de θ, co s de a do es e e e o, es

)()|),(()),(|( θθθ pcpXpkcpXp ⋅⋅=

23(c) ASLOtoño 2015

Page 24: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje de parámetros, IIIp j psea )()1()),(|( θθθθ pcpXp cp ⋅−⋅=

k es una constante de normalización que garantiza que

1)()1(1

=⋅⋅−⋅∫ θθθθ dpk cp

La esperanza matemática de θ, según esta distribución a posteriori,depende de la distribución a priori p(θ).

)()(0∫ p

p p p( )Si p(θ) era, por ejemplo, una distribución uniforme, se tiene (después deciertos cálculos que se dejan al lector realizarlos como tarea) el resultadoclásico: pE )(θ

Sin embargo es interesante utilizar para p(θ) una distribución particular

cppE+

=)(θ

Sin embargo, es interesante utilizar para p(θ) una distribución particular,llamada “distribución de Dirichlet”, que se escribe como:

βα θθλθ )1()( −⋅⋅=p

24(c) ASL

θθλθ )1()(p

Otoño 2015

Page 25: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje de parámetros, IVp j pEl interés de esta distribución radica en el hecho de que la distribución aposteriori obtenida a partir de una distribución de Dirichlet es tambiénposteriori obtenida a partir de una distribución de Dirichlet, es tambiénuna distribución de Dirichlet. Aquí, sería simplemente:

βα θθθ ++ −⋅⋅= cpkcpXp )1()),(|(

La esperanza matemática de θ sería entonces:αθ +

=pE )(

La elección de los parámetros α y β iniciales se efectúa gracias a las

βαθ

+++=

cpE )(

La elección de los parámetros α y β iniciales se efectúa gracias a lasconsideraciones sobre la varianza de la distribución de Dirichlet, quepermite estabilizar la estimación de los parámetros en el caso donde elnúmero de ejemplos es bajo.ú e o de eje p os es bajoRetenemos sin embargo, que la esperanza matemática de θ tiendeigualmente hacia después de un gran numero de tiradas al azar.

cpp+

25(c) ASLOtoño 2015

Page 26: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Caso general, IgSea una red bayesiana constituida de los nodos {X1, X2,…, Xn}. Cadanodo se supone que toma valores discretosnodo se supone que toma valores discretos.Sea igualmente una base de ejemplos D constituida de la medida decada una de las Xi para un cierto número de ejemplos N.Adoptamos entonces las siguientes notaciones Si X es un nodo seAdoptamos entonces las siguientes notaciones. Si Xi es un nodo, sedenota:ri el número de sus posibles estados;C l j t d d d d l j t d l ibl t d táCi el conjunto de sus padres, donde el conjunto de los posibles estados estáindexado por j.

Se denota igualmente θijk la probabilidad para que Xi este en el estado k, condicionalmente en el caso de que el conjunto de sus padres este en elcondicionalmente en el caso de que el conjunto de sus padres este en el estado j.Si adoptamos además la siguiente hipótesis:

L b d j l D f ti t d d d i tLa base de ejemplos D efectivamente se produce por una red de una ciertaestructura, denotada como BS, y se dice que es completa.Los parámetros θijk son independientes entre ellos, y se distribuyen siguiendouna ley de Dirichlet

26(c) ASL

una ley de Dirichlet.

Otoño 2015

Page 27: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Caso general, IIgSe puede demostrar entonces que:

kkN α+

donde:ijij

ijkijkSijk N

NBDE

αα

θ++

=),|(

Nijk es el número de ejemplos en la base D, tales que Xi se encuentra en elestado k y entonces sus padres están en el estado j.Nij es el número de ejemplos en la base D, tales que los padres del nodo Xiestán en el estado j independientemente del estado de este nodoestán en el estado j, independientemente del estado de este nodo

l t d l á t θ l di t ib ió d Di i hl t i i i l

( )1.ir

ij ijkkN N

==∑

αijk es el exponente del parámetro θijk en la distribución de Dirichlet inicial, y

.1∑ =

= ir

k ijkij αα

A pesar de la apariencia algo compleja de estos cálculos, vemos que losvalores adoptados son similares a las frecuencias relativas en la base dedatos D.

27(c) ASLOtoño 2015

Page 28: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Aprendizaje de estructurap jEl siguiente tipo de aprendizaje asume que la base de datos observadaproviene efectivamente de una distribución representada por una redproviene efectivamente de una distribución representada por una redbayesiana de estructura conocida.Si no se está seguro de que esta estructura es la mejor posible (el casode dos modelos concurrentes) la primera pregunta que surge esde dos modelos concurrentes), la primera pregunta que surge escomparar dos hipótesis de estructura.

CriterioCriterioEl criterio más clásico utilizado para comparar dos distribuciones es lamedida de Kullback-Leibler:

Esta medida puede por lo tanto utilizarse para comparar la distribución

∑ ⋅=x xP

xPxPPPD)(')(log)()',(

s a ed da puede po o a o u a se pa a co pa a a d s buc óempírica obtenida a partir de los datos, y la distribución deducida de lared bayesiana que busca probar la estructura.

28(c) ASLOtoño 2015

Page 29: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Búsqueda de estructuras restringidas, Iq gSe ha demostrado que, en general, el problema de aprendizaje deestructura en una red bayesiana es NP-completoestructura en una red bayesiana es NP completo.Sin embargo, en la búsqueda de la estructura entre un subconjunto deestructuras, a veces es posible encontrar la estructura óptima de esteconjuntoconjunto.Esto es cierto en particular si la estructura es un árbol. Un resultado quedata de los años 60’s (C. K. Chow y C. N. Liu) muestra que el árbolóptimo (en el sentido de la medida de Kullback-Leibler) puedeóptimo (en el sentido de la medida de Kullback-Leibler) puedeencontrarse simplemente calculando las medidas de información mutuaentre dos variables sobre la base de ejemplos:

∑ ji xxp )(

Una vez que se han adoptado estas medidas, se construye la red bajo laf d á b l l l d i f ió b l

∑ ⋅⋅=

ji xx ji

jijiji xpxp

xxpxxpXXI

, )()(),(

log),(),(

forma de un árbol tal que la suma de información mutua sobre los arcosque la componen sea máxima (este árbol puede encontrarse con unalgoritmo muy simple).

29(c) ASLOtoño 2015

Page 30: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Búsqueda de estructuras restringidas, IIq gEste resultado puede generalizarse a los poliárboles.Por ejemplo explicamos cómo una versión adaptada de este resultadoPor ejemplo, explicamos cómo una versión adaptada de este resultadose utilizó para construir sistemas de clasificación.Supongamos que tenemos una base de datos que contiene las variables{X X X }{X1, X2,..., Xn}.Para cada uno de los ejemplos de la base de datos, se dispone tambiénde su clase C.Cada uno de los Xi, así como C toman valores discretos.Se calculan las medidas de información mutua condicionalmente a laclase como: cxxp )|(

Se busca enseguida el árbol que posee la suma máxima de esta

∑ ⋅⋅=

cxx ji

jijiji

jicxpcxp

cxxpcxxpCXXI

,, )|()|()|,(

log),,()|,(

Se busca enseguida el árbol que posee la suma máxima de estainformación a lo largo de sus arcos, y se construye entonces la siguientered bayesiana:

30(c) ASLOtoño 2015

Page 31: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Búsqueda de estructuras restringidas, IIIq g

A continuación, se calculan los parámetros de red directamente, ya sea apartir del método explicado anteriormente, o simplemente a partir de lasfrecuenciasfrecuencias.Este algoritmo ha mostrado mejores resultados que los métodostradicionales de clasificación.

31(c) ASLOtoño 2015

Page 32: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Búsqueda: el caso general, Iq gEn el caso general, es decir si no se impone ninguna restricción a laestructura el problema es relativamente complejo (difícil)estructura, el problema es relativamente complejo (difícil).Para diez variables, hay cerca de 4 × 1018 posibles estructuras!Es por esto que los algoritmos implementados (propuestos) sonesencialmente algoritmos de búsqueda iterativa sub óptima!esencialmente algoritmos de búsqueda iterativa sub-óptima!Uno de los algoritmos más conocido, llamado K2 fue propuesto porCooper en 1992, agrega progresivamente arcos y conserva un arco quef e añadido si este mejora el desempeño de la red sig iendo na métricafue añadido si este mejora el desempeño de la red siguiendo una métricadeterminada.Gráficamente se muestra en la siguiente figura, cómo este algoritmo

t l f X X X D é d h b i i i d dconstruye el grafo X1 → X2 → X3. Después de haber iniciado con una redsin arco, K2 intenta agregar el arco X1 → X2. Como este arco mejora elrendimiento, se mantiene. Luego K2 intenta añadir el arco X1 → X3 ydespués el arco X Xdespués el arco X2 → X3.Este último es el que obtiene la mejor puntuación, en relación con lamétrica dada, y así sucesivamente.

32(c) ASLOtoño 2015

Page 33: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Principio del algoritmo de aprendizaje K2p g p j

33(c) ASLOtoño 2015

Page 34: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Modelos continuosTodos los métodos que hemos estudiado suponen que las variablesutilizadas son discretasutilizadas son discretas.En el estado actual de la investigación, las redes bayesianas noconsideran el problema de las variables continuas.Este aspecto puede considerarse de la siguiente manera:Este aspecto puede considerarse de la siguiente manera:

ya sea discretizando las variables;o bien suponiendo una forma de distribución (por ejemplo Gausiana). Así, losparámetros que el experto debe obtener o aprender a partir de los datos sonparámetros que el experto debe obtener o aprender a partir de los datos sonlos parámetros de la distribución continua, en lugar de considerar lasprobabilidades individuales de cada valor discreto.

Debe reconocerse que la mayor parte de la investigación actual utilizaDebe reconocerse que la mayor parte de la investigación actual utilizamás bien la primera opción y descartan completamente el problema delas distribuciones continuas de variables.

34(c) ASLOtoño 2015

Page 35: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Relación con otros métodos, ISe han podido demostrar relaciones formales entre las redes bayesianasy otras técnicas en el área de la clasificación en particular para losy otras técnicas, en el área de la clasificación, en particular para losárboles de decisión, y las redes neuronales.La equivalencia formal entre las redes neuronales y las redesbayesianas propuesta por Michael Jordan de la Universidad de Berkeleybayesianas, propuesta por Michael Jordan de la Universidad de Berkeley,es particularmente interesante.Si una red neuronal es una función continua de sus entradas X hacia sussalidas Y se considera a la red de neuronas como una distribución desalidas Y, se considera a la red de neuronas como una distribución deprobabilidad condicional P(Y | X).Consideremos por lo tanto una neurona utilizando la función sigmoidecomo la función de transferencia:como la función de transferencia:

∑+=

⋅−i ii xwe

y1

1

Si se considera la neurona en el estudio de un problema de clasificaciónbinaria, “y” puede ser interpretada como la probabilidad de que estaneurona tome el valor 1.

35(c) ASLOtoño 2015

Page 36: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Relación con otros métodos, IIDe la misma manera, se puede interpretar una red de neuronas comouna red bayesiana:una red bayesiana:

Cada unidad oculta es una unidad binaria de salida Si, donde la probabilidad detomar el valor 1 está condicionada por las neuronas previas denotadas comopai (padres de la neurona i) y está dada por: 1i

La ley de distribución de unión del conjunto de neuronas es un producto de

∑+==

−i

jij pawii

epaSP

.1

1)|1(

y j pfunciones sigmoidales.

Sin embargo, esta representación se utiliza poco de forma práctica en laactualidad, debido a las siguientes razones:g

Las arquitecturas completamente conectadas de redes neuronales provocanque los algoritmos de inferencia sean totalmente ineficaces y, más aún, elaprendizaje de las redes bayesianas.Los algoritmos de aprendizaje en las redes bayesianas no consideran (o soloun poco) las variables ocultas, que son la parte “poderosa” de las redesneuronales.

36(c) ASLOtoño 2015

Page 37: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

Relación con otros métodos, IIILos beneficios de esta representación, tan pronto como sean operativos,serán muchos como por ejemplo:serán muchos, como por ejemplo:

la integración del conocimiento explícito en las redes neuronales, ola investigación en un marco de trabajo unificado de las redes neuronales conel fin de optimizar funciones de utilidad de cualquier forma y especialmenteel fin de optimizar funciones de utilidad de cualquier forma y especialmenteaquellas que presentan discontinuidades. (Consultar, David MacKay,“Information theory, inference and learning algorithms”, Cambridge UniversityPress, 2003.)

Resaltamos que la investigación en el marco del aprendizaje bayesiano,se desarrolla también para la selección de modelos de clasificación o deprevisión, en particular los modelos neuronales.Este enfoque bayesiano del aprendizaje, que se presentaráposteriormente, permite abordar los problemas de hiper-parametrizaciónde los modelos, de selección de las entradas, o de la consideración delos datos faltantes.

37(c) ASLOtoño 2015

Page 38: Introducción a los algoritmos (Redes Bayesianas)asanchez/bayesiana/AlgoritmosRB.pdf · 2015-07-16 · Supongamos que tenemos una red bayesiana (G, p), por ejemplo una de las cuatro

BibliografiagG. Cooper, “Computational complexity of probabilistic inference using Bayesian beliefnetworks”, Artificial Intelligence, 42(2), pp 393-405, 1990.

G. Cooper y E. Hersovits, “A bayesian method for the induction of probabilistic networksfrom data”, Machine Learging, Vol. 9, pp. 309-347, 1992.

J. Pearl, “Probabilistic reasoning in intelligent systems”, Morgan Kaufmann, 1988.

Richard E. Neapolitan, “Learning Bayesian networks”, Prentice Hall, 2003.

Página Web de Judea Pearl: http://bayes.cs.ucla.edu/jp_home.html

F J “B i t k d d i i h ” S i V l 2001F. Jensen, “Bayesian networks and decision graphs”, Springer-Verlag, 2001.

D. Heckerman, “A tutorial on learning with bayesian networks”,ftp://ftp research microsoft com/pub/tr/tr-95-06 pdfftp://ftp.research.microsoft.com/pub/tr/tr-95-06.pdf

Michael I. Jordan, “Why the logistic function? A tutorial discussion on probabilities andneural networks”, Technical Report 9503, 1995.

38(c) ASL

p

Otoño 2015