Las redes bayesianas son una alternativa para minería de datos, la cual tiene varias ventajas:
El obtener una red bayesiana a partir de datos es un proceso de aprendizaje,el cual se divide, naturalmente, en dos aspectos:
Las técnicas de aprendizaje estructural dependen del tipo de estructura de red: árboles, poliárboles y redes multicomectadas. Otra alternativa es combinar conocimiento subjetivo del experto con aprendizaje. Para ello se parte de la estructura dada por el experto, la cual se valida y mejora utilizando datos estadísticos.
Aprendizaje Paramétrico
El aprendizaje paramétrico consiste en encontrar los parámetros asociados a una estructra dada de una red bayesiana. Dichos parámetros consisten en las probabilidades a priori de los nodos raíz y las probabilidades condicionales de las demás variables, dados sus padres.
Si se conocen todas las variables, es fácil obtener las probabilidades requeridas. Las probabilidades previas corresponden a las marginales de los nodos raíz, y las condicionales se obtienen de las conjuntas de cada nodo con su(s) padre(s).
Para que se actualizen las probabilidades con cada caso observado, éstas se pueden representar como razones enteras, y actualizarse con cada observación. En el caso de un árbol, las fórmulas para modificar las probabilidades correspondientes son:
Probabilidades previas
Probabilidades condicionales
Donde
corresponde al número de casos totales,
,
los
índices de las variables,
,
los índices de las
variables observadas.
Aprendizaje Estructural
Naïve Bayes
Como vimos antes, el clasificar Bayesiano Naive (CBN) asume independencia entre los atributos dada la clase y su estructura ya esta dada, por lo que solo se tienen que aprender las probabilidades de los valores de los atributos dada la clase.
Una forma de mejorar la estructura de un CBN es añadiendo entre los nodos o atributos que tengan cierta dependencia. Existen dos estructuras básicas:
Otra forma es realizando operaciones locales hasta que no mejore la predicción:
Se pueden ir probando cada una de las opciones anteriores midiendo la
dependencia de los atributos dada la clase:
En base a lo anterior puede integrarse el siguiente algoritmo.
Algoritmo de Mejora Estructural:
Para evaluar las estructuras resultantes se pueden usar datos de prueba o una medida basada en MDL.
Árboles
El método para aprendizaje estructural de árboles se basa en
el algoritmo desarrollado por Chow y Liu (68) para aproximar una
distribución de probabilidad por un producto de probabilidades de
segundo orden, lo que corresponde a un árbol. La probabilidad
conjunta de
variables se puede representar (aproximar) como:
donde
es la causa o padre de
.
Se plantea el problema como uno de optimización y lo que se desea
es obtener la estructura en forma de árbol que más se aproxime
a la distribución ``real''. Para ello se utiliza una medida de la
diferencia de información entre la distribución real (
) y
la aproximada (
):
Entonces el objetivo es minimizar
. Para ello se puede definir
dicha diferencia en función de la información mutua entre
pares de variables, que se define como:
Se puede demostrar (Chow 68) que la diferencia de información es una función del negativo de la suma de las informaciones mutuas (pesos) de todos los pares de variables que consituyen el árbol. Por lo que encontrar el árbol más próximo equivale a encontrar el árbol con mayor peso. Basado en lo anterior, el algoritmo para determinar árbol Bayesiano óptimo a partir de datos es el siguiente:
El algoritmo NO provee la direccionalidad de los arcos, por lo que esta se puede asignar en forma arbitraria o utilizando semántica externa (experto).
Por ejemplo, para el ejemplo de la tabla 2.2 para jugar golf nos queda la tabla 8.1.
| No. | Var 1 | Var 2 | Info. mutua |
| 1 | temp. | ambiente | .2856 |
| 2 | juega | ambiente | .0743 |
| 3 | juega | humedad | .0456 |
| 4 | juega | viento | .0074 |
| 5 | humedad | ambiente | .0060 |
| 6 | viento | temp. | .0052 |
| 7 | viento | ambiente | .0017 |
| 8 | juega | temp. | .0003 |
| 9 | humedad | temp. | 0 |
| 10 | viento | humedad | 0 |
Poliárboles
Rebane y Pearl [89] extendieron el algoritmo de Chow y Liu para poliárboles. Para ello parten del esqueleto (estructura sin direcciones) obtenido con el algoritmo anterior y determinan las dirección de los arcos utilizando pruebas de dependencia entre tripletas de variables.
De esta forma se obtiene una red bayesiana en forma de poliárbol. En el caso de un poliárbol, la probabilidad conjunta es:
donde
es el
conjunto de padres de la variable
.
El algoritmo de Rebane y Pearl se basa en probar las relaciones de dependencia entre todas las tripletas de variables en el esqueleto. Dadas 3 variables, existen 3 casos posibles:
Los primeros dos casos son indistinguibles, pero el tercero es diferente, ya que las dos variables ``padre'' son marginalemente independientes. Entonces el algoritmo consiste en:
El algoritmo está restringido a poliárboles y no garantiza obtener todas las direcciones. Desde el punto de vista práctico, un problema es que generalmente no se obtiene independencia absoluta (información mutua cero), por lo que habría que considerar una cota empírica.
Redes Generales
Existen dos clases de métodos para el aprendizaje genérico de redes bayesianas, que incluyen redes multiconectadas. Éstos son:
Dentro de los métodos basados en ajsute y búsqueda, se generan diferentes estructuras y se evalúan respecto a los datos utilizando alguna medida de ajuste. Estos métodos tienen dos aspectos principales:
Existen varias medidas pero dos son las más utilizadas:
La medida MDL hace un compromiso entre la exactitud y la complejidad del modelo. La exactitud se estima midiendo la información mutua entre los atributos y la clase; y la complejidad contando el número de parámetros.
Una constante,
, en [0, 1], se utiliza para
balancear el peso de cada aspecto, exactitud contra
complejidad. Así, la medida de calidad está dada por:
Para determinar estos máximoa normalmente se considera una limitación en cuanto al número de padres máximo permitido por nodo.
La complejidad está dada por el número de parámetros requeridos
para representar el modelo, la cual se puede calcular con la siguiente
ecuación:
La exactitud se puede estimar en base al ``peso" de cada nodo, en
forma análoga a los pesos en el método de aprendizaje de
árboles. En este caso el peso de cada nodo se estima en base a
la información mutua con sus padres:
Para utilizar la medida MDL se puede hacer un hill-climbing iniciando con una estructura simple (por ejemplo un árbol construido con Chow-Liu) y agregando las ligas que mejoren la medida MDL hasta alcanzar un mínimo local.
Algoritmo - búsqueda de la mejor estructura:
Otra posibilidad es empezar con una estructura compleja y eliminar ligas que reduzcan la medida MDL hasta llegar a un mínimo local.
Una última posibilidad es combinar los dos enfoques.
A diferencia del enfoque basado en una medida global, el enfoque basado en pruebas de independiencia usa medidas de dependencia local entre subconjuntos de variables.
El caso más sencillo es el del algoritmo de Chow y Liu, en el cual se mide la información mutua entre pares de variables. A partir de estas medidas, como se vió previamente, se genera una red bayesiana en forma de árbol. Analizando dependencias entre tripletas de variables, el método se extiende a poliárboles.
Este enfoque se puede generalizar para el aprendizaje de redes multiconectadas, haciendo pruebas de dependencia entre subconjunto de variables, normalmente dos o tres variables. Por ejemplo, se puede continuar el método de Chow y Liu agregando más arcos aunque se formen ciclos, hasta un cierte umbral mínimo de información mutua.
La desventaja es que pueden generarse muchos arcos ``innecesarios'', por lo que se incorporan formas de luego eliminar arcos. Hay diferentes variantes de este enfoque que consideran diferentes medidas de dependencia y diferentes etrategias para eliminar arcos innecesarios.
Eduardo Morales 2009-04-17