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


ad