Department of Computer Science, University of Waikato, New Zealand Eibe Frank WEKA: A Machine Learning Toolkit The Explorer Classification and Regression Clustering Association Rules Attribute Selection Data Visualization The Experimenter The Knowledge Flow GUI Conclusions Machine Learning with WEKA DATASETS
4/17/2015University of Waikato2 WEKA: el pájaro Copyright: Martin Kramer
4/17/2015University of Waikato3 WEKA: el programa Software para máquinas de aprendizaje/minerías de datos en Java (distribuido bajo GNU Public License) Usado para investigación, educación y aplicaciones Complementa el libro “Data Mining” by Witten & Frank Principales características: Abarca conjunto de herramientas para el preprocesamiento de datos, algoritmos de aprendizaje y métodos de evaluación. Interfaces gráficas incluyendo visualización de datos Posibilidad de comparar algoritmos de aprendizaje.
4/17/2015University of Waikato4 WEKA: versiones Varias versiones de WEKA: WEKA 3.0: “book version” compatible con la descripción en el libro de minería de datos. WEKA 3.2: “GUI version” con interfaces de usuario gráficas.(la versión de libro esta orientada a linea de comandos solamente) WEKA 3.3: “versión de desarrollo” con muchas mejoras Estas presentaciones están basadas en snapshots de WEKA 3.3 (WEKA 3.4, 3.5, 3.6)
4/17/2015University of age sex { female, chest_pain_type { typ_angina, asympt, non_anginal, cholesterol exercise_induced_angina { no, class { present, 63,male,typ_angina,233,no,not_present 67,male,asympt,286,yes,present 67,male,asympt,229,yes,present 38,female,non_anginal,?,no,not_present... WEKA solo trabaja con archivos “planos ”
4/17/2015University of age sex { female, chest_pain_type { typ_angina, asympt, non_anginal, cholesterol exercise_induced_angina { no, class { present, 63,male,typ_angina,233,no,not_present 67,male,asympt,286,yes,present 67,male,asympt,229,yes,present 38,female,non_anginal,?,no,not_present... WEKA solo trabaja con archivos “planos
4/17/2015University of Waikato7
4/17/2015University of Waikato8 LINEA DE COMANDOS
4/17/2015University of Waikato9
4/17/2015University of Waikato10 Explorer: pre-procesamiento de datos Los datos pueden ser importados de varios formatos: ARFF, CSV, C4.5, binary Los datos pueden ser leídos desde un URL o desde una base de datos SQL (usando JDBC) Las herramientas de preprocesamiento en WEKA se llaman “filters”(filtros) WEKA contiene filters para: Discretización, normalización, muestreo (resampling), selección de atributos, transformación y combinación de atributos, …
4/17/2015University of Waikato11
4/17/2015University of Waikato12
4/17/2015University of Waikato13
4/17/2015University of Waikato14
4/17/2015University of Waikato15
4/17/2015University of Waikato16
4/17/2015University of Waikato17
4/17/2015University of Waikato18
4/17/2015University of Waikato19
4/17/2015University of Waikato20
4/17/2015University of Waikato21
4/17/2015University of Waikato22
4/17/2015University of Waikato23
4/17/2015University of Waikato24
4/17/2015University of Waikato25
4/17/2015University of Waikato26
4/17/2015University of Waikato27
4/17/2015University of Waikato28
4/17/2015University of Waikato29
4/17/2015University of Waikato30
4/17/2015University of Waikato31
4/17/2015University of Waikato32 Explorer: construcción de “clasificadores” Clasificadores en WEKA son modelos de predicción con valores nominales o numéricos Los esquemas de aprendizaje implementados incluyen: Listas y árboles de Decisión, clasificadores basados en instancias, máquinas de soporte de vectores(SVM), perceptrón multi-capa, regresión logística, redes de Bayes, … Incluye “Meta”-clasificadores: Bagging, boosting, stacking, códigos de correción de salida de error, aprendizaje localmente evaluado…
4/17/2015University of Waikato33
4/17/2015University of Waikato34
4/17/2015University of Waikato35
4/17/2015University of Waikato36
4/17/2015University of Waikato37
4/17/2015University of Waikato38
4/17/2015University of Waikato39
4/17/2015University of Waikato40
4/17/2015University of Waikato41
4/17/2015University of Waikato42
4/17/2015University of Waikato43
4/17/2015University of Waikato44
4/17/2015University of Waikato45
4/17/2015University of Waikato46
4/17/2015University of Waikato47
4/17/2015University of Waikato48
4/17/2015University of Waikato49
4/17/2015University of Waikato50
4/17/2015University of Waikato51 Kappa Kappa Statistics: an index which compares the agreement against that which might be expected by chance. Kappa can be thought of as the chance-corrected proportional agreement, and possible values range from +1 (perfect agreement) via 0 (no agreement above that expected by chance) to -1 (complete disagreement). Hypothetical Example: 29 patients are examined by two independent doctors (see Table). 'Yes' denotes the patient is diagnosed with disease X by a doctor. 'No' denotes the patient is classified as no disease X by a doctor. Kappa = (Observed agreement - Chance agreement)/(1 - Chance agreement) Observed agreement = ( )/29 = 0.76 Chance agreement = * * = Kappa = ( )/( ) = 0.54 Doctor A NoYesTotal Doctor B No10(34.5%)7(24.1%)17 (58.6%) Yes0(0%)12 (41.4%) Total10(34.5%)19 (65.5%)29
4/17/2015University of Waikato52 Otros evaluadores recall: The number of correct but missed locations ina body of text or correct but not returned search results for a user's query. Recall is also widely used in evaluating other types of automatic systems. Typically expressed as a fraction such that a recall of 0.7 means that seven in ten of the possible correct answers were found. F-measure: The harmonic mean of precision and recall. F-measure is widely used to evaluate the quality of automated systems. F-measure is a function of confidence cutoff. To compute F-measure, one must first devise a ground truth set of information against which the automated system's output is compared.
4/17/2015University of Waikato53
4/17/2015University of Waikato54
4/17/2015University of Waikato55
4/17/2015University of Waikato56
4/17/2015University of Waikato57
4/17/2015University of Waikato58
4/17/2015University of Waikato59
4/17/2015University of Waikato60
4/17/2015University of Waikato61
4/17/2015University of Waikato62
4/17/2015University of Waikato63
4/17/2015University of Waikato64
4/17/2015University of Waikato65
4/17/2015University of Waikato66
4/17/2015University of Waikato67
4/17/2015University of Waikato68
4/17/2015University of Waikato69
4/17/2015University of Waikato70
4/17/2015University of Waikato71
4/17/2015University of Waikato72
4/17/2015University of Waikato73
4/17/2015University of Waikato74
4/17/2015University of Waikato75
4/17/2015University of Waikato76
4/17/2015University of Waikato77
4/17/2015University of Waikato78
4/17/2015University of Waikato79
4/17/2015University of Waikato80
4/17/2015University of Waikato81
4/17/2015University of Waikato82
4/17/2015University of Waikato83
4/17/2015University of Waikato84
4/17/2015University of Waikato85
4/17/2015University of Waikato86
4/17/2015University of Waikato87
4/17/2015University of Waikato88
4/17/2015University of Waikato89
4/17/2015University of Waikato90
4/17/2015University of Waikato91
4/17/2015University of Waikato92
4/17/2015University of Waikato93
4/17/2015University of Waikato94 Explorer: clustering data WEKA contiene “clusterers” para encontrar grupos de instancias similares en un conjunto de datos Esquemas implementados: k-Means, EM, Cobweb, X-means, FarthestFirst Los Clusters se pueden visualizar y comparar con “true” clusters (si son dados) Evaluación basada en “loglikelihood” si el esquema de clustering produce una distribución de probabilidad
4/17/2015University of Waikato95
4/17/2015University of Waikato96
4/17/2015University of Waikato97
4/17/2015University of Waikato98
4/17/2015University of Waikato99
4/17/2015University of Waikato100
4/17/2015University of Waikato101
4/17/2015University of Waikato102
4/17/2015University of Waikato103
4/17/2015University of Waikato104
4/17/2015University of Waikato105
4/17/2015University of Waikato106
4/17/2015University of Waikato107
4/17/2015University of Waikato108
4/17/2015University of Waikato109
4/17/2015University of Waikato110 Explorer: Encontrando asociaciones WEKA contiene una implementación del algoritmo Apriori para aprendizaje de reglas de asociación Trabaja solamente con datos discretos Puede identificar dependencias estadísticas entre grupos de atributos: milk, butter bread, eggs (con confianza 0.9 y soporte de 2000) Apriori puede calcular todas las reglas que tienen un soporte mínimo y excedan una confianza dada.
4/17/2015University of Waikato111 Reglas de Asociación If humedad=normal and viento=no Then clase=P 4/4 If humedad=normal and clase=P Then viento=no 4/6 If viento=no and clase=P Then humedad=normal 4/6 If humedad=normal Then viento=no and clase=P 4/7 If viento=no Then clase=P and humedad=normal 4/8 If clase=P Then viento=no and humedad=normal 4/9 If true Then humedad=normal and viento=no and clase=P 4/12 Si pensamos en 100% de éxito, entonces sólo la primera regla cumple.
4/17/2015University of Waikato112 De hecho existen 58 reglas considerando la tabla completa que cubren al menos dos ejemplos con un 100% de exactitud (exaccuracy). El proceso es mas o menos el siguiente y sigue dos pasos (Apriori, Agrawal et al. '94): Genera todas los items sets con un elemento. Usa estos para generar los de dos elementos, y así sucesivamente. Se toman todos los posibles pares que cumplen con las medidas mínimas de soporte. Esto permite ir eliminando posibles combinaciones ya que no todas se tienen que considerar. Genera las reglas revisando que cumplan con el criterio mínimo de confianza.
4/17/2015University of Waikato113
4/17/2015University of Waikato114
4/17/2015University of Waikato115
4/17/2015University of Waikato116
4/17/2015University of Waikato117
4/17/2015University of Waikato118
4/17/2015University of Waikato119
4/17/2015University of Waikato120 Explorer: Selección de atributos El Panel puede ser usado para investigar cual o cuales subconjuntos de atributos son los más predictivos Métodos de selección de atributos contienen dos partes: Un método de búsqueda: best-first, forward selection, random, exhaustivo, algoritmos genéticos, ranking Un método de evaluación: basados en correlación, wrapper, ganancia de información, chi-cuadrado, … Flexible: WEKA permite (casi) combinaciones arbitrarias de estas dos
4/17/2015University of Waikato121
4/17/2015University of Waikato122
4/17/2015University of Waikato123
4/17/2015University of Waikato124
4/17/2015University of Waikato125
4/17/2015University of Waikato126
4/17/2015University of Waikato127
4/17/2015University of Waikato128
4/17/2015University of Waikato129 Explorer: visualización de datos Visualización muy útil : ayuda a determinar la dificultad de un problema para el aprendizaje de un problema WEKA puede visualizar atributos simples en (1-d) y pares de atributos en (2-d) Para hacerlo: rotando en visualizaciones 3-d (estilo Xgobi) Valores de clases por color “Jitter” opción para trabajar con atributos nominales (y detectar puntos “escondidos”) Función “Zoom-in”
4/17/2015University of Waikato130 Visualización Muestra la distribución de todos los atributos en 2D Representa en los ejes todos los posibles pares de combinaciones de los atributos. Este modo nos permite ver correlaciones y asociaciones entre los atributos.
4/17/2015University of Waikato131
4/17/2015University of Waikato132
4/17/2015University of Waikato133
4/17/2015University of Waikato134
4/17/2015University of Waikato135
4/17/2015University of Waikato136
4/17/2015University of Waikato137
4/17/2015University of Waikato138
4/17/2015University of Waikato139
4/17/2015University of Waikato140
4/17/2015University of Waikato141
4/17/2015University of Waikato142
4/17/2015University of Waikato143 Realizando experimentos El Experimentador hace fácil comparar el comportamiento de los diferentes esquemas de aprendizaje. Problemas de clasificación y regresión Los resultados pueden ser escritos a un archivo o una base de datos Opciones de evaluación: cross-validation, curvas de aprendizaje, hold-out Puede iterar al definirse diferentes parámetros Prueba de significancia incorporada!
4/17/2015University of Waikato144
4/17/2015University of Waikato145
4/17/2015University of Waikato146
4/17/2015University of Waikato147
4/17/2015University of Waikato148
4/17/2015University of Waikato149
4/17/2015University of Waikato150
4/17/2015University of Waikato151
4/17/2015University of Waikato152
4/17/2015University of Waikato153
4/17/2015University of Waikato154
4/17/2015University of Waikato155
4/17/2015University of Waikato156
4/17/2015University of Waikato157 El flujo del conocimiento con GUI Nueva interface gráfica para WEKA interface basada en Java-Beans para definir, ejecutar experimentos de máquinas de aprendizaje. Las pestañas Data sources, classifiers, etc. son beans que se pueden conectar gráficamente Digamos que los datos fluyen a través de los componentes: e.g.,“data source” -> “filter” -> “classifier” -> “evaluator” Los experimentos pueden ser guardados y cargados
4/17/2015University of Waikato158
4/17/2015University of Waikato159
4/17/2015University of Waikato160
4/17/2015University of Waikato161
4/17/2015University of Waikato162
4/17/2015University of Waikato163
4/17/2015University of Waikato164
4/17/2015University of Waikato165
4/17/2015University of Waikato166
4/17/2015University of Waikato167
4/17/2015University of Waikato168
4/17/2015University of Waikato169
4/17/2015University of Waikato170
4/17/2015University of Waikato171
4/17/2015University of Waikato172
4/17/2015University of Waikato173
4/17/2015University of Waikato174
4/17/2015University of Waikato175
4/17/2015University of Waikato176
4/17/2015University of Waikato177
4/17/2015University of Waikato178 Conclusion: try it yourself! WEKA esta disponible en Se tienen una lista de proyectos basados en WEKA Quienes han contribuido WEKA : Abdelaziz Mahoui, Alexander K. Seewald, Ashraf M. Kibriya, Bernhard Pfahringer, Brent Martin, Peter Flach, Eibe Frank,Gabi Schmidberger,Ian H. Witten, J. Lindgren, Janice Boughton, Jason Wells, Len Trigg, Lucio de Souza Coelho, Malcolm Ware, Mark Hall,Remco Bouckaert, Richard Kirkby, Shane Butler, Shane Legg, Stuart Inglis, Sylvain Roy, Tony Voyle, Xin Xu, Yong Wang, Zhihai Wang