Taller weka
-
Upload
blanca-vargas-govea -
Category
Documents
-
view
4.232 -
download
0
Transcript of Taller weka
![Page 1: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/1.jpg)
Introducción a árboles y selección de atributos usando
WEKA
Blanca A. Vargas [email protected]
Grupo de Sistemas de Recomendacióncenidet
Marzo 29, 2012
![Page 2: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/2.jpg)
2
Contenido
IntroducciónInterfaces
El origen
Clasificadores: árboles
Selección de atributos
1
2
3
![Page 3: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/3.jpg)
3
Introducción
![Page 4: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/4.jpg)
4
¿Qué es WEKA?
![Page 5: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/5.jpg)
5
¿Qué es WEKA?
aikato nvironment for nowledge nalysis
WWEEKKAA
Plataforma de prueba para aprendizaje automático
![Page 6: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/6.jpg)
6
NuevaZelanda
![Page 7: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/7.jpg)
7
Origen
1993 ● Inicio del proyecto – Universidad de Waikato.●Primer versión en C y TCL/TK.●Algoritmos de distintas fuentes.
1997 ●Reimplementación en Java. ●Cambio de nombre a JAWS (Java WEKA System).
1998 ● Incluía clasificadores, reglas de asociación, filtros y evaluación.
1999 ●Se le agregó selección de atributos.●Se le regresó el nombre WEKA.
![Page 8: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/8.jpg)
8
¿Qué se puede hacer con WEKA?
Pre-proceso de datos:
Soporte de distintos formatos, conectividad a base de datos y filtrado.
Clasificación:
Más de 100 métodos.
Clustering:
K-means, jerárquicos.
![Page 9: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/9.jpg)
9
¿Qué se puede hacer con WEKA?
Selección de atributos:Diversos criterios de selección y métodos de búsqueda.
Visualización:Gráficas de atributos con respecto a la clase y a otros atributos.
Visualización: Árboles, redes bayesianas y dendogramas para clustering jerárquico.
![Page 10: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/10.jpg)
10
¿Cómo puede usarse?
●Aplicar un método de aprendizaje a un conjunto de datos y analizar la salida para aprender más sobre los datos.
●Usar métodos aprendidos para generar predicciones sobre nuevas instancias.
![Page 11: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/11.jpg)
11
¿Cómo puede usarse?
●Aplicar diferentes técnicas y comparar su desempeño para elegir uno.
●Preprocesamiento y selección de atributos: transformación de atributos continuos a nominales, eliminación de atributos irrelevantes o redundantes.
![Page 12: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/12.jpg)
12
Interfaces
Exploración de datos, filtrado, clasificación,clustering y visualización.
Experimentos que involucren clasificación y regresión. Permite comparación de desempeño.
Exploración, procesamiento y visualización. El usuario determina los pasos y puede repetirse.
![Page 13: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/13.jpg)
13
Explorer: preprocess
![Page 14: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/14.jpg)
14
Clasificadores: Árboles
![Page 15: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/15.jpg)
15
Clasificadores
Algoritmo/Sistema que asigna un valor de clase a una instancia compuesta por ciertos atributos o características.
Color Tamaño Forma Claserojo mediano redonda manzanaverde chico redonda limónamarillo mediano alargada plátano
![Page 16: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/16.jpg)
16
Clasificadores
![Page 17: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/17.jpg)
17
Tabla de outlook
![Page 18: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/18.jpg)
18
Árboles
outlook
humidity windyyes
no yes yesno
sunny rainysunny
overcast
high normal true false
![Page 19: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/19.jpg)
19
Árboles
1.En la interfaz de preproceso abrir el archivo outlook.csv. Revisar que las variables sean las correctas.
2.En classifier seleccionar 'trees' y J48.
3.Seleccionar 'Use training set'.
4.Verificar que como clase, esté 'play'.
5.Oprimir 'Start' para obtener el árbol.
![Page 20: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/20.jpg)
20
Árboles
¿Cómo se construyó el árbol?
![Page 21: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/21.jpg)
21
ÁrbolesEnfoque: divide y vencerás/top-down (J. Ross Quinlan)
outlook
nononoyesyes
yesyesyesyes
yesyesnoyesno
sunnyovercast
rainy
tempera-ture
nononoyesyes
yesyesyesyes
yesyesnoyesno
hotmild
cool
![Page 22: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/22.jpg)
22
¿Cómo determinar qué atributo divide mejor al árbol?
Árboles
El mejor nodo es aquél en el que sus hojas hay solamente una clase.
![Page 23: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/23.jpg)
23
Árboles: ganancia de información
Buscamos un atributo que nos de la mayor ganancia de información para tomar una decisión.
Ganancia de información. Probabilidad de que un ejemplo del conjunto pertenezca a cierta clase.
![Page 24: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/24.jpg)
24
Árboles: entropía
Entropía. Información necesaria para clasificar un ejemplo. Se asocia a la pureza/impureza de una variable.
En un conjunto con alta entropía es más difícil predecir el valor de clase.
Entropía(S )=∑j=1
m
p j log2 p j
![Page 25: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/25.jpg)
25
Árboles: buscando el mejor nodo
Para outlook: [yes,no]
sunny: [2,3],overcast: [4,0], rainy: [3,2]
p(outlook = sunny y yes) = 2/5p(outlook = sunny y no) = 3/5
info(sunny) = -2/5 log2(2/5) – 3/5 log2(3/5) = 0.971 bits
p(outlook = overcast y yes) = 4/4p(outlook = sunny y no) = 0/4
info(overcast) = -4/4 log2(4/4) – 0 log2(0) = 0 bits
![Page 26: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/26.jpg)
26
Árboles: buscando el mejor nodo
p(outlook = rainy y yes) =3/5p(outlook = rainy y no) = 2/5
info(rainy) = -3/5 log2(3/5) – 2/5 log2(2/5) = 0.971 bits
Se calcula el promedio del valor de información tomando en cuenta el no. de instancias de cada rama:p(rainy) = 5/14, p(overcast) = 4/14, p(sunny) = 5/14
info(play|outlook) = 5/14 (0.971) + 4/14(0) + 5/14(0.971) = 0.693 bits
![Page 27: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/27.jpg)
27
Árboles: buscando el mejor nodo
Así, se calcula la ganancia de información para cada atributo y se selecciona el de mayor valor.
ya que conozco outlook, ¿cuánta información gané?ganancia(outlook) = info(play) -info(play|outlook)p(play = yes) = 9/14p(play = no) = 5/14
ganancia(outlook) = 0.940 bits - 0.693 bits = 0.247 bits
Necesito 0.247 bits menos si conozco outlook
![Page 28: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/28.jpg)
28
Árboles: buscando el mejor nodoganancia(outlook) = 0.247 bitsganancia(temperature) = 0.029 bitsganancia(humidity) = 0.152 bitsganancia(windy) = 0.048 bits
Se continúa recursivamente ahora con outlook como nodo raíz.
Idealmente el proceso termina cuando todos los nodos son puros.
![Page 29: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/29.jpg)
29
Árboles: buscando el mejor nodo
outlook
humidity windyyes
no yes yesno
sunny rainysunny
overcast
high normal true false
3 2
4
2 4
![Page 30: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/30.jpg)
30
Práctica
1.Con los datos del archivo rtoy.html, construye un archivo de tipo CSV.
2.Construye los sub-árboles para cada atributo.
3.Con base en 2, ¿cuál crees que sería el mejor atributo?
4.Obtén la ganancia de información para el atributo que crees sería el mejor.
5. Obtén el árbol en WEKA e interpreta los resultados del árbol. ¿Fué el mejor atributo el que tu creíste? ¿qué indica en términos del usuario el árbol obtenido?
![Page 31: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/31.jpg)
31
Selección de atributos
![Page 32: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/32.jpg)
32
¿Por qué selección de atributos?
Calidad de los datos – éxito algoritmos.
Problemas: información irrelevante, ruidosa.
Procesos lentos debido exceso de información poco significativa.
![Page 33: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/33.jpg)
33
¿Por qué selección de atributos?
Problemas aún con algoritmos como C4.5.
Selección manual: profundo conocimiento del problema y los atributos.
![Page 34: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/34.jpg)
34
¿Por qué selección de atributos?
Selección deatributos
Técnica muy usada - 1970 Elimina datos redundantes,
irrelevantes, ruidosos. Reconocimiento de patrones,
aprendizaje automático, minería de datos.
Categorización de textos, recuperación de imágenes, detección de intrusos y análisis del genoma.
![Page 35: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/35.jpg)
35
Beneficios Mejora del desempeño
predictivo
Reducción del tiempo de entrenamiento/proceso
Reducción de las necesidades de almacenamiento
Visualización y comprensión de los datos
¡Qué bueno que saquétodo lo que había
guardado en el auto!
![Page 36: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/36.jpg)
36
Selección de atributos: objetivo
Seleccionar el sub-conjunto más pequeño de atributos tal que no se afecte significativamente el porcentaje de clasificación y que la distribución resultante sea lo más parecida a la original.
![Page 37: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/37.jpg)
37
Selección de atributos: cuatro pasos
Generación de sub-conjuntos
Evaluación de sub-conjuntos
Criteriode
paro
Validaciónde
resultados
Conjunto original
Sub-conjunto
NoSi
Medida de bondad del sub-conjunto
![Page 38: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/38.jpg)
38
1. Generación de sub-conjuntos: búsquedaCada estado en el espacio define un sub-conjunto candidato.
Dirección de la búsqueda: forward y backward
![Page 39: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/39.jpg)
39
1. Generación de sub-conjuntos: búsqueda
Búsqueda exhaustiva - impráctica
Búsqueda greedy haciendo un cambio en cada estado (agregando o borrando un atributo http://en.wikipedia.org/wiki/Greedy_algorithm
Otros esquemas:Best-first, beam search
![Page 40: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/40.jpg)
40
![Page 41: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/41.jpg)
41
2. Evaluación de sub-conjuntosCada candidato es evaluado y comparado con el mejor de acuerdo a cierto criterio de evaluación.
Filtro:● Independiente● Características de los datos
Envoltura:● Dependiente del algoritmo.
● Se usa la evaluación del ● algoritmo de aprendizaje.● Costo computacional alto
como el C4.5
![Page 42: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/42.jpg)
42
Filtros: rankeoMedidas de distancia, de información. Ejemplos:
Ganancia de información.
Basado en instancias. Se muestrea aleatoriamente una instancia, se ubica a los vecinos cercanos (misma clase y opuesta).
a b c d f g consa b c d f e cons
a b c d f g consa b c d f e vocal
Irrelevante, se decrementasu score.
Relevante, se incrementasu score.
Se seleccionan los atributos con pesos positivos
![Page 43: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/43.jpg)
43
Filtros: sub-conjuntosMedidas de dependencia y de consistencia. Ejemplos:
Correlación
Consistencia
![Page 44: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/44.jpg)
44
![Page 45: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/45.jpg)
45
![Page 46: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/46.jpg)
46
3. Criterio de paro
Determina cuándo el proceso de selección debe parar.
Búsquedacompleta
Límite:No. de atributosNo. iteraciones
Se selecciona unsub-conjunto bueno
No hay mejoraal agregar o eliminar un atributo
![Page 47: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/47.jpg)
47
4. Validación de resultados
Probar con los datos/algoritmos de la aplicación de tu interés
![Page 48: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/48.jpg)
48
Actividades 1
1.Selecciona atributos usando CfsSubsetEval y búsqueda GreedyStepwise. Evalúa con 'use full training set' y con 'cross-validation'.
2.Interpreta los resultados: ¿son los mismos atributos significativos?¿Por qué?
3.Selecciona atributos usando Relief.
4.Interpreta los resultados. ¿Cuál es la diferencia en la salida con respecto a CfsSubsetEval?
Aplica la selección de atributos usando CfsSubsetEval. Datos: car, adult y mushroom
![Page 49: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/49.jpg)
49
Actividades 2
1.Selecciona atributos con WrapperSubsetEval, J48 y GreedyStepwise. Evalúa con el conjunto completo y cross-validation.
2.Interpreta los resultados. Compara con los resultados del ejercicio anterior.
3.Selecciona atributos con un filtro para atributos individuales, elimina los atributos. Corre un árbol J48 con el archivo resultante.
4.Repite pero ahora haz el proceso con J48. ¿Son los mismos atributos? ¿Con cuál conjunto es mejor la evaluación?
Aplica la selección de atributos usando WrapperSubsetEval Datos:
![Page 50: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/50.jpg)
50
Referencias
[Bouckaert et al., 2010] Bouckaert, R. R., Frank, E., Hall, M. A., Holmes, G., Pfahringer, B., Reutemann, P., andWitten, I. H. (2010). WEKA–experiences with a java open-source project. Journal of Machine Learning Research, 11:2533– 2541.
[Hall et al., 2009] Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reutemann, P., and Witten, I. H. (2009). The WEKA data mining software: an update. SIGKDD Explorations Newsletter, 11:10–18.
[Witten et al., 2011] Witten, I., Frank, E., and Hall, M. (2011). Data Mining: Practical Machine Learning Tools and Techniques. Morgan Kaufmann series in data management systems. Elsevier Science & Technology
![Page 51: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/51.jpg)
51
Referencias
[Hall and Holmes, 2003] Hall, M. A. and Holmes, G. (2003). Benchmarking attribute selection techniques for discrete class data mining. IEEE Transactions on Knowledge and Data Engineering, 15(6):1437–1447.
[Liu and Yu, 2005] Liu, H. and Yu, L. (2005). Toward integrating feature selection algorithms for classification and clustering. IEEE Transactions on Knowledge and Data Engineering, 17:491–502
[Guyon and ElisseeU, 2003] Guyon, I. and ElisseeU, A. (2003). An introduction to variable and feature selection. Journal of Machine Learning Research, 3:1157– 1182..
![Page 52: Taller weka](https://reader034.fdocuments.co/reader034/viewer/2022050711/5590e1e51a28abff378b457e/html5/thumbnails/52.jpg)
52
Mapa Nueva Zelandahttp://www.flickr.com/photos/duncan/478984969/in/photostream/Wekashttp://www.flickr.com/photos/61897811@N00/367600536/Acumuladohttp://www.flickr.com/photos/99796131@N00/347158515/Botellashttp://www.flickr.com/photos/96547648@N00/237795761/Expertoshttp://www.flickr.com/photos/35034348187@N01/35555985/Carrerahttp://www.flickr.com/photos/97449017@N00/289473278/Ollashttp://www.flickr.com/photos/12519225@N03/2263693205/
Imágenes