Uploaded by iShаяквоу

POSTER

advertisement
PREDICCIÓN RESULTADO DE UN PARTIDO DE FÚTBOL
ANA FARRÉ, ÁLVARO GARCÍA CID, PATRICIA MEDIAVILLA, ENRIQUE RAMOS
INGENIERÍA MATEMÁTICA
27/04/2022
INTRODUCCIÓN
Este proyecto nace con la intención de implementar los conocimientos del grado de ingeniería matemática en un ámbito, que a priori no está relacionado con el mundo de las matemáticas, el fútbol. en concreto en este trabajo se quiere
conseguir la predicción de resultados. Como referencia se han usado los datos estadísticos de la temporada pasada. A partir de la recolección de estos datos, se conseguirá el objetivo trabajando con redes neuronales, formando así un
modelo predictivo. Se realizarán cuatro redes neuronales. La primera red centrada los propios partidos jugados con anterioridad y en la segunda parte tres redes neuronales basadas en los datos de los jugadores de cada equipo que se
enfrentan. Con el fin de ver si es más influyente el equipo en general o los jugadores en particular a la hora de predecir un resultado, esto es una parte muy interesante de este proyecto, teniendo en cuenta la dificultad de las predicciones en
el mundo del fútbol debido a que existen tres posibles resultados en un partido, a diferencia de otros deportes.
OBJETIVO
El objetivo de este proyecto es conseguir predecir resultados de partidos de fútbol buscando la mayor fiabilidad posible usando modelos de redes neuronales. Para este
proyecto se debe tener en cuenta que los modelos predictivos a cerca del fútbol que han realizado profesionales tienen un porcentaje de fiabilidad del 40% al 45%. El
objetivo es lograr la predicción con un porcentaje de acierto similar al de estos trabajos. El proyecto se dividirá en dos partes, una primera parte en la que se realizará una
predicción de resultados basados en datos de los equipos y una segunda parte en la cual se realizará una predicción basada en los datos particulares de cada uno de los
jugadores que formen el once inicial de los equipos. Tras la realización de ambas redes neuronales se buscará comparar ambos modelos.
Otro de los objetivos es observar si las estadísticas de equipos y de jugadores sirven para realizar estas predicciones o lo mejor es hacer una combinación de todas ellas.
DIFICULTADES
DESARROLLO
Al realizar este proyecto nos enfrentábamos a uno de los trabajos más importantes y
Primero se crean varias bases de datos que serán utilizadas posteriormente para poder entrenar las redes neuronales. tras esto, se procede a la creación de
redes neuronales.
con más manejo de conceptos matemáticos que habíamos realizado hasta la fecha.
Para realizar nuestro trabajo, la base principal que necesitamos para empezar a
trabajar y a observar son los datos que íbamos a utilizar para entrenar las redes
neuronales y formar los modelos predictivos. La obtención de unos datos óptimos
para este trabajo ha sido una de las partes más trabajosas y complicadas, debido a la
- Segunda parte: predicción mediante datos de jugadores
- Primera parte: predicción mediante datos de equipos.
Se realizan tres redes neuronales que devuelven un valor, ,que
Se realiza una red neuronal que devuelve dos valores, los cuales
pertenece a la predicción de valoración de un jugador en un
Otra de las dificultades que nos hemos encontrado ha sido el poco conocimiento que
pertenecen a las probabilidades de victoria del equipo local y el
partido.
teníamos a cerca de las redes neuronales. A la vez que recopilabamos los datos nos
equipo visitante.
falta de bases de datos que contuvieran los datos exactos necesitados.
hemos ido informando a cerca de como funcionan estas redes, que tipo de
características necesitaban los datos. Las redes neuronales las hemos realizado en
Matlab, ya que consideramos que es la herramienta más óptima, gráfica e intuitiva,
para realizar estos trabajos.
Este procedimiento se realiza con el programa Matlab, usando
la app Neural Net Fitting, Una vez se han creado la redes
MÉTODOS
neuronales empleando para cada una de ellas un método de
El método que se ha utilizado para realizar este trabajo son las redes neuronales, con
Este procedimiento se realiza con el programa Matlab, usando
entrenamiento de la red distinto, se crea un script de Matlab en
estas se aplica un modelo de regresión lineal. Esto quiere decir que la red neuronal
la app Neural Net Fitting, Una vez se ha creado la red neuronal
el cual se crean vectores que contienen los datos de los
aplica unos pesos a las variables indicando así cuales considera más importantes. En la
empleando
Bayesiana,
jugadores en diversas jornadas con el fin de obtener la
seleccionado tras estudiar el error de los distintos métodos, se
predicción de valoración. Una vez obtenidos los vectores para
crea un script de Matlab en el cual se crean matrices que
cada jugador se crean matices para cada equipo que contengan
contienen los datos de los equipos en diversas jornadas con el
estos vectores.
fin de obtener predicciones de los partidos. De estas matrices
Tras ejecutar la función de las redes neuronales se obtienen las
se
predicciones de valoración de cada uno de los jugadores de los
primera red neuronal se trata de un modelo de regresión lineal múltiple ya que da dos
valores de salida, la probabilidad de que gane el primer equipo
introducido y la
probabilidad de que gane el segundo equipo introducido, y las redes neuronales
pertenecientes a la segunda parte usa un método de regresión lineal simple ya que solo
da un resultado que es el rating estimado del jugador.
Dentro de las redes neuronales los métodos que se han utilizado para entrenar estas
obtienen
el
los
método
de
vectores
regularización
necesarios
para
obtener
las
probabilidades de victoria.
redes son: Levenberg-Marquardt, Bayesian regularization y Scaled conjugate gradient.
equipos, con el fin de obtener el promedio de estas.
Una vez se tenga el promedio de valoraciones de ambos
En la primera predicción se ha utilizado el método de Bayesian regularization y en la
segunda parte se han usado tres modelos, uno con cada método con el fin de hacer
Tras ejecutar la función de la red neuronal se obtienen las dos
equipos, se pasan por otra función que medirá cual de las dos
una comparativa de los resultados obtenidos.
variables que contienen las probabilidades y pasan por otra
variables es mayor y si la diferencia de probabilidades es
función que medirá cual de las dos variables es mayor y si la
suficientemente pequeña, es decir, menor que 0,075 en caso
diferencia de probabilidades es suficientemente pequeña, es
de que el equipo con mayor valoración sea el local, mientras
decir, menor que 10, para establecer como resultado el empate
que esta diferencia debe ser menor que 0,175 en el caso de que
o suficientemente grande para determinar al equipo con una
la mayor valoración pertenezca al visitante, para establecer
mayor probabilidad de victoria como ganador
como resultado el empate o suficientemente grande para
MÉTODO LEVENBERG-MARQUARDT
El primero que cabe mencionar es
uno de los más conocidos cuando
se hace uso de una red neuronal.
Esta calcula el jacobiano de la
función que se quiere minimizar
mediante
diferencias
finitas
centradas para, de esta manera,
obtener los mínimos locales.
determinar al equipo con una mayor probabilidad de victoria
como ganador
MÉTODO BAYESIAN REGULARIZATION
Este método consiste en eliminar el
factor aleatorio para adaptar la
función. Aparecen una serie de pesos
de elevado valor que, mediante la
regularización, estos se penalizan. Por
tanto, se eligen los pesos que
maximicen la probabilidad y así, junto
con la probabilidad de los pesos, se
consigue que se minimice la función
objetivo.
ANÁLISIS
- Primera parte: predicción mediante datos de equipos.
- Segunda parte: predicción mediante datos de jugadores
MÉTODO SCALED CONJUGATE GRADIENT
Este algoritmo tiene la finalidad de,
por medio del uso del gradiente de
la función, ahorrar tiempo y
computo, de manera que va
actualizando los pesos en función
del
método
del
gradiente
conjugado escalado.
Fiabilidad de los modelos predictivos usando los diferentes tipos de entrenamiento
TRABAJO FUTURO
El modelo predictivo de la primera parte tiene una fiabilidad del 52% para el estudio de datos realizado, mientras que el modelo predictivo de la segunda
En cuanto al trabajo a futuro, lo principal sería añadir más variables al entorno,
tanto a la base de datos de equipos como la de jugadores. Además, también
añadir más datos a estas. Esto se debe a que la precisión de un modelo de
red neuronal aumenta de forma directamente proporcional a la cantidad de
datos que se tienen para la fase de entrenamiento. No obstante, al igual que
con las variables incluidas en el trabajo, habría que valorar también si tienen
una importancia/peso significativo en el resultado, dado que, puede ser que
la variable no suponga un cambio notable, pero si aumente el coste de
computación.
Por otra parte, también nos gustaría indagar en formas de entrelazar
diferentes redes neuronales. Esto es con el fin de, a partir de las dos que
hemos diseñado en el proyecto, poder generar un output que tenga ambas
partes en cuenta, ya sea añadiendo como variable el output de una red
neuronal a la otra o creando una red neuronal que trabaje con ambos
resultados de las redes ya creadas.
Por último, también sería de interés, a parte de la obtención de más datos
que analizar y añadir a los .csv, normalizar estos datos. Y es que, diferentes
estudios demuestran que mediante la normalización de los datos utilizados
para el entrenamiento de una red neuronal los resultados obtenidos son más
exactos. Esto ha sido “demostrado” de forma experimental y realmente no
tiene ningún fundamento teórico.
parte tiene una fiabilidad del 37,78%.
CONCLUSIÓN
Tras haber completado el trabajo concluimos que los modelos predictivos de ambas partes del trabajo tienen un porcentaje de fiabilidad superior a la
probabilidad de acierto del resultado de un partido seleccionando el resultado de éste de manera azarosa.
Aunque ambos modelos son útiles para el objetivo del proyecto, queda claro que el modelo con el cual se obtiene un mayor grado de precisión es el modelo
basado en la colección de datos generales de los equipos, mientras que el modelo basado en los datos de cada uno de los jugadores tiene un porcentaje de
acierto, similar al azar, por lo que no es tan eficiente.
De este modo se puede concluir que los datos de los jugadores por si solos no sirven para realizar una buena predicción. A pesar de esto, estos datos se
podrían incorporar a la red neuronal de los datos de equipos con el fin de obtener un índice de acierto aún mayor en esta, como comentamos en el trabajo a
futuro.
Por último, hemos comparado el índice de fiabilidad del mejor modelo predictivo de este trabajo con el de otros trabajos que usan los mismos métodos que
este y se puede concluir que es un buen modelo predictivo, ya que la media de fiabilidad de estos modelos se encuentra entre un 40% y un 45%,
encontrándose este por encima de esta media, siendo nuestro porcentaje de fiabilidad es del 52%.
Download