Redes Bayesianas
Redes Bayesianas
Redes Bayesianas
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Redes</strong> <strong>Bayesianas</strong><br />
Pedro Larrañaga<br />
Departamento de Ciencias de la Computación e Inteligencia Artificial<br />
Universidad del País Vasco<br />
http://www.sc.ehu.es/isg/<br />
Universidad de La Laguna · Universidad de verano · Adeje, 26 julio 2002<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.1/91
Esquema de la charla<br />
• 1. Introducción<br />
• 2. Independencia condicional<br />
• 3. Factorización<br />
• 4. Propagación de la evidencia<br />
• 5. Simulación<br />
• 6. Aprendizaje estructural<br />
• 7. Aplicaciones en biomedicina<br />
• 8. Algoritmos de estimación de distribuciones<br />
• 9. Selección de genes en microarrays de ADN<br />
• 10. Conclusiones<br />
• Referencias<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.2/91
1. Introducción<br />
• Limitación de los sistemas basados en reglas<br />
• Intuición humana, cierto paralelismo con la probabilidad<br />
• A finales de la década de los 80 se superaron las dificultades<br />
computacionales que limitaban los primitivos sistemas<br />
probabilísticos<br />
• Concepto de independencia condicional<br />
• Los modelos gráficos probabilísticos permiten construir sistemas<br />
con características de razonamiento –humano versus animal<br />
(visión, voz, movimiento, ....)–<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.3/91
1. Introducción<br />
• <strong>Redes</strong> <strong>Bayesianas</strong> (Pearl, 1988)<br />
• <strong>Redes</strong> Gaussianas (Shachter y Kenley, 1989)<br />
• <strong>Redes</strong> de Markov<br />
• Modelos ocultos de Markov<br />
• Modelos log-lineales<br />
• Grafos cadena<br />
• ...<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.4/91
1. Introducción<br />
• Grafos acíclicos dirigidos (DAGs)<br />
• Nodos: variables<br />
• Arcos: dependencias condicionales<br />
• Representación utilizada para codificar incertidumbre en<br />
sistemas expertos<br />
• En un lugar central entre los siguientes dos casos extremos<br />
• p(x) = p(x 1 , x 2 , . . . , x n ) necesita 2 n − 1 parámetros<br />
• p(x) = ∏ n<br />
i=1 p(x i) necesita n parámetros<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.5/91
1. Introducción<br />
X 1<br />
X 2<br />
X 3<br />
X 4<br />
X 5<br />
p(x )= 0.20<br />
1<br />
p(x<br />
2<br />
x<br />
1<br />
)= 0.80<br />
p(x<br />
2<br />
x<br />
1<br />
)= 0.20<br />
p(x x )= 0.20<br />
3<br />
1<br />
p(x x )= 0.05<br />
3<br />
1<br />
p(x x ,x )= 0.30<br />
4 2<br />
p(x x ,x )= 0.25<br />
4 2<br />
p(x x ,x )= 0.15<br />
4 2<br />
p(x x ,x )= 0.80<br />
4 2<br />
5 3<br />
3<br />
3<br />
3<br />
3<br />
p(x x )= 0.95<br />
p(x x )= 0.11<br />
5 3<br />
p(x 1 , x 2 , x 3 , x 4 , x 5 ) = p(x 1 ) · p(x 2 | x 1 ) · p(x 3 | x 1 ) · p(x 4 | x 2 , x 3 ) · p(x 5 | x 3 )<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.6/91
1. Introducción<br />
• X = (X 1 , . . . , X n ) un conjunto de variables aleatorias<br />
• x i valor de X i (la i-ésima componente de X)<br />
• y = (x i ) Xi ∈Y<br />
valor de Y ⊆ X<br />
• El modelo gráfico probabilístico para X proporciona una<br />
factorización de la distribución de probabilidad conjunta ρ(x)<br />
• p(x) caso discreto<br />
• f(x) caso continuo<br />
• Dos componentes<br />
• estructura S (DAG)<br />
• un conjunto de densidades locales<br />
• S representa un conjunto de independencias condicionales sobre<br />
tripletas de variables de X<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.7/91
2. Independencia condicional<br />
Distribución de probabilidad conjunta de (X, Y, Z) : p(x, y, z)<br />
x y z p(x, y, z)<br />
0 0 0 0.12<br />
0 0 1 0.18<br />
0 1 0 0.04<br />
0 1 1 0.16<br />
1 0 0 0.09<br />
1 0 1 0.21<br />
1 1 0 0.02<br />
1 1 1 0.18<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.8/91
2. Independencia condicional<br />
Distribuciones marginales: p(x), p(y), p(z)<br />
p(x) = ∑ y,z<br />
p(x, y, z)<br />
p(y) = ∑ x,z<br />
p(x, y, z)<br />
p(z) = ∑ x,y<br />
p(x, y, z)<br />
x p(x) y p(y) z p(z)<br />
0 0.5 0 0.6 0 0.27<br />
1 0.5 1 0.4 1 0.73<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.9/91
2. Independencia condicional<br />
Marginales de orden 2: p(x, y), p(x, z), p(y, z)<br />
p(x, y) = ∑ z<br />
p(x, y, z)<br />
p(x, z) = ∑ y<br />
p(x, y, z)<br />
p(y, z) = ∑ x<br />
p(x, y, z)<br />
x y p(x, y) x z p(x, z) y z p(y, z)<br />
0 0 0.3 0 0 0.16 0 0 0.21<br />
0 1 0.2 0 1 0.34 0 1 0.39<br />
1 0 0.3 1 0 0.11 1 0 0.06<br />
1 1 0.2 1 1 0.39 1 1 0.34<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.10/91
2. Independencia condicional<br />
Probabilidades condicionadas:<br />
p(x|y) = p(x,y)<br />
p(y)<br />
p(x|z) = p(x,z)<br />
p(z)<br />
p(y|z) = p(y,z)<br />
p(z)<br />
y x p(x|y) z x p(x|z) z y p(y|z)<br />
0 0 0.5 0 0 16/27 0 0 21/27<br />
0 1 0.5 0 1 11/27 0 1 6/27<br />
1 0 0.5 1 0 34/73 1 0 39/73<br />
1 1 0.5 1 1 39/73 1 1 34/73<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.11/91
2. Independencia condicional<br />
• X e Y independientes sii:<br />
• p(x|y) = p(x) ∀ x, y ó<br />
• p(x, y) = p(x) · p(y) ∀ x, y<br />
En el ejemplo X e Y son independientes pero X y Z son<br />
dependientes<br />
• X condicionalmente independiente de Y dado Z,<br />
I(X, Y |Z), sii:<br />
• p(x|y, z) = p(x|z) ∀ x, y, z ó<br />
• p(x, y|z) = p(x|z) · p(y|z) ∀ x, y, z<br />
En el ejemplo, existen x, y, z tal que p(x|y, z) ≠ p(x|z), por<br />
tanto X no es condicionalmente independiente de Y dado Z<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.12/91
2. Independencia condicional<br />
p(x|y, z) =<br />
p(x, y, z)<br />
p(y, z)<br />
y z x p(x|y, z)<br />
0 0 0 12/21<br />
0 0 1 9/21<br />
0 1 0 18/39<br />
0 1 1 21/39<br />
1 0 0 4/6<br />
1 0 1 2/6<br />
1 1 0 16/34<br />
1 1 1 18/34<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.13/91
2. Independencia condicional<br />
p(x|z) =<br />
p(x, z)<br />
p(z)<br />
z x p(x|z)<br />
0 0 16/27<br />
0 1 11/27<br />
1 0 34/73<br />
1 1 39/73<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.14/91
2. Independencia condicional<br />
¿I(X, Y |Z)?<br />
• Basado en el criterio de separación<br />
• (i) Obtener el menor grafo conteniendo X, Y y Z y<br />
sus ancestros<br />
• (ii) Moralizar el subgrafo obtenido:<br />
• Añadir una arista entre padres con hijos comunes<br />
• Transformar los arcos en aristas<br />
• (iii) En el grafo no dirigido obtenido I(X, Y |Z) sii Z<br />
bloquea todo camino entre X e Y<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.15/91
2. Independencia condicional<br />
X 1<br />
X<br />
2<br />
X<br />
3<br />
X<br />
6<br />
X<br />
X<br />
4 5<br />
¿I(X 1 , X 5 |X 3 )?; ¿I(X 1 , X 6 |X 5 )?;<br />
¿I(X 4 , X 5 |{X 1 , X 3 })?; ¿I(X 4 , {X 5 , X 6 }|X 1 )?<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.16/91
3. Factorización<br />
Factorización de la función de densidad generalizada:<br />
• P ai conjunto de padres de X i en S<br />
ρ(x) = ρ(x 1 , x 2 , . . . , x n ) =<br />
n∏<br />
ρ(x i |pa S i )<br />
i=1<br />
• Suponiendo que la distribución de probabilidad depende de un conjunto finito de<br />
parámetros<br />
θ S = (θ 1 , . . . , θ n )<br />
ρ(x|θ S ) =<br />
n∏<br />
ρ(x i |pa S i , θ i)<br />
i=1<br />
• Modelo gráfico probabilístico M = (S, θS )<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.17/91
3. Factorización<br />
i) Árbol ρ(x|θ S ) =<br />
n∏<br />
ρ(x i |x j(i) , θ i )<br />
X j(i) es el (posiblemente vacío) padre de X i<br />
n∏<br />
ii) Poliárbol ρ(x|θ S ) = ρ(x i |x j1(i) , . . . , x jr(i) , θ i )<br />
i=1<br />
i=1<br />
{X j1(i) , . . . , X jr(i) } es el (posiblemente vacío) conjunto de padres de X i , los<br />
cuales son mútuamente independientes:<br />
r∏<br />
ρ(x j1(i) , x j2(i) , . . . , x jr(i) ) = ρ(x jk(i) ) i = 1, . . . , n<br />
k=1<br />
n∏<br />
iii) Múltiplemente conectados ρ(x|θ S ) = ρ(x i |pa S i , θ i)<br />
i=1<br />
a) Tree structure b) Polytree c) Multiply connected<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.18/91
3. Factorización<br />
Red Bayesiana<br />
• Para todo i, X i es discreta<br />
• x 1 i , . . . , xr i<br />
i<br />
denotan los r i posibles valores de X i<br />
• p(x k i |paj,S i<br />
, θ i ) = θ ijk es la probabilidad condicional de que<br />
X i esté en su k-ésimo valor, dado que el conjunto de sus<br />
padres está en su j-ésimo valor<br />
• q i = ∏ X g ∈P a i<br />
r g denota el número de posibles<br />
instanciaciones distintas de P a i<br />
• Parámetros locales θ i = (((θ ijk ) r i<br />
k=1 )q i<br />
j=1 ) <strong>Redes</strong> <strong>Bayesianas</strong> – p.19/91
3. Factorización<br />
Componentes<br />
a) La estructura S (DAG) refleja el conjunto de<br />
independencias condicionales entre las<br />
variables<br />
b) Distribuciones a priori θ i−k para todos los<br />
nodos raíces p(x k i |∅, θ i)<br />
c) Probabilidades condicionadas, θ ijk , para<br />
todos los nodos dadas todas las posibles<br />
combinaciones de los padres p(x k i |paj,S i , θ i )<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.20/91
¢ <br />
¤<br />
¢ ¥<br />
¤<br />
+<br />
+<br />
<br />
<br />
<br />
+<br />
+<br />
<br />
8 4 7)<br />
4<br />
4<br />
4<br />
8 4 6)<br />
<br />
4<br />
4<br />
4<br />
4<br />
4<br />
4<br />
+<br />
4<br />
4<br />
4<br />
+<br />
<br />
¢<br />
<br />
A<br />
¡<br />
¡<br />
¢<br />
<br />
%54 + 3<br />
$ 3<br />
+<br />
3. Factorización<br />
¡ ¥<br />
<br />
<br />
<br />
¡£<br />
¡¢£<br />
6<br />
6<br />
%543<br />
) +<br />
%543<br />
& '<br />
*)<br />
!#"<br />
$ %& ('<br />
¨ © §<br />
¦<br />
¨ © §<br />
¦<br />
% 43<br />
6<br />
) + 6<br />
6<br />
%543<br />
) +<br />
%543<br />
& '<br />
& '<br />
)<br />
*)<br />
!#,<br />
$ %& ('<br />
<br />
<br />
¨ © §<br />
¦<br />
+ ) 7<br />
7 %543<br />
7 + )<br />
7) 4 8<br />
+<br />
%543<br />
7<br />
) 7<br />
7 8 4 7)<br />
%543<br />
& ) & *)<br />
!#-<br />
$ %& *)<br />
+ ) 6<br />
6 %543<br />
6 + )<br />
6) 4 8<br />
+<br />
%543<br />
6<br />
) 6<br />
6 8 4 6)<br />
%543<br />
& / *)<br />
& ) & . )<br />
¨ © §<br />
¦<br />
+ ) 6<br />
6 8 4 6)<br />
%543<br />
6 + )<br />
6) 4 8<br />
+<br />
%543<br />
6<br />
) 6<br />
6 8 4 6)<br />
%543<br />
& 0)<br />
& ) & )<br />
6<br />
6 8 4 6)<br />
%543<br />
6 + )<br />
6) 4 8<br />
+<br />
%543<br />
6<br />
) 6<br />
6 8 4 6)<br />
%543<br />
& / +<br />
& ) & . )<br />
43<br />
9 8 4 7<br />
%<br />
43<br />
9 8 4 7 + )<br />
%<br />
9 8 4 7 + )<br />
%543<br />
9 8 4 7 + )<br />
%543<br />
& +<br />
& ) & 0)<br />
!21<br />
$ %& 0)<br />
¡DC<br />
<br />
<br />
0B<br />
= @<br />
?¥<br />
>¡<br />
=<br />
¤ ¡ <br />
4. Propagación de la evidencia<br />
• Métodos exactos (Lauritzen y Spiegelhalter,<br />
1988)<br />
• Métodos aproximados<br />
• Muestreo lógico probabilístico (Henrion,<br />
1988)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.22/91
4. Propagación de la evidencia<br />
Métodos exactos (Lauritzen y Spiegelhalter,<br />
1988)<br />
• Moralización del DAG<br />
• Triangulación del grafo moral<br />
• Creación del grafo de juntura<br />
• Creación del árbol de juntura<br />
• Modificación del algoritmo de propagación de<br />
la evidencia para árboles al árbol de juntura<br />
El único paso problemático en el proceso de<br />
DAG a árbol de juntura es la triangulación<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.23/91
5. Simulación<br />
Probabilistic Logic Sampling (PLS) Henrion, 1988<br />
Dado un orden ancestral, π, en los nodos<br />
Para j = 1, 2, . . . , N<br />
Para i = 1, 2, . . . , n<br />
x π(i) ← generar un valor de p(x π(i) |pa π(i) )<br />
• Un orden ancestral es aquel en el que las variables P ai son anteriores a la<br />
variable X i<br />
• Los casos son generados variable a variable<br />
• Una variable es muestreada una vez que lo han sido sus variables padres<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.24/91
6. Aprendizaje estructural<br />
• Aprendizaje estructural ≡ inducción del<br />
modelo ≡ búsqueda del modelo<br />
• Dos aproximaciones<br />
• Detección de independencias<br />
condicionales<br />
• Score + búsqueda<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.25/91
6. Aprendizaje estructural<br />
Detección de independencias condicionales:<br />
• A partir de tests de independencia<br />
condicional entre tripletas de variables<br />
obtener una lista de independencias y<br />
dependencias condicionales<br />
• Obtener la estructura de red Bayesiana que<br />
mejor refleje las independencias y<br />
dependencias condicionales anteriores<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.26/91
6. Aprendizaje estructural<br />
Score:<br />
• Máxima verosimilitud penalizada: log p(D | S, θ) − pe(N)dim(S)<br />
n∑<br />
q i ∑<br />
r i ∑<br />
i=1 j=1 k=1<br />
N ijk log N ijk<br />
N ij<br />
− pe(N)dim(S)<br />
• Nijk denota el número de casos en D en los cuales X i toma el valor x k i y<br />
P a i toma su j-ésimo valor; N ij =<br />
• dim(S) =<br />
∑ n<br />
i=1 q i(r i − 1)<br />
r i ∑<br />
k=1<br />
N ijk<br />
• pe(N) =<br />
⎧<br />
⎨<br />
⎩<br />
1 AIC, Akaike, 1974<br />
1<br />
2 log N BIC, Schwarz, 1978 <strong>Redes</strong> <strong>Bayesianas</strong> – p.27/91
6. Aprendizaje estructural<br />
Búsqueda:<br />
• Búsqueda voraz<br />
• Heurísticos: Enfriamiento Estadístico,<br />
Algoritmos Genéticos, Búsqueda Tabu,<br />
Colonias de Hormigas, .....<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.28/91
6. Aprendizaje estructural<br />
Algoritmo K2. Cooper y Herskovits (1992)<br />
• Un conjunto de n variables discretas Xi (i = 1, . . . , n), con r i posibles valores<br />
• D base de datos con N casos<br />
• BS estructura de Red Bayesiana<br />
• P ai padres de la variable X i<br />
• qi número de instanciaciones diferentes de P a i<br />
• Nijk número de casos en D para los cuales X i toma su k-ésimo valor y P a i está<br />
en su j-ésima instanciación<br />
• Nij = ∑ r i<br />
k=1 N ijk<br />
P (B S , D) = P (B S )<br />
n∏<br />
q i ∏<br />
i=1 j=1<br />
(r i − 1)!<br />
(N ij + r i − 1)!<br />
r i ∏<br />
k=1<br />
(N ijk )! = P (B S )<br />
n∏<br />
g(i, P a i ).<br />
i=1<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.29/91
6. Aprendizaje estructural<br />
• Se necesita un orden entre las variables<br />
• Hace falta una cota superior del número de padres para cada variable<br />
• Todas las estructuras son igualmente probables al inicio<br />
• Para cada nodo K2 busca el conjunto de padres que maximiza:<br />
g(i, P a i ) =<br />
q i ∏<br />
j=1<br />
(r i − 1)!<br />
(N ij + r i − 1)!<br />
r i ∏<br />
k=1<br />
N ijk !<br />
• K2 comienza asumiendo que un nodo no tiene padres<br />
• En cada paso K2 añade de manera incremental aquel nodo padre cuya inclusión<br />
mas incrementa g(i, P a i )<br />
• K2 para cuando la inclusión de un padre simple no incrementa g(i, P ai )<br />
• K2 es un algoritmo greedy<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.30/91
6. Aprendizaje estructural<br />
Diferentes aproximaciones<br />
• Teniendo en cuenta el objetivo<br />
• Obtención de interdependencias entre las<br />
variables<br />
• Clasificación supervisada<br />
• Clasificación no supervisada<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.31/91
6. Aprendizaje estructural<br />
Clasificación supervisada con redes <strong>Bayesianas</strong><br />
• Problema:<br />
• Dada una base de datos con N casos caracterizados por n variables<br />
predictoras, X 1 , . . . , X n , y la variable clase, C, se trata de inducir un modelo<br />
clasificatorio<br />
X 1 ... X i ... X n C<br />
x 1 x 1 1<br />
... x 1 i<br />
... x 1 n c 1<br />
... ... ... ... ... ... ...<br />
x j x j 1<br />
... x j i<br />
... x j n c j<br />
... ... ... ... ... ... ...<br />
x N x N 1<br />
... x N i<br />
... x N n c N <strong>Redes</strong> <strong>Bayesianas</strong> – p.32/91
6. Aprendizaje estructural<br />
Clasificación supervisada con redes <strong>Bayesianas</strong><br />
• Métricas:<br />
• Indirectas: máxima verosimilitud penalizada, verosimilitud marginal, basadas<br />
en la teoría de la información<br />
• Directas: porcentage de bien clasificados, validado de manera honesta<br />
(entrenamiento–testeo, k–fold cross–validation, bootstrapping)<br />
• Estructura:<br />
• Naïve–Bayes<br />
• Semi Naïve–Bayes<br />
• Naïve–Bayes aumentado a árbol<br />
• Manto de Markov de C<br />
• <strong>Redes</strong> <strong>Bayesianas</strong> múltiplemente conectadas<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.33/91
6. Aprendizaje estructural<br />
Clasificación supervisada con redes <strong>Bayesianas</strong><br />
Naïve–Bayes (Duda and Hart, 1973)<br />
C<br />
X 1<br />
X 2<br />
.......... X p<br />
• Las variables predictoras son condicionalmente independientes dada la variable<br />
clase<br />
• c ∗ = arg máx c<br />
p(C = c) ∏ p<br />
i=1 p(X i = x i | C = c)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.34/91
6. Aprendizaje estructural<br />
Clasificación supervisada con redes <strong>Bayesianas</strong><br />
Semi naïve–Bayes (Kononenko, 1991)<br />
C<br />
C<br />
X 1<br />
X 2<br />
X 3<br />
X 4<br />
X 1<br />
& X 3<br />
X 4<br />
C<br />
X & X & X & X<br />
1 2 3 4<br />
• Nuevas variables se construyen por inducción constructiva<br />
• Algunas variables pueden ser eliminadas<br />
p(C = c | X 1 = x 1 , ..., X 4 = x 4 ) ∝<br />
p(C = c)p((X 1 = x 1 , X 3 = x 3 ) | C = c)p(X 4 = x 4 | C = c)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.35/91
6. Aprendizaje estructural<br />
Clasificación supervisada con redes <strong>Bayesianas</strong><br />
C<br />
X 1<br />
X 2<br />
X 3<br />
X 4<br />
X 5<br />
• Adaptación del algoritmo de Chow–Liu (1968)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.36/91
6. Aprendizaje estructural<br />
Clasificación supervisada con redes <strong>Bayesianas</strong><br />
Manto de Markov de C (Pearl, 1987)<br />
π π ... π<br />
1 2 r<br />
P 1 H 1<br />
... P w1 H 1<br />
C P 1 H m<br />
... P wm H m<br />
H 1<br />
H 2<br />
... H m<br />
• Manto de Markov para una variable representa el conjunto de variables de las que<br />
depende dicha variable<br />
• Padres, hijos y padres de los hijos<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.37/91
6. Aprendizaje estructural<br />
Clasificación no supervisada con redes <strong>Bayesianas</strong><br />
• Problema:<br />
• Dada una base de datos con N casos caracterizados por n variables<br />
predictoras, Y 1 , . . . , Y n , se trata de asignar cada caso a un cluster C<br />
• C variable oculta con todas las entradas consideradas como perdidas<br />
Y 1 ... Y i ... Y n C<br />
x 1 y 1 1<br />
... y 1 i<br />
... y 1 n c 1 ?<br />
... ... ... ... ... ... ...<br />
x j y j 1<br />
... y j i<br />
... y j n c j ?<br />
... ... ... ... ... ... ...<br />
x N y N 1<br />
... y N i<br />
... y N n c N ?<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.38/91
6. Aprendizaje estructural<br />
Clasificación no supervisada con redes <strong>Bayesianas</strong><br />
• X = (X 1 , . . . , X n+1 ) = (C, Y )<br />
• x l = (x l 1, . . . , x l n+1) = (c l , y l )<br />
• c l denota el cluster (desconocido) para el l–ésimo caso<br />
• y l = (y1, l . . . , yn) l denota el valor de las variables predictoras<br />
en el l–ésimo caso<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.39/91
6. Aprendizaje estructural<br />
Clasificación no supervisada con redes <strong>Bayesianas</strong><br />
Algoritmo EM (Expectation–Maximization) (Dempster et al., 1977)<br />
• Expectation step: estimar los datos perdidos a partir de sus<br />
valores esperados. Estos se obtienen utilizando las estimaciones<br />
actuales de los parámetros<br />
• Maximization step: usando la complexión de los datos perdidos<br />
como datos completos, obtener los estimadores máximo<br />
verosímiles de los parámetros<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.40/91
6. Aprendizaje estructural<br />
Clasificación no supervisada con redes <strong>Bayesianas</strong><br />
Algoritmo EM algorithm (Expectation–Maximization) (Dempster et al.,<br />
1977)<br />
• Aplicando el Expectation step a redes <strong>Bayesianas</strong> (Lauritzen,<br />
1995) lo directo es partir el caso<br />
• Es habitual completar el caso:<br />
• Por medio de su valor modal (versión determinista)<br />
• Por el valor obtenido de una simulación (versión estocástica)<br />
• EM estructural (Friedman, 1997)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.41/91
6. Aprendizaje estructural<br />
Clasificación no supervisada con redes <strong>Bayesianas</strong><br />
• Estructura:<br />
• Naïve–Bayes (Cheeseman and Stutz, 1995)<br />
• Semi Naïve–Bayes (Peña et al., 1999)<br />
• Naïve–Bayes extendido a árbol (Peña et al., 2000)<br />
• Multired Bayesiana (Peña et al., 2002)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.42/91
6. Aprendizaje estructural<br />
Clasificación no supervisada con redes <strong>Bayesianas</strong><br />
Multired Bayesiana para clustering (Peña et al., 2002)<br />
Y 5<br />
Y =y 5<br />
C<br />
Y 1<br />
Y =y<br />
1 2<br />
5 5 5<br />
Y 2<br />
Y 3<br />
Y 4<br />
Y 1<br />
Y 2<br />
C<br />
Y 3<br />
Y 4<br />
Estructura de una multired Bayesiana para clustering con X = (C, Y) =<br />
(C, Y 1 , Y 2 , Y 3 , Y 4 , Y 5 ) con variable distinguida Y 5<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.43/91
7. Aplicaciones en biomedicina<br />
• 7.1 Introducción<br />
• 7.2 Predicción de la supervivencia en cáncer<br />
de mama<br />
• 7.3 Multiclasificador de dos niveles para<br />
supervivencia en UCI<br />
• 7.4 Clustering geográfico de la incidencia del<br />
cáncer<br />
• 7.5 Predicción de la estructura secundaria de<br />
las proteinas<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.44/91
7.1 Introducción<br />
• Medicina dominio con incertidumbre<br />
intrínseca<br />
• Diagnosis<br />
• Pronóstico<br />
• Bioinformática dominio con problemas muy<br />
atractivos<br />
• Microarrays de ADN<br />
• <strong>Redes</strong> genéticas<br />
• Predicción de la estructura de las proteinas<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.45/91
7.2 Predicción de la supervivencia en cáncer de mama<br />
• Problema: predicir la supervivencia de<br />
enfermos al año, a los tres años y a los cinco<br />
años de haber sido diagnosticados de cáncer<br />
de mama (Larrañaga et al., 1997)<br />
• Cáncer de mama el más frecuente<br />
• Sexo femenino: de cada cuatro casos de<br />
cáncer, uno es de cáncer de mama<br />
• Registro de Cáncer del País Vasco (1990) el<br />
ratio de incidencia del cáncer de mama es de<br />
52,5/100, 000<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.46/91
7.2 Predicción de la supervivencia en cáncer de mama<br />
• Base de datos: 1000 casos diagnosticados<br />
en el Instituto Oncológico de Guipúzcoa en el<br />
periodo de 1 Enero de 1983 a 31 de<br />
Diciembre de 1988<br />
• 4 variables predictoras:<br />
• Edad (4)<br />
• Estadío (4)<br />
• Tamaño (4)<br />
• Número de nodos positivos (4)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.47/91
7.2 Predicción de la supervivencia en cáncer de mama<br />
Porcentage de bien clasificados con 10–fold<br />
cross–validation<br />
1 año 3 años 5 años<br />
Naïve–Bayes 93.7 79.0 70.9<br />
Naïve–Bayes a árbol 93.7 79.0 70.9<br />
Manto de Markov 92.0 78.8 71.5<br />
Red Bayesiana 94.4 80.4 72.0<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.48/91
7.3 Multiclasificador de dos niveles para supervivencia en UCI<br />
• Combinación de clasificadores en dos niveles<br />
• Primer nivel: 9 clasificadores de clasificación<br />
automática (ID3, C4.5, naïve–Bayes,<br />
naïve–Bayes tree, IB1, IB4, oneR, cn2,<br />
Ripper) aplicados a la base de datos original<br />
• Segundo nivel: red Bayesiana inducida a<br />
partir de la base de datos con 9 variables<br />
predictoras (conteniendo los resultados de<br />
los clasificadores) y la variable clase<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.49/91
7.3 Multiclasificador de dos niveles para supervivencia en UCI<br />
Base de datos:<br />
• UCI del Hospital Universitario de las Islas Canarias<br />
• Registros de 1210 pacientes (996 sobreviven, 214 fallecen)<br />
• 12 variables predictoras:<br />
• Métodos médicos estandards: APACHE II, MPM II, SAPS II<br />
• Información rutinaria: sexo, edad, lugar residencia, fecha de<br />
admisión, fecha de readmisión, causa, dias en el hospital<br />
antes de ser enviado a la UCI, código de diagnóstico,<br />
subcódigo de diagnóstico<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.50/91
7.3 Multiclasificador de dos niveles para supervivencia en UCI<br />
Base de datos para los 9 algoritmos de<br />
clasificación supervisada<br />
APACHE II ... Edad ... Sub. diagnóstico Supervivencia<br />
x 1 x 1 1 ... x 1 i ... x 1 12 s 1<br />
... ... ... ... ... ... ...<br />
x j x j 1 ... x j i ... x j 12 s j<br />
... ... ... ... ... ... ...<br />
x 1210 x 1210<br />
1 ... x 1210<br />
i ... x 1210<br />
12 s 1210<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.51/91
7.3 Multiclasificador de dos niveles para supervivencia en UCI<br />
Base de datos de la que se induce la red<br />
Bayesiana<br />
ID3 ... IB1 ... Ripper Supervivencia<br />
x 1 s 1 ID3 ... s 1 IB1 ... s 1 Ripper s 1<br />
... ... ... ... ... ... ...<br />
x j s j ID3<br />
... s j IB1<br />
... s j Ripper<br />
s j<br />
... ... ... ... ... ... ...<br />
x 1210 s 1210<br />
ID3 ... s 1210<br />
IB1 ... s 1210<br />
Ripper s 1210<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.52/91
7.3 Multiclasificador de dos niveles para supervivencia en UCI<br />
Porcentage de bien clasificados obtenidos por los 9 clasificadores y el multiclasificador<br />
basado en redes <strong>Bayesianas</strong><br />
Clasificador<br />
Porcentage<br />
ID3 73,64 ± 1,55<br />
C4.5 79,59 ± 1,85<br />
naïve–Bayes 75,64 ± 1,53<br />
naïve–Bayes tree 62,64 ± 2,64<br />
IB1 64,30 ± 2,84<br />
IB4 63,63 ± 1,22<br />
oneR 84,55 ± 1,35<br />
cn2 77,52 ± 1,67<br />
multiclasificador 87,27 ± 1,07<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.53/91
7.4 Clustering geográfico de la incidencia del cáncer<br />
• Problema<br />
• Base de datos conteniendo la incidencia<br />
del cáncer estandarizada por la edad en<br />
cada pueblo de la Comunidad Autónoma<br />
del País Vasco<br />
• Periodo de estudio: de 1986 a 1994<br />
• Las 6 categorias de cáncer más frecuentes<br />
por sexo<br />
• Analizar la distribución geográfica del<br />
tumor maligno<br />
• Clusters de pueblos (Peña et al., 2001)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.54/91
7.4 Clustering geográfico de la incidencia del cáncer<br />
Mapas mostrando los clusters geográficos asumiendo K = 2<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.55/91
7.5 Predicción de la estructura secundaria de las proteinas<br />
• Proteina: ristra de aminoácidos<br />
• Jerarquía en las estructuras de las proteinas:<br />
• Estructura primaria: cadena de aminoácidos<br />
• Estructura secundaria: obtenida a partir de la secuencia de aminoácidos por<br />
uniones de hidrógeno<br />
• Alpha helix<br />
• Beta helix<br />
• Coil<br />
• Estructura terciara: organización tridimensional<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.56/91
7.5 Predicción de la estructura secundaria de las proteinas<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.57/91
7.5 Predicción de la estructura secundaria de las proteinas<br />
• La función de la proteina determinada por su<br />
estructura terciaria<br />
• La estructura terciaria se predice a partir de<br />
la secundaria<br />
• Predicción de la estructura secundaria se<br />
puede ver como un problema de clasificación<br />
supervisada<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.58/91
7.5 Predicción de la estructura secundaria de las proteinas<br />
• Experimentos con una base de datos de 513<br />
aminoácidos no redundantes (Cuff and<br />
Barton, 1999)<br />
• Modelo naïve–Bayes:<br />
• Variables predictoras: ventana de 9<br />
aminoácidos a partir de 2 posiciones a la<br />
derecha del aminoácido a predecir<br />
• 10 fold–cross–validation: 68,59 %<br />
• Alpha helix: 75,00 %<br />
• Beta helix: 36,00 %<br />
• Coil: 73,00 %<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.59/91
8. Algoritmos de estimación de distribuciones<br />
Motivación<br />
• Algoritmos Evolutivos<br />
• Varios parámetros a determinar<br />
• Dificultad en la predicción de las<br />
poblaciones a través de las generaciones<br />
• Building blocks<br />
• Relación entre las variables (linkage<br />
learning)<br />
• Problemas engañosos<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.60/91
8. Algoritmos de estimación de distribuciones<br />
Nueva aproximación a la computación evolutiva<br />
• Basada en poblaciones<br />
• Sin operadores de cruce ni mutación<br />
• En cada generación se estima de los individuos seleccionados, la distribución de<br />
probabilidad subyacente a los mismos<br />
• Muestreando esta distribución se obtiene la siguiente población<br />
• Se repiten los dos pasos anteriores hasta el criterio de terminación<br />
EDA (Estimation of Distribution Algorithms) Mühlenbein y Paaβ, 1996<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.61/91
8. Algoritmos de estimación de distribuciones<br />
máx h(x) =<br />
6∑<br />
i=1<br />
x i con x i = 0, 1<br />
(a) D 0 p 0 (X i = 1) = 0,5 para i = 1, . . . , 6<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.62/91
8. Algoritmos de estimación de distribuciones<br />
X 1 X 2 X 3 X 4 X 5 X 6 h(x)<br />
1 1 0 1 0 1 0 3<br />
2 0 1 0 0 1 0 2<br />
3 0 0 0 1 0 0 1<br />
4 1 1 1 0 0 1 4<br />
5 0 0 0 0 0 1 1<br />
6 1 1 0 0 1 1 4<br />
7 0 1 1 1 1 1 5<br />
8 0 0 0 1 0 0 1<br />
9 1 1 0 1 0 0 3<br />
10 1 0 1 0 0 0 2<br />
11 1 0 0 1 1 1 4<br />
12 1 1 0 0 0 1 3<br />
13 1 0 1 0 0 0 2<br />
14 0 0 0 0 1 1 2<br />
15 0 1 1 1 1 1 5<br />
16 0 0 0 1 0 0 1<br />
17 1 1 1 1 1 0 5<br />
18 0 1 0 1 1 0 3<br />
19 1 0 1 1 1 1 5<br />
20 1 0 1 1 0 0 3<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.63/91
8. Algoritmos de estimación de distribuciones<br />
(b) |D0 Se|<br />
= 10 truncación X 1 X 2 X 3 X 4 X 5 X 6<br />
1 1 0 1 0 1 0<br />
4 1 1 1 0 0 1<br />
6 1 1 0 0 1 1<br />
7 0 1 1 1 1 1<br />
11 1 0 0 1 1 1<br />
12 1 1 0 0 0 1<br />
15 0 1 1 1 1 1<br />
17 1 1 1 1 1 0<br />
18 0 1 0 1 1 0<br />
19 1 0 1 1 1 1<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.64/91
8. Algoritmos de estimación de distribuciones<br />
(c)<br />
p 1 (x) = p 1 (x 1 , . . . , x 6 ) =<br />
6∏<br />
i=1<br />
p(x i |D Se<br />
0 )<br />
modelo a aprender<br />
ˆp(X 1 = 1|D Se<br />
0 ) = 0,7<br />
ˆp(X 2 = 1|D Se<br />
0 ) = 0,7<br />
ˆp(X 3 = 1|D Se<br />
0 ) = 0,6<br />
ˆp(X 4 = 1|D Se<br />
0 ) = 0,6<br />
ˆp(X 5 = 1|D Se<br />
0 ) = 0,8<br />
ˆp(X 6 = 1|D0 Se ) = 0,7 <strong>Redes</strong> <strong>Bayesianas</strong> – p.65/91
8. Algoritmos de estimación de distribuciones<br />
(d) Muestreando p 1 (x) D 1<br />
X 1 X 2 X 3 X 4 X 5 X 6 h(x)<br />
1 1 1 1 1 1 1 6<br />
2 1 0 1 0 1 1 4<br />
3 1 1 1 1 1 0 5<br />
4 0 1 0 1 1 1 4<br />
5 1 1 1 1 0 1 5<br />
6 1 0 0 1 1 1 4<br />
7 0 1 0 1 1 0 3<br />
8 1 1 1 0 1 0 4<br />
9 1 1 1 0 0 1 4<br />
10 1 0 0 1 1 1 4<br />
11 1 1 0 0 1 1 4<br />
12 1 0 1 1 1 0 4<br />
13 0 1 1 0 1 1 4<br />
14 0 1 1 1 1 0 4<br />
15 1 1 1 1 1 1 6<br />
16 0 1 1 0 1 1 4<br />
17 1 1 1 1 1 0 5<br />
18 0 1 0 0 1 0 2<br />
19 0 0 1 1 0 1 3<br />
20 1 1 0 1 1 1 5<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.66/91
8. Algoritmos de estimación de distribuciones<br />
(e) |D1 Se|<br />
= 10 truncación X 1 X 2 X 3 X 4 X 5 X 6<br />
1 1 1 1 1 1 1<br />
2 1 0 1 0 1 1<br />
3 1 1 1 1 1 0<br />
5 1 1 1 1 0 1<br />
6 1 0 0 1 1 1<br />
8 1 1 1 0 1 0<br />
9 1 1 1 0 0 1<br />
15 1 1 1 1 1 1<br />
17 1 1 1 1 1 0<br />
20 1 1 0 1 1 1<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.67/91
8. Algoritmos de estimación de distribuciones<br />
(f) Repetir<br />
• Seleccionar Se individuos de D l−1 obteniendo<br />
D Se<br />
l−1<br />
• Aprender la distribución de probabilidad de<br />
los seleccionados<br />
p l (x) =<br />
6∏<br />
i=1<br />
p(x i |D Se<br />
l−1)<br />
• Muestrear p l (x) obteniendo D l<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.68/91
QPNO<br />
YX<br />
R<br />
WR<br />
T<br />
S<br />
h<br />
m<br />
i<br />
g<br />
e<br />
QPNO<br />
XW<br />
R<br />
bc<br />
R<br />
WR<br />
T<br />
S<br />
xŽx<br />
i<br />
gf<br />
x<br />
\ m<br />
i<br />
g<br />
x<br />
QnN i ‰<br />
‡h<br />
†…<br />
h<br />
x<br />
x<br />
x<br />
x<br />
QPNO<br />
bc<br />
R<br />
YX<br />
R<br />
i<br />
Œ<br />
‹W<br />
T<br />
S<br />
}<br />
H<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.69/91<br />
8. Algoritmos de estimación de distribuciones<br />
E(F<br />
GIK<br />
GML<br />
GIH<br />
GIJ<br />
R<br />
RTVU<br />
XW<br />
S<br />
R<br />
R<br />
R<br />
TWU<br />
S<br />
R<br />
W<br />
S<br />
UZU[U<br />
UZU[U<br />
UZU[U<br />
UZU[U<br />
UZU[U<br />
UZU[U<br />
Y U<br />
R<br />
S<br />
\<br />
R<br />
QoqP nDp<br />
nhoO<br />
\hk<br />
ldN<br />
hjik<br />
QNf dN<br />
E ]^`_0a H<br />
G(K<br />
GL<br />
G(H<br />
G(J<br />
TWU<br />
S<br />
R<br />
R<br />
S<br />
TTVU<br />
R<br />
R<br />
W<br />
R<br />
UZU[U<br />
UZU[U<br />
UZU[U<br />
UZU[U<br />
UZU[U<br />
UZU[U<br />
Y U<br />
R<br />
S<br />
dN<br />
R<br />
„N<br />
lg<br />
hik<br />
np ƒk<br />
ldN<br />
hjik<br />
QNf dN<br />
Qhgˆ<br />
i ‡P<br />
np<br />
QqP<br />
nhoO<br />
hk<br />
j‚<br />
E_<br />
t u<br />
GIJ<br />
r s<br />
s<br />
t u GIH r<br />
G(K<br />
GL<br />
G(H<br />
G(J<br />
s<br />
u x<br />
GK t v5w x5y<br />
v r<br />
TTVU<br />
R<br />
R<br />
R<br />
R<br />
}{|<br />
‰z_<br />
l†<br />
Qhk<br />
dP‰…<br />
TWU<br />
S<br />
R<br />
W<br />
S<br />
UŠU[U<br />
UŠU[U<br />
UŠU[U<br />
UŠU[U<br />
UŠU[U<br />
UŠU[U<br />
s<br />
t u GL er b U<br />
S<br />
S<br />
\<br />
S<br />
]^€_0a<br />
E<br />
z_<br />
}~ {0| z_<br />
{0|
8. Algoritmos de estimación de distribuciones<br />
EDA<br />
D 0 ← Generar N individuos (la población inicial) al azar<br />
Repetir para l = 1, 2, . . . hasta la condición de parada<br />
D Se<br />
l−1 ← Seleccionar Se ≤ N individuos de D l−1 siguiendo<br />
un método de selección<br />
p l (x) = p(x|Dl−1 Se ) ← Estimar la distribución de probabilidad<br />
de los individuos seleccionados<br />
D l ← Muestrear N individuos (la nueva población) de p l (x)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.70/91
8. Algoritmos de estimación de distribuciones<br />
Clasificación de los algoritmos de estimación de<br />
distribuciones:<br />
• Sin dependencias<br />
• Dependencias bivariadas<br />
• Dependencias múltiples (redes <strong>Bayesianas</strong>)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.71/91
8. Algoritmos de estimación de distribuciones<br />
Sin dependencias<br />
• UMDA (Univariate Marginal Distribution<br />
Algorithm) (Mühlenbein, 1998)<br />
p l (x) =<br />
n∏<br />
i=1<br />
p l (x i ) =<br />
n∏<br />
i=1<br />
p(x i |D Se<br />
l−1)<br />
• El modelo de probabilidad es fijo<br />
• p l (x i ) –frecuencias relativas– se calculan<br />
en cada generación<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.72/91
8. Algoritmos de estimación de distribuciones<br />
Dependencias bivariadas<br />
• MIMIC (Mutual Information Maximization for Input Clustering) (De Bonet y col.,<br />
1997)<br />
p π l (x) = p l(x i1 |x i2 ) · p l (x i2 |x i3 ) · . . . · p l (x in−1 |x in ) · p l (x in )<br />
donde π = (i 1 , i 2 , . . . , i n ) es una permutación de los índices 1, . . . , n<br />
• En cada generación tratar de encontrar la permutación π que minimiza la<br />
distancia de Kullback-Leibler entre p π l<br />
(x) y ˆp(x|DSe<br />
l−1 )<br />
• Algoritmo voraz basado en la teoría de la información<br />
• Buscar la variable Xin con menor entropía<br />
• En cada paso seleccionar –del conjunto de variables no elegidas hasta el<br />
momento– la variable cuya entropía condicional media con respecto a la<br />
variable seleccionada en el paso anterior es mínima<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.73/91
8. Algoritmos de estimación de distribuciones<br />
Dependencias múltiples (redes <strong>Bayesianas</strong>)<br />
• EBNA Estimation of Bayesian Network<br />
Algorithm (Etxeberria y Larrañaga, 1999)<br />
• Uso de redes <strong>Bayesianas</strong> para aprender y<br />
simular p l (x|D Se<br />
l−1 )<br />
• M 0 es un DAG sin ningún arco<br />
p(X i = x i ) = 1 r i<br />
, i = 1, . . . , n<br />
• La búsqueda voraz comienza con el<br />
modelo obtenido en la generación previa<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.74/91
8. Algoritmos de estimación de distribuciones<br />
• Algoritmos de estimación de distribuciones en optimización<br />
• Problema de la mochila<br />
• Problema del viajante del comercio<br />
• Problema de planificación de trabajos<br />
• Macheo inexacto de grafos<br />
• Algoritmos de estimación de distribuciones en aprendizaje automático<br />
• Selección de variables<br />
• Pesado de variables en K-NN<br />
• Inducción de reglas<br />
• Clustering particional<br />
• Ajuste de pesos en redes neuronales<br />
• Inferencia abductiva en redes <strong>Bayesianas</strong><br />
• Aprendizaje estructural de redes <strong>Bayesianas</strong><br />
• Triangulación del grafo moral<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.75/91
9. Selección de variables en microarrays de ADN<br />
• Tecnología de microarrays de ADN<br />
• Medición del nivel de expresión genética de miles de genes a la vez<br />
• Problemas muy atractivos<br />
• Almacenamiento<br />
• Análisis<br />
• Interpretación<br />
• Análisis<br />
• Clustering<br />
• Clasificación supervisada<br />
• Modelos de interacción entre genes (redes genéticas)<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.76/91
9. Selección de variables en microarrays de ADN<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.77/91
9. Selección de variables en microarrays de ADN<br />
X 1 ... X i ... X n C<br />
1 x 1 1<br />
... x 1 i<br />
... x 1 n c 1<br />
... ... ... ... ... ... ...<br />
j x j 1<br />
... x j i<br />
... x j n c j<br />
... ... ... ... ... ... ...<br />
R x R 1<br />
... x R i<br />
... x R n c R<br />
• n número de genes (n = 2000, n = 7129)<br />
• R tamaño de muestra (R = 62, R = 72)<br />
• Xi i-ésimo gen con i = 1, . . . , n<br />
• x<br />
j<br />
i<br />
nivel de expresión del i-ésimo gen para el caso j-ésimo<br />
• c j ∈ {0, 1} para todo j = 1, . . . , R<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.78/91
9. Selección de variables en microarrays de ADN<br />
• Motivación<br />
• Selección de los genes relevantes para la clasificación<br />
• Objetivo<br />
• Inducción del modelo naïve–Bayes con mayor porcentaje de acierto<br />
• Método: aproximación wrapper<br />
• Aproximación directa<br />
• El paradigma clasificatorio se tiene en cuenta<br />
• El problema de selección de subconjuntos de variables –Feature Subset<br />
Selection (FSS)– como un problema de búsqueda en un espacio con<br />
cardinalidad 2 n<br />
• Los subconjuntos candidatos son evaluados por el porcentaje de bien<br />
clasificados con el modelo naïve–Bayes inducido a partir de las variables<br />
que forman parte del subconjunto<br />
• Cualquier heurístico de búsqueda se puede usar<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.79/91
9. Selección de variables en microarrays de ADN<br />
• Dos bases de datos de expresión genética<br />
• Cancer de colon (Ben–Dor et al., 2000)<br />
n = 2000, R = 62, C = { si, no }<br />
• Leucemia (Golub et al., 1999)<br />
n = 7129, R = 72, C = { AML, ALL }<br />
• Naïve–Bayes<br />
• Variables predictivas discretas:<br />
X i =<br />
⎧<br />
⎨<br />
⎩<br />
0 si x i ≤ mediana,<br />
1 si x i > mediana<br />
• Variables predictivas continuas:<br />
para todo i = 1, . . . , n y c: f Xi | C=c(x i | c) ❀ N (µ c i , σc i )<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.80/91
9. Selección de variables en microarrays de ADN<br />
• EDAs<br />
• UMDA<br />
• N = 100, Se = 50<br />
• 4 inicializaciones<br />
• Estimación de la bondad: leave–one–out<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.81/91
9. Selección de variables en microarrays de ADN<br />
• Cuatro inicializaciones para los EDAs<br />
• Init-0: Zi ❀ B(1, 0,5) para todo i = 1, · · · , n<br />
• Init-A, Init-B, Init-C basados en los resultados de un algoritmo de selección<br />
secuencial hacia delante (SFS) que selecciona n sel variables<br />
• Init-A: Zi ❀ B(1, n sel<br />
) para todo i = 1, · · · , n<br />
n<br />
• Init-B: Zi ❀ B(1, p i ) con p i ∝ bondad del modelo naïve–Bayes que tiene<br />
como única variable predictiva X i ( ∑ n<br />
i=1 p i = n sel )<br />
• Init-C: Zi ❀ B(1, p i ) con<br />
p i ∝<br />
⎧<br />
⎨<br />
⎩<br />
incremento en bondad<br />
1−SFS bondad<br />
n−n sel<br />
si X i es seleccionada por el SFS<br />
si X i no es seleccionada por el SFS<br />
( ∑ n<br />
i=1 p i = n sel )<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.82/91
9. Selección de variables en microarrays de ADN<br />
Mejores resultados con cada inicialización y correspondientes número de variables<br />
DATOS TIPO INICIA. BONDAD VAR.<br />
init-0 67.74 985<br />
disc init-A 95.16 13<br />
70.97 init-B 95.16 13<br />
Colon init-C 91.93 5<br />
init-0 74.19 1069<br />
cont init-A 98.39 6<br />
53.23 init-B 98.39 10<br />
init-C 95.16 3<br />
init-0 45.8 3402<br />
disc init-A 100 8<br />
63.89 init-B 98.61 15<br />
Leucemia init-C 98.61 6<br />
init-0 76.39 3587<br />
cont init-A 100 10<br />
84.72 init-B 100 11<br />
init-C 98.61 4<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.83/91
10. Conclusiones<br />
• <strong>Redes</strong> <strong>Bayesianas</strong> paradigma modelizador<br />
de dominios con incertidumbre intrínseca<br />
• Razonamiento probabilista<br />
• Aprendizaje de redes <strong>Bayesianas</strong> a partir de<br />
bases de datos<br />
• Nueva herramienta de computación evolutiva:<br />
aprendizaje y simulación de redes<br />
<strong>Bayesianas</strong> en cada generación<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.84/91
Referencias<br />
• P. Larrañaga, C. Kuijpers, R. Murga, Y. Yurramendi (1996) Learning Bayesian<br />
network structures by searching for the best ordering with genetic algorithms.<br />
IEEE Transactions on System, Man and Cybernetics, Vol 26. No. 4, 487-493<br />
• P. Larrañaga, M. Poza, Y. Yurramendi, R. Murga, C. Kuijpers (1996) Structure<br />
learning of Bayesian networks by genetic algorithms: A performance analysis of<br />
control parameters. IEEE Transactions on Pattern Analysis and Machine<br />
Intelligence, Vol. 18. No. 9, 912-926<br />
• P. Larrañaga, C. Kuijpers, M. Poza, R. Murga (1997) Decomposing Bayesian<br />
networks by genetic algorithms. Statistics and Computing, Vol. 7. No. 1, 19-34<br />
• R. Etxeberria, P. Larrañaga, J.M. Pikaza (1997) Analysis of the behaviour of the<br />
genetic algorithms when searching Bayesian networks from data. Pattern<br />
Recognition Letters, Vol. 18, No. 11-13, 1269-1273<br />
• B. Sierra, P. Larrañaga (1998) Predicting the survival in malignant skin melanoma<br />
using Bayesian networks automatically induced by genetic algorithms. An<br />
empirical comparision between different approaches. Artificial Intelligence in<br />
Medicine, Vol. 14. No. 1-2, 215-230<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.85/91
Referencias<br />
• J. A. Lozano, P. Larrañaga (1998). Applying genetic algorithms to search for the<br />
best hierarchical clustering of a dataset. Pattern Recognition Letters 20, 911-918<br />
• P. Larrañaga, C. Kuijpers, R. Murga, I. Inza, S. Dizdarevich (1999) Evolutionary<br />
algorithms for the travelling salesman problem: A review of representations and<br />
operators. Artificial Intelligence Review, 13, 129–170<br />
• J. A. Lozano, P. Larrañaga, M. Graña, F. X. Albizuri (1999) Genetic algorithms:<br />
bridging the convergence gap. Theoretical Computer Science, 229, 11-22<br />
• J. M. Peña, J. A. Lozano, P. Larrañaga (1999) An empirical comparison of four<br />
initialization methods for the k-means algorithm. Pattern Recognition Letters, 20,<br />
1027–1040<br />
• C. González, J. A. Lozano, P. Larrañaga (2000) Analyzing the PBIL Algorithm by<br />
Means of Discrete Dynamical Systems, Complex Systems, Vol. 12, No. 4, 465–479<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.86/91
Referencias<br />
• B. Sierra, N. Serrano, P. Larrañaga, E. J. Plasencia, I. Inza, J. J. Jimenez, J. M. De<br />
la Rosa, M. J. Mora (2001) Using Bayesian networks in the construction of a<br />
bi-level multiclassifier. A case study using intensive care unit patients data Artificial<br />
Intelligence in Medicine, 22, 233–248<br />
• P. Larrañaga, R. Etxeberria, J. A. Lozano, J. M. Peña (2000). Combinatorial<br />
optimization by learning and simulation of Bayesian networks. Proceedings of the<br />
Sixteenth Conference on Uncertainty in Artificial Intelligence, 343–352<br />
• I. Inza, P. Larrañaga, R. Etxeberria, B. Sierra (2000) Feature Subset Selection by<br />
Bayesian networks based optimization. Artificial Intelligence, 123, 157–184<br />
• I. Inza, M. Merino, P. Larrañaga, J. Quiroga, B. Sierra, M. Girala (2001) Feature<br />
subset selection by genetic algorithms and estimation of distribution algorithms. A<br />
case study in the survival of cirrhotic patients treated with TIPS. Artificial<br />
Intelligence in Medicine, 23–2, 187–205<br />
• P. Larrañaga, J. A. Lozano (2001) (eds.) Estimation of Distribution Algorithms. A<br />
New Tool for Evolutionary Computation. Kluwer Academic Publishers<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.87/91
Referencias<br />
• J. M. Peña, J. A. Lozano, P. Larrañaga (2002) Learning recursive Bayesian<br />
multinets for clustering by means of constructive induction. Machine Learning, 47,<br />
63–89.<br />
• E. Bengoetxea, P. Larrañaga, I. Bloch, A. Perchant, C. Boeres (2002) Learning and<br />
simulation of Bayesian networks applied to inexact graph matching. Pattern<br />
Recognition. En prensa<br />
• I. Inza, B. Sierra, R. Blanco, P. Larrañaga (2002) Gene selection by sequential<br />
search wrapper approaches in microarray cancer class prediction. Journal of<br />
Intelligents and Fuzzy Systems. En prensa<br />
• R. Blanco, P. Larrañaga, I. Inza (2002) Learning Bayesian networks in the space of<br />
structures by estimation of ditribution algorithms. International Journal of Intelligent<br />
Systems. En prensa<br />
• C. González, J. A. Lozano, P. Larrañaga (2002) Mathematical modelling of UMDAc<br />
algorithm with tournament selection. Behavior on linear and quadratic functions.<br />
International Journal of Approximate Reasoning. En prensa<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.88/91
Referencias<br />
Información en Internet<br />
• http://bayes.stat.washington.edu/almond/belief.html<br />
• http://http.cs.berkeley.edu/˜murphyk/Bayes/bayes.html<br />
• http://www.afit.af.mil/Schools/EN/AI<br />
• http://www.auai.org/<br />
• http://www.cs.auc.dk/research/DSS/<br />
• http://www.maths.nott.ac.uk/hsss/<br />
• http://www.research.microsoft.com/research/dtg/<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.89/91
Referencias<br />
Software libre en Internet<br />
• http://www.ia.uned.es/˜elvira<br />
• http://hss.cmu.edu/html/departments/philosophy/TETRAD<br />
• http://http.cs.Berkeley.edu/˜murphyk/Bayes/bnsoft.html<br />
• http://kmi.open.ac.uk/projects/bkd<br />
• http://www.city.ac.uk/˜rgc<br />
• http://www.cs.cmu.edu/˜javabayes/Home/<br />
• http://www.mrc-bsu.cam.ac.uk/bugs/Welcome.html<br />
• http://www2.sis.pitt.edu/˜genie<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.90/91
Referencias<br />
Software comercial en Internet<br />
• HUGIN http://www.hugin.dk/<br />
• DXPRESS http://www.kic.com/<br />
• NETICA http://www.norsys.com/netica.html<br />
<strong>Redes</strong> <strong>Bayesianas</strong> – p.91/91