TRABAJOS FIN DE MáSTER curso: 2021-22
Aprendizaje paralelo basado en la fusión de redes Bayesianas en dominios de alta dimensión. |
Descripcion y Objetivos
Las Redes Bayesianas son una formalismo para el manejo de incertidumbre en Sistemas Expertos que constan de un parte descriptiva basada en grafos dirigidos acíclicos, el cual describe las relaciones de independencia condicional presentes en el problema y una parte cuantitativa que, en base a distribuciones de probabilidad condicionales, cuantifican las relaciones de indenpendencia entre las variables presentes en el modelo.
El aprendizaje de redes Bayesianas a partir de datos es un tema muy estudiado en la literatura. Sin embargo es un problema complejo debido a que, en general, es un problema NP-Completo. Incluso con algoritmos aproximados basados en metaheurísticas o utilizando restricciones y/o suposciones teóricas en los datos, los algoritmos resultantes no escalan bien en problemas con número elevado de variables, problemas de alta dimensionalidad. En la literatura existen algunas propuestas basadas en diferentes estrategias. En nuestro caso la estrategia seguida será la de divide y vencerás y mediante el uso de estrategias de fusión de redes Bayesianas.
Exiten situaciones en donde para un mismo dominio del problema podemos tener varios modelos de Red Bayesiana diferentes, por ejemplo, distintas opiniones de expertos, o diferentes salidas de algoritmos de aprendizaje aplicados a datos diferentes pero del mismo modelo. El problema es llegar a una única Red Bayesiana que represente el dominio en base a las diferentes Redes Bayesianas de partida.
Ultimamente este enfoque se puede encontrar en casos prácticos como el denominado Federated Learning, donde tenemos bases de datos distribuidas en diferentes localizaciones tal que estos datos no pueden ser compartidos a través de un nodo central, ya sea por temas de privacidad o por imposibilidad de compartir tales datos. En este tipo de situaciones podemos utilizar el enfoque de fusión de Redes Bayesianas para conseguir compartir modelos en lugar de los datos y poder así disponer de un único modelo de consenso para todas las locacalizaciones diferentes.
Una vez que conocemos como realizar fusión de redes Bayesianas de forma eficiente, sobre todo, para el problema que queremos resolver, el prinicipal objetivo será realizar aprendizaje de forma paralela de partes de un dominio y despues fusionarlas con este tipo de algoritmos. Este proceso no es obvio y se deverá estudiar y diseñar los componentes principales así como la mejor forma de llevarlo a cabo. Finalmente se evaluarán las propuestas de forma experimental para validar las propuestas.
Objetivos:
1.- Estudiar los algoritmos apropiados de aprendizaje de redes Bayesianas para poder utilizarlos como algoritmos base en un entorno paralelo.
2.- Diseñar un algoritmo que en base a estos algoritmos ejecutados de forma paralelo utilizar la fusión de forma eficiente para unir los trozos de red aprendidas. En este caso de severán utlizar enfoques de divide y vencerás y refinamientos sucesivos para ir incorporando la información global aprendida de forma eficiente en el aprendizaje global del modelo.
3.- Experimentación en un entorno supervisado de las propuesta planteadas.
Metodología y Competencias
Metodología:
Se seguirá la metodología de desarrollo SCRUM:
* Sprint de 3 semanas comenzando con Presentación + Retrospectiva del sprint anterior y Planificación
del nuevo sprint. Refinamiento del Backlock periódico por parte de directores y alumno.
* Despliegue incremental del proyecto al final de cada Sprint.
Gestión de proyecto:
* Control de versiones.
* Despliegue automático de recursos asociados a integraciones de código
El flujo de trabajo o etapas a desarrollar son las siguientes:
1.- Revisar el contexto del problema y la literatura disponible.
2.- Analizar las diferentes propuestas en la literatura específica y seleccionar las convenientes para el problema abordado.
3.- Definir una estrategia de divide y vencerás para realizar el aprendizaje de redes Bayesianas.
4.- Diseño de los algoritmos de fusión para resolver la nueva tarea propuesta.
5.- Implementación de tales algoritmos.
6.- Experimentación de las propuestas realizadas. Diseño de los experimentos y Análisis de los mismo.
Competencias de la titulación desarrolladas en el TFM (ver listado de https://www.uclm.es/estudios/masteres/master-ingenieria-informatica-albacete#competencias):
CE1 - Capacidad para la integración de tecnologías, aplicaciones, servicios y sistemas propios de la Ingeniería Informática, con carácter generalista, y en contextos más amplios y multidisciplinares.
CE2 -Capacidad para la planificación estratégica, elaboración, dirección, coordinación, y gestión técnica y económica en los ámbitos de la Ingeniería Informática relacionados, entre otros, con: sistemas, aplicaciones, servicios, redes,
las teorías, principios, métodos y prácticas de la Ingeniería del Software.
CE12 - Capacidad para aplicar métodos matemáticos, estadísticos y de inteligencia artificial para modelar, diseñar y desarrollar aplicaciones, servicios, sistemas inteligentes y sistemas basados en el conocimiento
CE10 - Capacidad para comprender y poder aplicar conocimientos avanzados de computación de altas prestaciones y métodos numéricos o computacionales a problemas de ingeniería.
Medios a utilizar
- Todos los medios que se utilizarán para la realización de este Trabajo Fin de Máster están disponibles en la ESII y estarán a disposición del estudiante que realice este trabajo. Concretamente: ordenadores, compiladores, APIs específicas para el desarrollo de la propuesta, etc.
Bibliografía
Libros y manuales de inteligencia artificial y aprendizaje automático. Libros y manuales de lenguajes de programación y librerías específicas de aprendizaje automático. Todo disponible en la ESIIAB y/o en internet.
En particular se usarán entre otras las siguientes fuentes bibliográficas:
- Finn V. Jensen and Thomas D. Nielsen. Bayesian Networks and Decision Graphs (2nd. ed.). Springer, (2007).
- Uffe B. Kjaerulff and Anders L. Madsen. 2010. Bayesian Networks and Influence Diagrams: A Guide to Construction and Analysis (1st. ed.). Springer (2010)
- Richard E. Neapolitan. Learning Bayesian Networks. Prentice-Hall, Inc., USA. (2003)
- David Sweenor, Steven Hillion, Dan Rope, Dev Kannabiran, Thomas Hill, Michael O'Connell. ML Ops: Operationalizing Data Science. O'Reilly Media, Inc. (2021)
- José Miguel Puerta, Juan A. Aledo, José A. Gámez, Jorge D. Laborda: Efficient and accurate structural fusion of Bayesian networks. Inf. Fusion 66: 155-169 (2021)
- Nuria Rodríguez Barroso, Goran Stipcich, Daniel Jiménez-López, José Antonio Ruiz-Millán, Eugenio Martínez-Cámara, Gerardo González-Seco, M. Victoria Luzón, Miguel Ángel Veganzones, Francisco Herrera:
Federated Learning and Differential Privacy: Software tools analysis, the Sherpa.ai FL framework and methodological guidelines for preserving data privacy. (2021)
- Aledhari M, Razzak R, Parizi RM, Saeed F. Federated Learning: A Survey on Enabling Technologies, Protocols, and Applications. IEEE Access. 2020;8:140699-140725. doi: 10.1109/access.2020.3013541. (2020)
- Jiaying Gu and Qing Zhou. Learning Big Gaussian Bayesian Networks: Partition, Estimation and Fusion. Journal of Machine Learning Research, 21 1--31 2020.
Tutores PUERTA CALLEJON, JOSE MIGUEL GAMEZ MARTIN, JOSE ANTONIO | Alumno TORRIJOS ARENAS, PABLO
|
|