|
Grado en Ingeniería Informática |
TRABAJOS FIN DE GRADO curso: 2023-24
Predicción del Resultado de Partidos de Fútbol usando Aprendizaje Automático Federado |
Tecnologías Específicas
Computación
Descripcion y Objetivos
El fútbol es uno de los deportes más populares y seguidos en el mundo. Desde fanáticos hasta organizaciones deportivas, muchos desean poder predecir el resultado de los partidos. Con la aparición de técnicas de aprendizaje automático y la disponibilidad de grandes cantidades de datos relacionados con partidos, jugadores y ligas, es posible intentar modelar y predecir los resultados con una precisión mayor a los enfoques tradicionales. Además, al federar el proceso por ligas, se puede considerar la singularidad y especificidad de cada liga para mejorar la precisión de las predicciones.
Objetivos:
- Desarrollar modelos basados en aprendizaje automático que permitan predecir el resultado de partidos de fútbol en diferentes ligas alrededor del mundo.
- Federar el proceso de aprendizaje automático considerando cada liga como un compartimento estanco del que no pueden salir sus datos, si bien, si pueden compartirse estadísticos, modelos y submodelos del proceso de aprendizaje.
- Evaluar y comparar la precisión de las predicciones de los modelos aprendidos mediante aprendizaje automático federado vs el uso de los datos de forma global.
- Desarrollar una pequeña aplicación de escritorio (o servicio web) que permita realizar predicciones y/o monitorizar el proceso de aprendizaje.
Metodología y Competencias
Metodología:
- Recolección de Datos: Analizar la literatura y repositorios habituales para aprendizaje automático para seleccionar las fuentes de datos adecuadas. Entre ellas podemos ver en un análisis preliminar:
- European soccer league (11 países):
- https://www.kaggle.com/datasets/hugomathien/soccer
- Open international soccer database (+30 países)
- https://osf.io/kqcye/
- Preprocesamiento: Limpiar y estructurar los datos para eliminar posibles inconsistencias y facilitar su análisis. Transformar, seleccionar y construir variables que conlleven a un conjunto de datos de mejor calidad.
- Análisis Exploratorio: Explorar los datos para identificar tendencias, correlaciones y patrones que podrían ser relevantes para la predicción.
- Selección de Modelos (Globales): Experimentar con distintos algoritmos de aprendizaje automático supervisado y realizar una selección de modelos en base a sus parametrizaciones. Se usará como conjunto de datos la unión de las distintas ligas.
- Federación por Ligas: Desarrollar modelos específicos para cada liga y aprender de forma federada un modelo general o refinar los modelos locales usando información de los modelos aprendidos para otras ligas
- Evaluación y validación: Se llevará a cabo una experimentación rigurosa para establecer de forma sólida la comparación entre las distintas opiciones analizadas.
- Desarrollo de una aplicación: Desarrollar una pequeña aplicación de escritorio (o servicio web) que permita realizar predicciones y/o monitorizar el proceso de aprendizaje.
- Escritura de la memoria del TFG.
Competencias:
Se trabajarán principalmente (en distinto grado) las siguientes competencias específicas de la tecnología de computación:
- Capacidad para evaluar la complejidad computacional de un problema, conocer estrategias algorítmicas que puedan conducir a su resolución y recomendar, desarrollar e implementar aquella que garantice el mejor rendimiento de acuerdo con los requisitos establecidos.
- Capacidad para conocer los fundamentos, paradigmas y técnicas propias de los sistemas inteligentes y analizar, diseñar y construir sistemas, servicios y aplicaciones informáticas que utilicen dichas técnicas en cualquier ámbito de aplicación.
- Capacidad para adquirir, obtener, formalizar y representar el conocimiento humano en una forma computable para la resolución de problemas mediante un sistema informático en cualquier ámbito de aplicación, particularmente los relacionados con aspectos de computación, percepción y actuación en ambientes entornos inteligentes.
- Capacidad para conocer y desarrollar técnicas de aprendizaje computacional y diseñar e implementar aplicaciones y sistemas que las utilicen, incluyendo las dedicadas a extracción automática de información y conocimiento a partir de grandes volúmenes de datos.
Medios a utilizar
Ordenadores personales, compiladores y entornos de programación. Servicios de tarjetas gráficas para el entrenamiento e inferencia de redes neuronales profundas. Todo disponible en la ESIIAB, I3A o mediante servicios en la nube.
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 o internet.
Tutores GAMEZ MARTIN, JOSE ANTONIO TORRIJOS ARENAS, PABLO | Alumno RODRÍGUEZ ROYO, PABLO
|
| |