Categorías
Informática Universitario Videojuego

Minería de datos

Tema 

Hoy día vivimos en un mundo que genera constantemente millones de datos digitalizados. La industria llama «Big Data» al desafío de gestionar bases de datos capaces de almacenan cantidades enormes de ellos y transferirlos rapidísimamente por streaming… datos heterogéneos relativos al comportamiento de millones de personas, como por ejemplo los avances o las compras que hacen los jugadores en un videojuego móvil o en un MMOG. La Minería de Datos es la disciplina que se encarga precisamente de extraer información interesante de ellos.

Las lecciones a tratar en este tema son:

  1. Adquisición, limpieza y calidad
  2. Preprocesado y transformación
  3. Análisis exploratorio y visualización
  4. Flujo de procesamiento y ciclo de vida

Muy importante al principio es explicarles el ciclo de una aplicación de minería de datos y que aprendan a trabajar con datos. De todo ello, lo interesante para empezar a trabajar es hablar mucho de la fase de Preprocesamiento. En ella se puede contar el tema de la detección de outliers, detección de Null (y decidir cómo se va a hacer la imputación), balanceo de clases (técnicas tanto de subsampling como de oversampling). Y luego ya entrar en transformaciones tanto de estandarización como one_hot_encoder (getdummies).

Minería de datos (pero más modernito y aplicado a juegos), por ejemplo para segmentar jugadores (clustering con K-Means, DBSCAN), ver qué tipos de jugadores existen, aunque abandona, quien monetiza… también para hacer sistemas de recomendación tipo Steam, Xbox, Playstation Store (con modelos tipo Collaborative FIltering, Matrix Factorization), también para analizar el comportamiento de los avatares (secuencias de acciones, funnels, heatmaps… cosas que se usan de verdad en Fortnite, League of Legends, Clash Royale…).

Ejercicios

Para practicar lo aprendido pueden hacerse algunos ejercicios.

Prácticas

No tanto por aplicar los conocimientos y las técnicas de este tema sino para tener alguna Práctica 0 de referencia, pueden realizarse prácticas como estas:

  • EJEMPLO, con una solución hecha por el profesor.
  • Aprender a trabajar con datos mediante alguna práctica sencilla con Python y seramente después otra de usar Pandas, una biblioteca de Python para manipulación y análisis de datos tabulares (DataFrames), que es muy útil para limpiar, transformar y preparar datasets. También podemos usar Plotly, otra biblioteca de Python para visualización interactiva de datos. NumPy se usa más para operaciones numéricas con matrices y Matplotlib para visualizar datos pero de forma estática.

Aunque la telemetría es una de las fuentes principales de datos, si usamos datos de uso y comportamiento de jugadores (Steam, Twitch, SteamSpy, Kaggle u otras plataformas) o incluso «telemetría ficticia» de un supuesto videojuego, aquí sólo se dará una explicación breve porque esto de la telemetría se les cuenta en Usabilidad y Análisis de Juegos (horas jugadas, muertes, victorias… un ejemplo habitual e importante de telemetría es el churn o tasa de abandono de un juego).

Referencias

Para complementar este tema es recomendable consultar otros documentos: