Escalabilidad en los algoritmos de aprendizaje de redes bayesianas
Download
1 / 16

Escalabilidad en los Algoritmos de Aprendizaje de Redes Bayesianas - PowerPoint PPT Presentation


  • 124 Views
  • Uploaded on

Escalabilidad en los Algoritmos de Aprendizaje de Redes Bayesianas. ISL – Dpto de Informática –UCLM - Albacete. Motivación. La mayoría de los algoritmos de aprendizaje no pueden tratar con conjuntos grandes de datos y/o con un gran número de variables en el dominio

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Escalabilidad en los Algoritmos de Aprendizaje de Redes Bayesianas' - banyan


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Escalabilidad en los algoritmos de aprendizaje de redes bayesianas

Escalabilidad en los Algoritmos de Aprendizaje de Redes Bayesianas

ISL – Dpto de Informática –UCLM - Albacete


Motivaci n
Motivación Bayesianas

  • La mayoría de los algoritmos de aprendizaje no pueden tratar con conjuntos grandes de datos y/o con un gran número de variables en el dominio

  • Las bases de datos actuales permiten almacenar del orden de TeraBytes.

  • Como el costo es “bajo” se suele almacenar un gran número de variables

  • Incluso preseleccionando variables, existen problemas con un gran número de ellas

  • Llegan los “data streams”


Introducci n
Introducción Bayesianas

  • En cuanto a las bases de datos:

    • Estáticas

    • Dinámicas

  • En cuanto al modelo:

    • Modelo estático: el modelo se genera introduciendo conocimiento

    • Modelo dinámico: el modelo se modifica en función de la “tendencia” de los datos


Introducci n1
Introducción Bayesianas

  • ¿por qué diseñar nuevas técnicas?

    • A mayor tamaño, mayor precisión

    • Con tamaño pequeño  overfitting

    • Con muchas variables  Espacio poco poblado

  • ¿cuándo una base de datos es muy grande?

    • Desde el punto de vista de la “Minería de datos” significa a partir de 100Mb / 1Gb, dependiendo de número de variables

  • Def: Un algoritmo es escalable cuando es capaz de aprender un modelo a partir de bases de datos de cualquier tamaño (al menos tan rápido como su equivalente no escalable y con la misma eficacia)


Algoritmos de aprendizaje de rb escalabilidad trabajos previos
Algoritmos de aprendizaje de RB Escalabilidad: Trabajos previos

  • Utilización de algoritmos con técnicas de “divide y vencerás”

    • N. Friedman et al. Learning of Bayesian Network Structure from Massive Datasets: The "Sparse Candidate" Algorithm (1999).

    • R. Castelo and A. Siebes. Scaling Bayesian network discovery through incremental recovery. Technical Report INS-R9901, CWI, Amsterdam, (1999).

  • Utilización de técnicas de sub-muestreo

    • G. Hulten and P. Domingos. Mining complex models from arbitrarily large databases in constant time. ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. (2002).

    • N. Friedman and Z. Yakhini. On the complexity of learning Bayesian networks. UAI (1996).

  • Híbrido

    • G. Hulten, D. Chickering and D. Heckerman. Learning Bayesian networks from dependence networks: A preliminary study. W. On AI & Statistics (2003)


Objetivo
Objetivo previos

  • Diseñar algoritmos escalables para el aprendizaje de Redes Bayesianas:

    • Diseñar algoritmos escalables en anchura: Muchas variables, tamaño de los casos fijo

    • Diseñar algoritmos escalables en profundidad: Número de variables “manejable”, tamaño de los casos incluso infinito

    • Diseñar algoritmos escalables en anchura / profundidad: Combinación de los dos anteriores


Algoritmo elbn en anchura
Algoritmo ELBN en anchura previos

  • Tanto el trabajo de Friedman et al. Y el de Castelo et al. Necesitan un orden de cálculos de estadísticos de orden 2

  • Igualmente los dos trabajos se basan en métodos de búsqueda local (HC)

  • Friedman et al. Utiliza medidas “estándares” en el aprendizaje. Castelo et al. Utilizan una media de correlación para realizar la división


Algoritmo elbn en anchura1
Algoritmo ELBN en anchura previos

  • El método desarrollado está muy relacionado con el de Castelo et al.

  • La idea de ambos es realizar agrupamiento de variables “lo más independientes” posible unos de otros y “lo más dependientes” posibles dentro de cada grupo, para dividir el espacio de búsqueda.

  • Ambos utilizan técnicas de Clustering

  • Una vez realizado el agrupamiento  búsquedas independientes en cada grupo

  • Una vez que tenemos una RB por cada grupo, se realiza una composición de los resultados


Algoritmo elbn en anchura2
Algoritmo ELBN en anchura previos

  • Diferencias:

    • Castelo et al. Utilizan una técnica de clustering jerárquico  no hace especificar el nº de grupos

    • Nosotros utilizamos un algoritmo basado en PAM (centroides)  necesita “a priori” especificar un nº de grupos

    • Castelo et al. Utiliza una medida de correlación, nosotros utilizamos medidas “estándares” en LBN

  • En principio ambos utilizan la misma técnica de composición de resultados



Algoritmo de agrupamiento
Algoritmo de agrupamiento previos

  • En principio se fija un número de grupos k

  • Se eligen k variables aleatorias como centroides

  • Para el resto de variables se mira el grupo donde “cae más cerca”, con la medida

  • Una vez formados los k grupos, entonces se reeligen los nuevos centroides de cada grupo

  • Como nuevo centroide se elige aquel de su grupo que esté más cercano al resto de variables del grupo y se reitera el proceso un nº de iteraciones


Inicializaci n
Inicialización previos

  • Podemos fijar un nº k de grupos o podemos plantearnos que un algoritmo previo nos lo fije

  • Podemos diseñar un algoritmo que además de fijar un nº de grupos nos de una inicialización de estos grupos

  • Algoritmo de inicialización:

    • Elegimos un nodo al azar como centroide del primer grupo.

    • Para el resto de variables hasta que todas este procesadas:

      • Si d(c_i,x_j) > 0, para algún c_i, entonces x_j entra en el grupo de c_i de mayor medida (mayor d(c_i,x_j)

      • Si d(c_i,x_j) < 0, para todo c_i, entonces se fija x_j como nuevo centroide para otro grupo.

  • Una vez inicializado los grupos procedemos igual que antes


Ejemplo alarm k 2
Ejemplo: ALARM k=2 previos

N: 620 i: 10


Ejemplo alarm k sin fijar
Ejemplo: ALARM k sin fijar previos

N: 500 i: 12


Conclusiones
Conclusiones previos

  • Es fundamental considerar tamaños muy grandes de bases de datos

  • Los algoritmos de aprendizaje de RB deterioran rápidamente con este tipo de bases de datos

  • Por consiguiente, es necesario diseñar algoritmos que trabajen de forma adecuada con este tipo de bases de datos

  • Hemos utilizado una técnica de “divide y vencerás para diseñar un algoritmo de aprendizaje de RB cuando tenemos un número muy elevado de variables en el dominio


Trabajos futuros
Trabajos futuros previos

  • Realizar un método de composición más eficiente más que considerar un búsqueda completa

  • Diseñar métodos de aprendizaje cuando tenemos “data stream”:

    • Suponer misma distribución subyacente en los datos

    • Suponer que puede cambiar esta distribución subyacente  Aprendizaje secuencial