WEKA (Entorno Waikato para el análisis del conocimiento) es una colección de algoritmos de aprendizaje automático para tareas de minería de datos. Contiene herramientas para la preparación, clasificación, regresión, agrupación en clústeres, extracción de reglas de asociación y visualización de datos. También apoya Aprendizaje profundo.
Está escrito en Java y desarrollado en la Universidad de Waikato, Nueva Zelanda. Weka es un software de código abierto publicado bajo la Licencia Pública General GNU.
Weka proporciona acceso a bases de datos SQL utilizando Java Database Connectivity (JDBC) y permite utilizar la respuesta de una consulta SQL como fuente de datos. Esta herramienta no admite el procesamiento de gráficos relacionados; sin embargo, existen muchas herramientas que permiten combinar gráficos separados en uno solo, que se puede cargar directamente en Weka.
Hay dos versiones de Weka: Weka 3.8 es la última versión estable y Weka 3.9 es la versión de desarrollo. Para los más vanguardistas, también es posible descargar instantáneas nocturnas. Las versiones estables solo reciben correcciones de errores, mientras que la versión de desarrollo recibe nuevas funciones.
Weka 3.8 y 3.9 cuentan con un sistema de administración de paquetes que facilita a la comunidad Weka agregar nuevas funcionalidades a Weka.
Interfaces de usuario:
Tiene 5 interfaces de usuario:
1- CLI sencilla:
Proporciona acceso completo a todas las clases de Weka, es decir, clasificadores, filtros, agrupadores, etc., pero sin la molestia de CLASSPATH. Ofrece un shell Weka simple con línea de comando y salida separadas.
2- Explorador:
Un entorno para explorar datos con WEKA. Tiene diferentes pestañas:
- Preproceso: que le permite elegir y modificar los datos sobre los que se actúa.
- Clasificar: entrenar y probar esquemas de aprendizaje que clasifiquen o realicen regresión.
- Grupo: para aprender grupos de datos.
- Asociado: para aprender reglas de asociación para los datos.
- Seleccionar atributos: para seleccionar los atributos más relevantes de los datos.
- Visualizar: que le permite ver un gráfico 2D interactivo de los datos.
3- Experimentador:
Un entorno que permite al usuario crear, ejecutar, modificar y analizar experimentos de una manera más conveniente de lo que es posible al procesar los esquemas individualmente.
4- Flujo de conocimiento:
Admite esencialmente las mismas funciones que Explorer pero con una interfaz de arrastrar y soltar. KnowledgeFlow puede manejar datos de forma incremental o en lotes (el Explorador solo maneja datos por lotes).
5- Banco de trabajo:
Una nueva interfaz de usuario que está disponible desde Weka 3.8.0. Workbench proporciona una aplicación todo en uno que incluye todas las principales GUI de WEKA descritas anteriormente.
Reflejos:
- Soporte multiplataforma (Windows, Mac OS X y Linux).
- Código abierto gratuito.
- Facilidad de uso (incluye GUI).
- Una colección completa de técnicas de modelado y preprocesamiento de datos.
- Apoya el aprendizaje profundo.
Paquetes:
Weka tiene una gran cantidad de regresión y clasificación. herramientas. Algunos ejemplos son:
- Regresión logística bayesiana: Implementa regresión logística bayesiana para prioridades gaussianas y de Laplace.
- BayesNet: Aprendizaje de Bayes Network utilizando varios algoritmos de búsqueda y medidas de calidad.
- Procesos gaussianos: Implementa procesos gaussianos para regresión sin ajuste de hiperparámetros.
- Regresión lineal: Clase para utilizar la regresión lineal para la predicción.
- Perceptrón multicapa: Un clasificador que utiliza retropropagación para clasificar instancias.
- Regresión logística no negativa: Clase para aprender un modelo de regresión logística que tiene coeficientes no negativos.
- RitmoRegresión: Clase para construir modelos lineales de regresión de ritmo y usarlos para predicción.
- DOM: Implementa el algoritmo de optimización mínima secuencial de John Platt para entrenar un clasificador de vectores de soporte.
- Árbol AD: Clase para generar un árbol de decisión alterno.
- BFTárbol: Clase para construir un clasificador de árbol de decisión de mejor primero.
- Árbol Hoeffding: Un árbol de Hoeffding (VFDT) es un algoritmo de inducción de árbol de decisión incremental en cualquier momento que es capaz de aprender de flujos de datos masivos, asumiendo que la distribución que genera los ejemplos no cambia con el tiempo.
- M5P: M5Base. Implementa rutinas básicas para generar reglas y árboles del modelo M5.
- Bosque aleatorio: Clase para construir un bosque de árboles aleatorios.
- Árbol aleatorio: Clase para construir un árbol que considera K atributos elegidos aleatoriamente en cada nodo. No realiza podas.
- Carro simple: Clase que implementa poda de costo mínimo y complejidad.
- IBk: Clasificador de K-vecinos más cercanos. Puede seleccionar el valor apropiado de K según la validación cruzada. También se puede ponderar la distancia.
- IB1: Clasificador de vecino más cercano.
- LBR: Clasificador perezoso de reglas bayesianas.
- Tabla de decisiones: Clase para construir y utilizar un clasificador mayoritario de tabla de decisión simple.
- M5Reglas: Genera una lista de decisiones para problemas de regresión utilizando separar y conquistar. En cada iteración, construye un árbol modelo usando M5 y convierte la “mejor” hoja en una regla.
- CeroR: Clase para construir y usar un clasificador 0-R. Predice la media (para una clase numérica) o la moda (para una clase nominal).
- ClasificaciónVíaRegresión: Clase para hacer clasificación usando métodos de regresión.
- Apilado: Combina varios clasificadores mediante el método de apilamiento. Puede hacer clasificación o regresión.
- DatosNearBalancedND: Un metaclasificador para manejar conjuntos de datos de múltiples clases con clasificadores de 2 clases mediante la construcción de una estructura de árbol aleatoria con equilibrio de datos.
- TDM: Algoritmo de Densidad Diversa modificado, con supuesto colectivo.
- MENTE: Vecino más cercano de instancias múltiples con alumno de distribución.
Licencia:
Licencia pública general GNU.
Referencias:
Conclusión:
WEKA es una buena opción para la introducción por primera vez al aprendizaje automático, incluso para quienes no son programadores, debido a la simplicidad de la interfaz GUI.
Etiquetas
Aprendizaje automático Análisis Big Data análisis de datos ciencia de datos Código abierto Aprendizaje profundo IA