dataminig con weka. caso: Árboles de decisión

19
Datamining con Waikato Environment for Knowledge Analysis, WEKA Universidad Nacional de Piura Universidad Laica “Eloy Alfaro” de Manabí Manta, 2013 Dataminig «Es el proceso de analizar los datos desde diferentes perspectivas y resumirla en información útil, información que puede ser utilizada para aumentar los ingresos, reduce los costos, o ambos». (UCLA Anderson, 2009.)

Upload: jorge-ivan-pincay-ponce

Post on 10-May-2015

2.697 views

Category:

Documents


5 download

DESCRIPTION

Este documento expone un ejemplo de cómo generar un árbol de decisión empleando WEKA. WEKA que es la herramienta libre de Datamining seleccionada para éste trabajo y el algoritmo de árbol de decisión que constituye una de las técnicas de toma de decisiones más empleadas en Datamining. Se trabajará sobre una base de datos clásica incluida en el propio programa. Se trata de una base de datos llamada WEATHER.ARFF , en la que se pretende determinar cuáles son los factores que hacen que una cierta persona practique o no el tenis. Cada instancia de la base de datos se corresponde con un cierto día en el que la persona se plantea si jugar o no al tenis, y recoge los siguientes atributos: • Aspecto del cielo: {soleado, cubierto, lluvioso}. • Temperatura: medida en grados. • Humedad: medida en %. • Viento: {si, no}. • Juega al tenis: {si, no}.

TRANSCRIPT

Page 1: Dataminig con Weka. Caso: Árboles de decisión

Datamining con Waikato Environment for Knowledge Analysis, WEKA

Universidad Nacional de Piura

Universidad Laica “Eloy Alfaro” de Manabí

M a n t a , 2 0 1 3

Dataminig

«Es el proceso de analizar los datos desde diferentes perspectivas y resumirla en información útil, información que puede ser utilizada para aumentar los ingresos, reduce los costos, o ambos». (UCLA Anderson, 2009.)

Page 2: Dataminig con Weka. Caso: Árboles de decisión
Page 3: Dataminig con Weka. Caso: Árboles de decisión

1 OBJETIVOS 3 2 MATERIALES UTILIZADOS 3 2.1 PRÁCTICAS DE DATAMINIG 32.2 SISTEMA OPERATIVO 32.3 OTROS 33 RESULTADOS, TÉCNICAS 3 4 CONCEPTOS BÁSICOS 3 4.1 MINERÍA DE DATOS 34.2 ESCENARIOS DE LA MINERÍA DE DATOS 32.3 TÉCNICAS DE MINERÍAS DE DATOS 42.3.1 REDES NEURONALES 42.3.2 REGRESIÓN LINEAL 42.3.3 ÁRBOLES DE DECISIÓN 42.3.4 MODELOS ESTADÍSTICOS 42.3.5 AGRUPAMIENTO O CLUSTERING 42.3.6 REGLAS DE ASOCIACIÓN 42.4 WEKA 42.4.1 PRINCIPALES CONFIGURACIONES DE WEKA 52.5 ÁRBOLES DE DECISIÓN 65 INSTALACIÓN 6 6 BITÁCORA 9 7 PANTALLAZOS 10 8 DIAPOSITIVAS 10 9 A MODO DE CONCLUSIONES Y RECOMENDACIONES 10 10 INCONVENIENTES 11 11 REFERENCIAS BIBLIOGRÁFICAS 11

Page 4: Dataminig con Weka. Caso: Árboles de decisión

1 OBJETIVOS

GENERAR DE UN ÁRBOL DE DECISIÓN CON WEKA

Este documento expone un ejemplo de cómo generar un árbol de decisión empleando WEKA.

WEKA que es la herramienta libre de Datamining seleccionada para éste trabajo y el algoritmo de árbol de decisión que constituye una de las técnicas de toma de decisiones más empleadas en Datamining.

Se trabajará sobre una base de datos clásica incluida en el propio programa. Se trata de una base de datos llamada WEATHER.ARFF1, en la que se pretende determinar cuáles son los factores que hacen que una cierta persona practique o no el tenis. Cada instancia de la base de datos se corresponde con un cierto día en el que la persona se plantea si jugar o no al tenis, y recoge los siguientes atributos:

Aspecto del cielo: {soleado, cubierto, lluvioso}. Temperatura: medida en grados. Humedad: medida en %. Viento: {si, no}. Juega al tenis: {si, no}.

2 MATERIALES UTILIZADOSLos materiales corresponden a los recursos de software empleados:

2.1 Prácticas de Dataminig WEKA (Waikato Environment for Knowledge Analysis) Versión 3.5.8.

Cuyos créditos (c) 1999 – 2008 pertenecen a la The University of Waikato.

JRE (Java Runtime Edition) versión 1.7 de 64 Bits. JDK (Java Development Kit) 1.7 de 64 Bits, aunque realmente para las

prácticas mostradas solo se usó JRE y no el JDK. Opcionanlmente Weka incorpora una versión reducida de JRE que

garantiza la funcionalidad al menos de Weka.

2.2 Sistema operativo Microsoft Windows 8 Enterprise, versión de 64 Bits.

2.3 La Base de Datos del EjemploSe trabajará sobre una base de datos clásica incluida en el propio programa. Se trata de una base de datos llamada WEATHER.ARFF, en la que se pretende determinar cuáles son los factores que hacen que una cierta persona practique o no el tenis.

1 La citada base de datos esta disponibles en muchos servidores a través de internet, para el caso puede tomar como referencia la url: https://code.google.com/p/demoquanlynhathuoc/downloads/detail?name=weather.arff (Code Google, 2011)

Page 5: Dataminig con Weka. Caso: Árboles de decisión

2.4 Otros Window Movie Maker2 de Windows 8 Enterprise para la edición de

videos. Software de ofimática.

3 RESULTADOS, TÉCNICASLa técnica empleada para el desarrollo de éste documento fue la

investigación bibliográfica; de allí los consabidas estrategias de prueba y error, heurística y el modelado (que se dio siguiendo ejemplos varios de la web).

4 CONCEPTOS BÁSICOS

4.1 Minería de DatosLa minería de datos usa principios estadísticos contrastados para detectar patrones en los datos, ayudándole a tomar decisiones inteligentes sobre problemas complejos. La aplicación de los algoritmos de minería de datos permitirá predecir tendencias, identificar patrones, crear reglas y recomendaciones, analizar la secuencia de eventos en conjuntos de datos complejos y obtener nuevos puntos de vista (MSDN, 2013).

4.2 Escenarios de la minería de datosLa minería de datos es el proceso de detectar la información procesable de los conjuntos grandes de datos. Utiliza el análisis matemático para deducir los patrones y tendencias que existen en los datos. Normalmente, estos patrones no se pueden detectar mediante la exploración tradicional de los datos porque las relaciones son demasiado complejas o porque hay demasiado datos (MSDN, 2013). Estos patrones y tendencias se pueden recopilar y definir como un modelo de minería de datos. Los modelos de minería de datos se pueden aplicar en escenarios como los siguientes:

Pronóstico: cálculo de las ventas y predicción de las cargas del servidor o del tiempo de inactividad del servidor.

Riesgo y probabilidad: elección de los mejores clientes para la distribución de correo directo, determinación del punto de equilibrio probable para los escenarios de riesgo, y asignación de probabilidades a diagnósticos y otros resultados.

Recomendaciones: determinación de los productos que se pueden vender juntos y generación de recomendaciones.

Búsqueda de secuencias: análisis de los artículos que los clientes han introducido en el carrito de la compra y predicción de posibles eventos.

Agrupación: distribución de clientes o eventos en grupos de elementos relacionados, y análisis y predicción de afinidades.

La generación de un modelo de minería de datos forma parte de un proceso mayor que incluye desde la formulación de preguntas acerca de los datos y la creación de un modelo para responderlas, hasta la implementación del

2 Por defecto Windows 8 no incorpora tal herramienta pero se instaló una versión disponible para Windows Vista.

Page 6: Dataminig con Weka. Caso: Árboles de decisión

modelo en un entorno de trabajo. Este proceso se puede definir mediante los seis 

2.3 Técnicas de minerías de datosLas técnicas más representativas son:

2.3.1 Redes neuronalesSon un paradigma de aprendizaje y procesamiento automático inspirado en la forma en que funciona el sistema nervioso de los animales. Se trata de un sistema de interconexión de neuronas en una red que colabora para producir un estímulo de salida. Algunos ejemplos de red neuronal son: El Perceptrón, El Perceptrón multicapa, Los Mapas Autoorganizados, también conocidos como redes de Kohonen.

2.3.2 Regresión linealEs la más utilizada para formar relaciones entre datos. Rápida y eficaz pero insuficiente en espacios multidimensionales donde puedan relacionarse más de 2 variables.

2.3.3 Árboles de decisiónUn árbol de decisión es un modelo de predicción utilizado en el ámbito de la inteligencia artificial, dada una base de datos se construyen estos diagramas de construcciones lógicas, muy similares a los sistemas de predicción basados en reglas, que sirven para representar y categorizar una serie de condiciones que suceden de forma sucesiva, para la resolución de un problema. Ejemplos: Algoritmo ID3, Algoritmo C4.5.

2.3.4 Modelos estadísticosEs una expresión simbólica en forma de igualdad o ecuación que se emplea en todos los diseños experimentales y en la regresión para indicar los diferentes factores que modifican la variable de respuesta.

2.3.5 Agrupamiento o ClusteringEs un procedimiento de agrupación de una serie de vectores según criterios habitualmente de distancia; se tratará de disponer los vectores de entrada de forma que estén más cercanos aquellos que tengan características comunes. Ejemplos: Algoritmo K-means, Algoritmo K-medoids.

2.3.6 Reglas de asociaciónSe utilizan para descubrir hechos que ocurren en común dentro de un determinado conjunto de datos.

2.4 WEKAEl sitio web official de Weka, describe a WEKA como una colección de algoritmos de aprendizaje automático para la tarea extracción de datos. Los algoritmos pueden ser aplicados directamente a un conjunto de datos o ser llamados desde código Java (usando el JDK de Java y un IDE). Weka contiene herramientas para el pre-procesamiento, clasificación, regresión, clustering, reglas de asociación y visualización de datos. También es muy adecuado para el desarrollo de nuevos sistemas de aprendizaje de máquina. Ésta definición es una traducción del sito oficial.

“Weka is a collection of machine learning algorithms for data mining tasks. The algorithms can either be applied directly to a

Page 7: Dataminig con Weka. Caso: Árboles de decisión

dataset or called from your own Java code. Weka contains tools for data pre-processing, classification, regression, clustering, association rules, and visualization. It is also well-suited for developing new machine learning schemes.” (Mark Hall, EibeFrank, Geoffrey Holmes, & Bernhard P, 2009)

2.4.1 Principales configuraciones de WEKA 49 herramientas de pre-procesamiento de datos 76 algoritmos de clasificación / regresión 8 algoritmos de agrupamiento 15 atributos/subconjunto evaluadores + 10 algoritmos de búsqueda para

configurar la selección. 3 algoritmos para encontrar reglas de asociación 3 interfaces gráficas de usuario "The Explorer" (análisis exploratorio de datos) " The Experimenter” (entorno experimental) "El KnowledgeFlow" (nuevo modelo de proceso inspirado interfaz)

Imagen 1: Interfaz Explorer de WEKA

Page 8: Dataminig con Weka. Caso: Árboles de decisión

Imagen 2: Interfaz Experimenter

Imagen 3: Interfaz flujo de conocimiento 2.5 Árboles de decisiónEl algoritmo de árboles de decisión de es un algoritmo híbrido que incorpora distintos métodos para crear un árbol, y admite varias tareas de análisis, incluyendo la regresión, la clasificación y la asociación. El algoritmo de árboles de decisión de admite el modelado de los atributos discretos y continuos (MSDN, 2013).

5 INSTALACIÓNDescargar WEKA desde la página oficial (aunque se lo puede encontrar en muchos otros servidores de internet): http://www.cs.waikato.ac.nz/ml/weka/downloading.htmlSiga los pasos sugeridos de acuerdo a su plataforma de Hardware y Software:

Page 9: Dataminig con Weka. Caso: Árboles de decisión

Imagen 4: Captura de los recursos de instalación de WEKA, desde el sitio oficial

WEKA también dispone de versiones Developer, que en suma permiten desde un IDE de Java hacer personalizaciones por código y en general gozar de las bondades típicas del software libre.

Luego de la descarga apropiada de WEKA, lo que resta es instalarlo:1. Si no tiene un JRE o JDK, debe primero instalarlo, pues lo que hace tal

software es instalar la máquina virtual de Java en su equipo, detalle característico de las aplicaciones de Java.

2. Seguir los pasos de instalación del mismo modo que lo haría en cualquier versión de Windows.

Page 10: Dataminig con Weka. Caso: Árboles de decisión

Imagen 5: El instalador de Weka para 64 Bits y el JRE "especial" de Weka

Page 11: Dataminig con Weka. Caso: Árboles de decisión

Imagen 6: Instalación de Weka Finalizada correctamente

Una vez instalado, podrá disponer de los siguientes accesos:

Imagen 7: Accesos directos generados por el instalador de Weka

Page 12: Dataminig con Weka. Caso: Árboles de decisión

Para el caso de las prácticas usaremos el acceso Weka 3.6, como el nombre indica el acceso with console nos provee de una consola adicional de líneas de comandos, para ejecutar comandos típicos de java.

6 BITÁCORA El soporte completo y en Español sobre Weka es escaso, no obstante

las respuestas de Google sobre Weka se cuentan por millones, con pocas entradas en español en referencia al volumen

Imagen 8: Resultados de Google sobre "WEKA"

El respetable buscador Bing de Microsoft muestra en cambio muchos menos resultados:

Imagen 9: Resultados de Bing sobre "WEKA"

Page 13: Dataminig con Weka. Caso: Árboles de decisión

Un problema, o error común es no tener la versión adecuada de JRE o JDK en función de la versión de WEKA que se descarga y del sistema operativo que se tiene.

WEKA es un software que ocupa unos pocos Megas en disco duro, pero su utilidad es enorme, y se ha escrito suficiente material sobre ello, no obstante para adentrarse en el mismo, los documentos oficiales residentes o accesibles desde http://www.cs.waikato.ac.nz/ml/weka/documentation.html son en todo momento (a criterio del grupo) el mejor punto de partida.

A partir de las versiones originales del mencionado sitio, el grupo se apoyó en conceptos escritos en español, siendo varios de éstos propuestos por el afamado sitio MSDN de la empresa Microsoft.

Fue grato notar que universidades del País, concretamente la Universidad Técnica Particular de Loja, emplea en sus procesos formativos a WEKA para la enseñanza de minería de datos.

7 SCREENSHOT O CAPTURAS DE PANTALLA

Page 14: Dataminig con Weka. Caso: Árboles de decisión

Imagen 10: Pantalla inicial de WEKA ejecutándose en Microsoft Windows 8 x64

Page 15: Dataminig con Weka. Caso: Árboles de decisión

Imagen 11: Vista de la aplicación Explorer de WEKA al tiempo que se apertura la base de datos de ejemplo Weather.arff

Page 16: Dataminig con Weka. Caso: Árboles de decisión

Imagen 12: Ficha Clasificación, donde se puede encontrar la opción del "Árbol de decisión"

8 DIAPOSITIVAS

Se adjuntan…

9 A MODO DE CONCLUSIONES Y RECOMENDACIONES En este trabajo se ha presentado una forma de construir arboles de

decisión en WEKA, se ha conseguido resultados que de ser llevados a gran escala serian prometedores experimentalmente.

El modelo de clasificación empleado, se puede considerar un híbrido entre los algoritmos de construcción de árboles de decisión y los algoritmos de inducción de listas de decisión. No está de más recordar que el árbol de decisión es una técnica de aprendizaje supervisado, siendo estas, técnicas que predicen un dato (o un conjunto de ellos) desconocido a priori, a partir de otros conocidos.

Propiamente en términos de Datamining, el árbol de decisión al estar basado en algoritmos de extracción en reglas de asociación, no solo que es eficiente, sino que también es escalable. Esta es una característica esencial en la resolución de problemas de Data Mining, pues permite la utilización extraer información de enormes conjuntos de datos.

Es de vital importancia el conocimiento de técnicas que permitan anticiparse y predecir los posibles resultados de las decisiones a tomar, “apuntando” siempre a tener mayores posibilidades de éxito y una adecuada gestión en administración de diversos frentes,.

Page 17: Dataminig con Weka. Caso: Árboles de decisión

El manejo de técnicas sencillas y compresibles de cómo llevar a cabo un adecuado proceso de elección de estrategias y decisiones supone un paso adelante en eficiencia.

10 INCONVENIENTES Un problema, o error común es no tener la versión adecuada de JRE o

JDK en función de la versión de WEKA que se descarga y del sistema operativo que se tiene.

Aunque derivado de lo anterior también puede citarse el desconocimiento que el grupo tenía, de la existencia del JRE especifico de WEKA, que viene a ser algo así como una edición especial del JRE para el funcionamiento de WEKA.

La instalación de WEKA no supuso complejidad, lo que si resultó algo dificultoso fue escoger el algoritmo a emplear… pues como se detalló antes, WEKA ha madurado mucho en el campo de la minería de datos, posee diversas interfaces y en cada una de ellas a su vez diversas aplicaciones de minería de datos y algoritmos varios dentro de ellas, que en el caso de la versión que hemos usado llega a la cantidad de 43 algoritmos. Finalmente el grupo decidió aplicar árboles de decisión. Que es dentro de WEKA una especie de “submundo” para aplicar Datamining.

Sobre la edición del video, el grupo no tenía como fortaleza la edición de archivos de videos, pero practicando un poco se pudo presentar el producto usando la herramienta “Window Movie Maker” de Windows 8.

Siguiendo con el video, había un gran dilema sobre definir quien haría las narraciones en video, es decir el audio. En realidad allí como grupo lamentamos no contar con una compañera dentro del mismo.

Siguiendo con el video, hay que destacar que por defecto Windows 8 no incorpora Windows Movie Maker, y buscando en el sitio oficial de descargas de Microsoft tampoco había una versión específica para la versión Enterprise de Windows 8 x64, por tal razón haciendo pruebas, encontramos que la versión 2.6 de Movie Maker para Windows Vista x86, se comportaba muy bien en Windows 8 x64. Allí se desarrolló el video.

11 REFERENCIAS BIBLIOGRÁFICASMark Hall, Eibe Frank, Geoffrey Holmes, & Bernhard P. (2009). The WEKA

Data Mining Software: An Update; SIGKDD Explorations (Vol. XI).MSDN. (2013). Minería de datos. Recuperado el 31 de Marzo de 2013, de

http://msdn.microsoft.com/es-ec/library/bb510516.aspxMSDN. (2013). Referencia técnica del algoritmo de árboles de decisión de

Microsoft. Recuperado el 30 de Marzo de 2013, de http://msdn.microsoft.com/es-ec/library/cc645868(v=sql.100).aspx