Este documento presenta una serie de ejercicios prácticos para familiarizarse con la herramienta Weka de minería de datos. Los ejercicios cubren temas como el análisis exploratorio de datos, la clasificación, la regresión y el agrupamiento. Se proporcionan instrucciones detalladas para llevar a cabo cada ejercicio utilizando conjuntos de datos de ejemplo y algoritmos como J48, k-NN e KMeans.
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Ejercicio weka
1. Gesti´n y Tecnolog´
o ıa
del Conocimiento
Miner´ de Datos
ıa
junio 2010
´
Departamento de Informatica
Universidad Carlos III de Madrid
Ejercicios de Weka
Comentarios generales sobre los ejercicios
• Asumiendo que se conocen los contenidos te´ricos, el tiempo estimado
o
para realizar los ejercicios es de 2 horas
• Describir las soluciones a los ejercicios de una manera lo m´s formal
a
posible
1. An´lisis de los datos
a
El objetivo de este ejercicio es familiarizarse con el entorno de Weka, y estudiar algunas de las funcionalidades
de an´lisis de datos. Estas funcionalidades incluyen an´lisis estad´
a a ıstico, visualizaci´n, etc. Recordad que el manual
o
de Weka est´ disponible en http://www.cs.waikato.ac.nz/ml/weka/index documentation.html
a
1.1. Obtenci´n de los datos
o
Descargar el siguiente conjunto de datos:
iris data set: iris.arff
Abrir el fichero de datos con un editor, y estudiar su contenido:
1. ¿Cu´ntos atributos caracterizan los datos de esta tabla de datos?
a
2. Si suponemos que queremos predecir el ultimo atributo a partir de los anteriores, ¿estar´
´ ıamos ante un problema
de clasificaci´n o de regresi´n?
o o
1.2. Estudio estad´
ıstico de los datos
Lanzar la herramienta weka
Lanzar el Explorer
Abrir el fichero iris.arff
Una vez cargado el conjunto de datos, en la secci´n attributes se puede pinchar sobre cada atributo para obtener
o
informaci´n estad´
o ıstica de ellos. Contestad a las siguientes preguntas:
1. ¿Cu´l es el rango de valores del atributo petalwitdth?
a
2. Con la informaci´n que puedes obtener visualmente, ¿qu´ atributo/s crees que son los que mejor permitir´n
o e a
predecir el atributo class?
2. 1.3. Aplicaci´n de filtros
o
1. Aplicar el filtro filters/unsupervised/attribute/normalize sobre el conjunto de datos. ¿Qu´ efecto tiene este
e
filtro?
2. Aplicar el filtro filters/unsupervised/instance/RemovePercentage sobre el conjunto de datos. ¿Qu´ efecto tiene
e
este filtro?
3. Grabar el conjunto de datos como iris2.arff.
4. Aplicar el filtro filters/unsupervised/attribute/Discretize sobre el conjunto de datos. ¿Qu´ efecto tiene este
e
filtro?
5. (Avanzado)Cargar nuevamente el fichero iris.arff original, y ejecutar una selecci´n de caracter´
o ısticas basada
en an´lisis de componente principal. ¿Qu´ atributos se generan?
a e
1.4. Visualizaci´n
o
Volver a cargar el conjunto de datos iris2.arff Pulsar la pesta˜a Visualize. Aumentar Point Size a 5 para
n
visualizarlos datos mejor.
1. Aumentar el valor de Jitter: ¿qu´ efecto tiene?
e
2. Clasificaci´n
o
El objetivo de este ejercicio es familiarizarse con las primeras t´cnicas de an´lisis de datos. En concreto, con los
e a
a
´rboles de decisi´n.
o
2.1. Clasificador ZeroR
Cargar el conjunto de datos iris.arff. En la pesta˜a Classify, seleccionar el clasificador ZeroR. En las Test
n
Options seleccionar Use trainning set, y pulsar el bot´n de Start para que genere el clasificador. En un instante, en
o
la ventana de salida aparecer´n los datos de la clasificaci´n realizada. Analizar esta salida.
a o
1. ¿Qu´ modelo genera el clasificador ZeroR?
e
2. ¿Cu´ntas instancias del conjunto de entrenamiento clasifica bien?
a
3. ¿Qu´ porcentaje de instancias clasifica bien?
e
4. ¿Qu´ crees que indica la matriz de confusi´n?
e o
2.2. Clasificador J48
Cargar el conjunto de datos iris.arff. En la pesta˜a Classify, seleccionar el clasificador trees/j48. En las Test
n
Options seleccionar Use trainning set, y pulsar el bot´n de Start para que genere el clasificador.
o
1. ¿Cu´ntas hojas tiene el ´rbol generado con J48?
a a
2. ¿Cu´ntas instancias del conjunto de entrenamiento clasifica bien?
a
3. ¿Qu´ porcentaje de instancias clasifica bien?
e
4. Analizar la matriz de confusi´n: ¿qu´ ha clasificado mal?
o e
5. Pulsar el bot´n de More Options y seleccionar la opci´n de Output predictions. ¿En qu´ instancias se ha
o o e
equivocado?
6. (Avanzado) Elegir una instancia que J48 haya clasificado err´neamente y a analizar por qu´
o e
Adem´s, utiliza alguna de las herramientas de visualizaci´n de Weka:
a o
En la ventana de Result list, pulsa en el bot´n derecho sobre el modelo generado con J48 para desplegar las
o
opciones. Pulsa sobre Visualize Tree
3. En la ventana de Result list, pulsa en el bot´n derecho sobre el modelo generado con J48 para desplegar las
o
opciones. Pulsa sobre Visualize Errors
(Avanzado) Por ultimo, vamos a estudiar en Weka c´mo se podr´ hacer una selecci´n de atributos mediante
´ o ıa o
J48. Para ello:
¿Podr´ utilizar el ´rbol generado anteriormente para hacer selecci´n de caracter´
ıas a o ısticas?
Identificar un filtro capaz de ejecutar una selecci´n de caracter´
o ısticas basada en wrappers, que realice una
b´squeda mejor-primero Best First, y que utilice como m´todo de evaluaci´n en el proceso de b´squeda un
u e o u
a
´rbol de decisi´n
o
2.3. Clasificador ID3
Cargar el conjunto de datos iris.arff. Seleccionar el clasificador ID3 y utilizarlo para generar un ´rbol de decisi´n.
a o
1. ¿Has podido ejecutar el algoritmo ID3 sobre el conjunto de datos directamente? ¿Por qu´?
e
2. ¿Qu´ acciones has llevado a cabo para poder ejecutarlo?
e
3. ¿Qu´ porcentaje de ´xito sobre el conjunto de entrenamiento has obtenido?
e e
4. ¿Qu´ porcentaje de ´xito obtienes si utilizas como mecanismo de evaluaci´n la validaci´n cruzada?
e e o o
5. ¿Qu´ porcentaje de ´xito estimas que obtendr´s en el futuro sobre nuevos datos con el ´rbol generado con
e e a a
ID3?
3. ´
Regresi´n y Arboles de Regresi´n
o o
Cargar el conjunto de datos cpu.arff. Entre los algoritmos ID3, J48 y M5P, elegir uno de ellos para aproximar
el atributo class sin que sea necesario tratar los datos de entrada de ninguna forma.
1. ¿Qu´ algoritmo has elegido? ¿por qu´?
e e
2. ¿Qu´ porcentaje de error obtienes si utilizas como mecanismo de evaluaci´n la validaci´n cruzada?
e o o
3. ¿Por qu´ no disponemos ahora de una matriz de confusi´n?
e o
4. Intentar mejorar los resultado obtenidos mediante la aplicaci´n de filtros o el uso de otros algoritmos.
o
4. El Experimenter
El objetivo de este ejercicio es familiarizarse con una herramienta avanzada de an´lisis de datos integrada
a
en Weka, denominada Experimenter. Esta herramienta permite ejecutar distintos algoritmos de miner´ de datos
ıa
sobre distintos conjuntos de datos, de forma que su ejecuci´n secuencial hace m´s r´pida su ejecuci´n, as´ como la
o a a o ı
evaluaci´n de los resultados.
o
4.1. An´lisis Manual de experimentos
a
Para ello, seguir los siguientes pasos:
Generaci´n del experimento:
o
1. Pulsar el bot´n New para generar un nuevo experimento
o
2. Seleccionar los conjuntos de datos: iris.arff, soybean.arff y labor.arff
3. Seleccionar los clasificadores: J48,IBK con K = 1, IBK con K = 3, IBK con K = 5, y SMO
4. En el apartado Results Destination seleccionar CSV file y utilizar el bot´n de Browse para elegir el
o
fichero
5. Seleccionar las opciones adecuadas para que ejecute primero sobre conjuntos de datos, y que s´lo ejecute
o
una vez el experimento
4. 6. Pulsar el bot´n de save para grabar la configuraci´n del experimento
o o
7. Pulsar la pesta˜a Run y pulsar el bot´n de Start
n o
An´lisis manual del experimento
a
1. Una vez finalizado el proceso, abrir una hoja de c´lculo, y cargar el fichero CSV
a
2. En ese fichero, se muestra en cada fila los datos de cada ejecuci´n, incluyendo el conjunto de datos, el
o
clasificador utilizado con sus par´metros, as´ como datos sobre sus resultados
a ı
3. Localizar la columna que mide el porcentaje de ´xito
e
4. Obtener la media del porcentaje de ´xito para cada clasificador y conjunto de datos
e
Una vez realizados los pasos anteriores, responder a las siguientes preguntas:
¿Qu´ resultados ha obtenido cada clasificador en cada conjunto de datos?
e
¿Qu´ algoritmo ha obtenido mejores resultados en cada conjunto de datos?
e
¿Son los resultados del mejor algoritmo mucho mejores que los del resto?
4.2. (Avanzado) El Analizer de Weka
1. Pulsar la pesta˜a Analyse para analizar los resultados del experimento.
n
2. Pulsar el bot´n Experiment para seleccionar los resultados del experimento realizado en el apartado anterior
o
3. Seleccionar Percent Correct en el Comparison field
4. Seleccionar el t-test pareado como m´todo de evaluaci´n
e o
5. Seleccionar la opci´n adecuada para que muestre las desviaciones est´ndar
o a
6. Los caract´res v y * indican si el resultado es estad´
e ısticamente mejor (v) o peor (*) que el esquema base, con
el nivel de significaci´n especificado (por defecto 0.05).
o
7. Los n´meros entre par´ntesis (v/ /*) que aparecen debajo de cada esquema indican el n´umero de veces que
u e u
el esquema es mejor (v), igual y peor (*) que el esquema base.
En funci´n de estos nuevos resultados, ¿puedes a˜adir algo a lo que has respondido en el apartado anterior?
o n
5. Agrupaci´n
o
El objetivo de este ejercicio es familiarizarse con algunas t´cnicas de agrupaci´n. Para ello, vamos a utilizar
e o
tambi´n el conjunto de datos iris.arff.
e
Cargar el conjunto de datos iris.arff.
Eliminar el atributo class
Ejecutar el algoritmo SimpleKMeans para generar 3 grupos. ¿Qu´ medida de rendimiento genera Weka?
e
¿Qu´ valor proporciona?
e
Ejecutar el algoritmo SimpleKMeans para generar 5 grupos. ¿C´mo mejora la medida de rendimiento?
o
Utilizar la herramienta de visualizaci´n de grupos para comparar los dos resultados. ¿Puedes obtener alguna
o
conclusi´n?
o
(Avanzado) Ejecutar el algoritmo EM con los par´metros por defecto. ¿Cu´ntas distribuciones genera? ¿Hay
a a
alguna relaci´n con alguno de los resultados generados con SimpleKMeans?
o