Copyright 2022 Gonzalo Paúl Fantoni, Carlos Alonso Gradillas e Ignacio Martín-Peña
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
El propósito de esta práctica es la implementación de uno de los algoritmos estudiados sobre un conjunto de datos. Para su posterior aprendizaje y predicción.
La predicción de resultados de la competición UFC.
Hemos escogido una bbdd pública de la UFC. La cual recoge todo tipo de datos sobre combates desde los últimos 10 años.
https://www.kaggle.com/datasets/mdabbert/ultimate-ufc-dataset
Tras una serie de pruebas y tests, los atributos que hemos seleccionado y mejor resultado nos han dado han sido:
- Racha de victorias
- La postura de los combatientes (zurdos, diestros)
- Alcance en cm
Hemos elegido randomforest ya que nos brindaba las mejores tasas de TP, y F measure. Además, también son muy eficientes en términos de tiempo de entrenamiento y rendimiento en general.
Dentro de la carpeta App_Java:
- Ejecutar makefile, para crear el archivo .jar
$- make jar
- Ejecutar la app (archivo .jar obtenido en el paso anterior)
$- java -jar aprendizaje.jar
- Introducir los datos por pantalla en el siguiente orden y separados por comas, sin espacios entre sí.
RachaVictoriasBlue, PosturaBlue, AlcanceBlue, RachaVictoriasRed, PosturaRed, AlcanceRed, ?
**Importante añadir '?' al final, para que el modelo prediga el resultado del combate. Devolverá BLUE, si gana el primer combatiente, y RED si gana el segundo combatiente.
Una vez ejecutada la aplicación, si nos interesa saber la predicción sobre el siguiente combate:
- Combatiente 1: 3 victorias, diestro, y 180cm de alcance
- Combatiente 2: 1 victoria, zurdo y 175cm de alcance
Haríamos la siguiente consulta:
6,Diestro,190,1,Zurdo,175,?
Y obtendríamos como resultado BLUE, lo que significa que ganaría el primer combatiente.
PARA REALIZAR UNA NUEVA CONSULTA, BORRE LA ULTIMA LÍNEA DE TEST.ARFF