Para los que no sepan en qué consiste la minería de datos (o Data Mining) os cuento que, a grandes rasgos, es un proceso de extracción de información y búsqueda de patrones de comportamiento que permanecen ocultos entre grandes cantidades de información.
¿Y qué es Weka?
Weka es un software programado en Java que está orientado a la extracción de conocimientos desde bases de datos con grandes cantidades de información. Existen otras herramientas similares como Oracle Data Miner o Clementine, pero el hecho de que Weka sea desarrollado bajo licencia GPL lo ha hecho una alternativa muy interesante.
Pues veamos entonces cómo funciona
Lo primero de todo, podéis descargar el software desde esta dirección. Está en inglés pero es todo bastante facil de entender y manejar.
Puesto que esto sólo es un artículo de introducción para poder ver las posibilidades que nos brinda esta aplicación, vamos a ver un ejemplo con el que podéis empezar a trastear con la herramienta Explorer. Utilizaremos el fichero «weather.arff» (un ejemplo típico) que podéis encontrar dentro del directorio «data» situado en la carpeta donde tengáis instalado Weka.
El fichero contiene una serie de filas, cada una de las cuales contiene un conjunto de factores meteorológicos de un determinado día y nos indica si se ha podido jugar o no al tenis. Nuestro objetivo será crear un árbol de decisión que nos ayude a predecir si, por ejemplo, hoy vamos a poder jugar al tenis.
Empecemos abriendo Weka y a continuación la herramienta Explorer. Pinchamos en «Open file» y seleccionamos el fichero «weather.arff». Una vez abierto podremos ver una serie de datos y gráficos en la ventana del Explorer, pero mejor vayamos al grano. Vamos a la pestaña «Classify» y pinchamos en «Choose» para elegir el clasificador. En nuestro caso vamos a seleccionar J48 (los árboles de decisión de toda la vida) dentro del apartado «trees». Por último, seleccionamos «Training set» dentro del apartado «Test options» y pulsamos en «Start».
En el apartado «Classifier output» podemos ver que nuestro árbol tiene una precisión del 100%, incluso podemos ver el árbol en formato texto, pero vamos a pinchar con el botón derecho sobre la opción correspondiente y después seleccionaremos «Visualize tree» para ver el árbol en condiciones.
Tenemos el árbol de clasificación ¿y ahora qué?
Ahora que tenemos el árbol, solo tenemos que utilizarlo con los datos meteorológicos de hoy para saber si vamos a poder jugar al tenis. Por ejemplo, supongamos que hoy tenemos un día soleado y con humedad del 85%. Si seguimos el árbol, comprobaremos que lo más seguro es que hoy no podamos jugar al tenis :_(.
Vale muy bonito… ¿pero de qué me sirve a mí esto?
Puede que el ejemplo que hemos visto sea demasiado simple para poder llegar a intuir las capacidades de esta herramienta. Además, solo hemos visto una pequeñísima porción de lo que permite hacer Weka.
Sin embargo, os puedo asegurar que existen muchísimas aplicaciones posibles en la vida real. Sin ir más lejos, con Weka podríamos analizar los logs de acceso a esta web y buscar patrones de comportamiento comunes de comportamiento para aplicar nuevas estrategias. No lo vamos a hacer porque para ello ya usamos Google Analytics, que automáticamente hace ya todo este trabajo por nosotros, pero con eso quizás podéis haceros una idea más aproximada de sus capacidades.