weka dataset classifier
Este tutorial explica el conjunto de datos WEKA, el clasificador y el algoritmo J48 para el árbol de decisiones. También proporciona información sobre conjuntos de datos ARFF de muestra para Weka:
En el Tutorial anterior , aprendimos sobre la herramienta Weka Machine Learning, sus funciones y cómo descargar, instalar y usar el software Weka Machine Learning.
WEKA es una biblioteca de algoritmos de aprendizaje automático para resolver problemas de minería de datos en datos reales. WEKA también proporciona un entorno para desarrollar muchos algoritmos de aprendizaje automático. Tiene un conjunto de herramientas para llevar a cabo diversas tareas de minería de datos, como clasificación de datos, agrupación de datos, regresión, selección de atributos, minería frecuente de conjuntos de elementos, etc.
Todas estas tareas se pueden realizar en el archivo sample.ARFF disponible en el repositorio WEKA o los usuarios pueden preparar sus archivos de datos. Los archivos .arff de muestra son conjuntos de datos que incorporan datos históricos recopilados por los investigadores.
=> Lea la serie completa de capacitación en aprendizaje automático
En este tutorial, veremos algunos conjuntos de datos de muestra en WEKA y también realizaremos la minería de datos del algoritmo del árbol de decisión utilizando el conjunto de datos weather.arff.
Lo que vas a aprender:
- Explorando conjuntos de datos WEKA
- Algoritmos de clasificación de árboles de decisión de Weka
- Conclusión
Explorando conjuntos de datos WEKA
La herramienta de aprendizaje automático de WEKA proporciona un directorio de algunos conjuntos de datos de muestra. Estos conjuntos de datos se pueden cargar directamente en WEKA para que los usuarios comiencen a desarrollar modelos de inmediato.
Los conjuntos de datos de WEKA se pueden explorar desde el enlace 'C: Archivos de programa Weka-3-8 data'. Los conjuntos de datos están en formato .arff.
Ejemplos de conjuntos de datos de WEKA
Algunos conjuntos de datos de muestra presentes en WEKA se incluyen en la siguiente tabla:
S.No. | Conjuntos de datos de muestra |
---|---|
7. | diabetes.arff |
1. | aerolinea.arff |
2. | mama-cancer.arff |
3. | lentes de contacto.arff |
4. | cpu.arff |
5. | cpu.with-vendor.arff |
6. | crédito-g.arff |
8. | glass.arff |
9. | hypothyroid.arff |
10. | ionospehre.arff |
11. | iris.2D.arff |
12. | iris.arff |
13. | labor.arff |
14. | Reuters Corn-train.arff |
15. | ReutersCorn-test.arff |
16. | ReutersGrain-train.arff |
17. | ReutersGrain-test.arff |
18. | segmento-desafío.arff |
19. | segmento-prueba.arff |
20. | soja.arff |
21. | supermercado.arff |
22. | desequilibrado.arff |
23. | vote.arff |
24. | weather.numeric.arff |
25. | weather.nominal.arff |
Echemos un vistazo a algunos de estos:
lentes de contacto.arff
contact-lens.arff dataset es una base de datos para la adaptación de lentes de contacto. Fue donado por el donante Benoit Julien en el año 1990.
Base de datos: Esta base de datos está completa. Los ejemplos utilizados en esta base de datos son completos y sin ruido. La base de datos tiene 24 instancias y 4 atributos.
Atributos: Los cuatro atributos son nominales. No faltan valores de atributo. Los cuatro atributos son los siguientes:
#1) Edad del paciente: El atributo edad puede tomar valores:
- joven
- pre-presbicia
- présbita
#2) Prescripción de gafas: este atributo puede tomar valores:
- miope
- hipermétrope
#3) Astigmático: este atributo puede tomar valores
- no
- sí
#4) Tasa de producción de lágrimas: los valores pueden ser
- reducido
- normal
Clase: Aquí se definen tres etiquetas de clase. Estos son:
- el paciente debe estar equipado con lentes de contacto rígidos.
- el paciente debe estar equipado con lentes de contacto blandas.
- el paciente no debe usar lentes de contacto.
Distribución de clases: las instancias que se clasifican en etiquetas de clase se enumeran a continuación:
Etiqueta de clase | No de instancias | |
---|---|---|
1. | Lentes de contacto duras | 4 |
2. | Lentes de contacto blandas | 5 |
3. | Sin lentes de contacto | 15 |
iris.arff
El conjunto de datos iris.arff fue creado en 1988 por Michael Marshall. Es la base de datos de Iris Plants.
cómo usar double en java
Base de datos: Esta base de datos se utiliza para el reconocimiento de patrones. El conjunto de datos contiene 3 clases de 50 instancias. Cada clase representa un tipo de planta de iris. Una clase es linealmente separable de las otras 2, pero estas últimas no son linealmente separables entre sí. Predice a qué especie de las 3 flores de iris pertenece la observación. Esto se denomina conjunto de datos de clasificación de clases múltiples.
Atributos: Tiene 4 atributos numéricos, predictivos y la clase. No faltan atributos.
Los atributos son:
- longitud del sépalo en cm
- ancho del sépalo en cm
- longitud del pétalo en cm
- ancho del pétalo en cm
- clase:
- Iris Setosa
- Iris Versicolor
- Iris virginica
Resumen estadístico:
Min | Max | Significar | Dakota del Sur | Correlación de clases | |
---|---|---|---|---|---|
longitud del sépalo | 4.3 | 7.9 | 5.84 | 0.83 | 0.7826 |
ancho del sépalo | 2.0 | 4.4 | 3.05 | 0.43 | -0.4194 |
longitud del pétalo | 1.0 | 6.9 | 3.76 | 1.76 | 0,9490 (¡alto!) |
ancho de pétalo | 0.1 | 2.5 | 1.20 | 0.76 | 0,9565 (¡alto!) |
Distribución de clases: 33,3% para cada una de las 3 clases
Algunos otros conjuntos de datos:
diabetes.arff
La base de datos de este conjunto de datos es Pima Indians Diabetes. Este conjunto de datos predice si el paciente es propenso a ser diabético en los próximos 5 años. Los pacientes de este conjunto de datos son mujeres de al menos 21 años de edad de Pima Indian Heritage. Tiene 768 instancias y 8 atributos numéricos más una clase. Se trata de un conjunto de datos de clasificación binaria donde la variable de salida predicha es nominal y comprende dos clases.
ionosfera.arff
Este es un conjunto de datos popular para la clasificación binaria. La instancia en este conjunto de datos describe las propiedades de los retornos de radar de la atmósfera. Se utiliza para predecir dónde la ionosfera tiene alguna estructura o no. Tiene 34 atributos numéricos y una clase.
El atributo de clase es 'bueno' o 'malo', que se predice basándose en la observación de 34 atributos. Las señales recibidas son procesadas por la función de autocorrelación tomando el pulso de tiempo y el número de pulso como argumentos.
Conjuntos de datos de regresión
Los conjuntos de datos de regresión se pueden descargar de la página web de WEKA ' Colecciones de conjuntos de datos ”. Tiene 37 problemas de regresión obtenidos de diferentes fuentes. El archivo descargado creará un directorio numérico / con conjuntos de datos de regresión en formato .arff.
Los conjuntos de datos populares presentes en el directorio son: Conjunto de datos económicos de Longley (longley.arff), conjunto de datos de precios de la vivienda en Boston (housing.arff) y conjunto de datos sobre el sueño en mamíferos (sleep.arff).
Veamos ahora cómo identificar atributos nominales y de valor real en el conjunto de datos utilizando el explorador WEKA.
¿Qué son los atributos nominales y de valor real?
Los atributos de valor real son atributos numéricos que contienen solo valores reales. Éstas son cantidades mensurables. Estos atributos pueden tener una escala de intervalo, como la temperatura o una escala de relación, como la media, la mediana.
Los atributos nominales representan nombres o alguna representación de cosas. No hay orden en tales atributos y representan alguna categoría. Por ejemplo, color.
Siga los pasos que se enumeran a continuación para usar WEKA para identificar valores reales y atributos nominales en el conjunto de datos.
#1) Abra WEKA y seleccione 'Explorador' en 'Aplicaciones'.
#2) Seleccione la pestaña 'Preproceso'. Haga clic en 'Abrir archivo'. Con el usuario de WEKA, puede acceder a los archivos de muestra de WEKA.
#3) Seleccione el archivo de entrada de la carpeta WEKA3.8 almacenada en el sistema local. Seleccione el archivo .arff predefinido 'credit-g.arff' y haga clic en 'Abrir'.
#4) Se abrirá una lista de atributos en el panel izquierdo. Las estadísticas de atributos seleccionados se mostrarán en el panel derecho junto con el histograma.
Análisis del conjunto de datos:
En el panel de la izquierda se muestra la relación actual:
- Nombre de la relación: german_credit es el archivo de muestra.
- Instancias: 1000 filas de datos en el conjunto de datos.
- Atributos: 21 atributos en el conjunto de datos.
El panel debajo de la relación actual muestra el nombre de los atributos.
En el panel derecho, se muestran las estadísticas de atributos seleccionados. Selecciona el atributo 'estado_control'.
Muestra:
- Nombre del atributo
- Desaparecidos: Cualquier valor faltante del atributo en el conjunto de datos. 0% en este caso.
- Distinto: El atributo tiene 4 valores distintos.
- Escribe: El atributo es de tipo nominal, es decir, no toma ningún valor numérico.
- Contar: Entre las 1000 instancias, el recuento de cada etiqueta de clase distinta se escribe en la columna de recuento.
- Histograma: Mostrará la etiqueta de la clase de salida para el atributo. La etiqueta de clase en este conjunto de datos es buena o mala. Hay 700 casos de buenos (marcados en azul) y 300 casos de malos (marcados en rojo).
- Para la etiqueta<0, the instances for good or bad are almost the same in number.
- Para etiqueta, 0<= X<200, the instances with decision good are more than instances with bad.
- De manera similar, para la etiqueta> = 200, las instancias máximas ocurren para siempre y ninguna etiqueta de verificación tiene más instancias con buena decisión.
Para el siguiente atributo 'duración'.
El panel derecho muestra:
- Nombre: Este es el nombre del atributo.
- Escribe: El tipo de atributo es numérico.
- Valor que falta: El atributo no tiene ningún valor perdido.
- Distinto: Tiene 33 valores distintos en 1000 instancias. Significa que en 1000 casos tiene 33 valores distintos.
- Único: Tiene 5 valores únicos que no coinciden entre sí.
- Valor mínimo: El valor mínimo del atributo es 4.
- Valor máximo: El valor máximo del atributo es 72.
- Significar: La media es sumar todos los valores divididos por instancias.
- Desviación Estándar: Desviación estándar de la duración del atributo.
- Histograma: El histograma muestra la duración de 4 unidades, las instancias máximas ocurren para una buena clase. A medida que la duración aumenta a 38 unidades, el número de instancias se reduce para obtener buenas etiquetas de clase. La duración alcanza las 72 unidades que tienen una sola instancia que clasifica la decisión como mala.
La clase es la característica de clasificación del tipo nominal. Tiene dos valores distintos: bueno y malo. La etiqueta de clase buena tiene 700 instancias y la etiqueta de clase mala tiene 300 instancias.
Para visualizar todos los atributos del conjunto de datos, haga clic en 'Visualizar todo'.
#5) Para averiguar solo los atributos numéricos, haga clic en el botón Filtro. Desde allí, haga clic en Elija -> WEKA> FILTROS -> Tipo no supervisado -> Eliminar tipo.
Los filtros WEKA tienen muchas funcionalidades para transformar los valores de los atributos del conjunto de datos para adecuarlo a los algoritmos. Por ejemplo, la transformación numérica de atributos.
El filtrado de los atributos nominales y de valor real del conjunto de datos es otro ejemplo del uso de filtros WEKA.
#6) Haga clic en RemoveType en la pestaña de filtro. Se abrirá una ventana del editor de objetos. Seleccione atributoType 'Eliminar atributos numéricos' y haga clic en Aceptar.
#7) Aplicar el filtro. Solo se mostrarán los atributos numéricos.
El atributo de clase es de tipo nominal. Clasifica la salida y, por lo tanto, no se puede eliminar. Así se ve con el atributo numérico.
Producción:
Se identifican los atributos de valor nominal y real en el conjunto de datos. La visualización con la etiqueta de la clase se ve en forma de histogramas.
Algoritmos de clasificación de árboles de decisión de Weka
Ahora, veremos cómo implementar la clasificación del árbol de decisión en el conjunto de datos weather.nominal.arff usando el clasificador J48.
weather.nominal.arff
Es un conjunto de datos de muestra presente en el directo de WEKA. Este conjunto de datos predice si el clima es adecuado para jugar al cricket. El conjunto de datos tiene 5 atributos y 14 instancias. La etiqueta de clase 'reproducir' clasifica la salida como 'sí' o 'no'.
¿Qué es el árbol de decisiones?
El árbol de decisión es la técnica de clasificación que consta de tres componentes: nodo raíz, rama (borde o enlace) y nodo hoja. La raíz representa la condición de prueba para diferentes atributos, la rama representa todos los resultados posibles que pueden estar allí en la prueba y los nodos hoja contienen la etiqueta de la clase a la que pertenece. El nodo raíz se encuentra al comienzo del árbol, que también se llama la parte superior del árbol.
Clasificador J48
Es un algoritmo para generar un árbol de decisiones generado por C4.5 (una extensión de ID3). También se le conoce como clasificador estadístico. Para la clasificación del árbol de decisiones, necesitamos una base de datos.
Los pasos incluyen:
#1) Abra el explorador WEKA.
#2) Seleccione el archivo weather.nominal.arff del 'elegir archivo' en la opción de la pestaña de preproceso.
#3) Vaya a la pestaña 'Clasificar' para clasificar los datos sin clasificar. Haga clic en el botón 'Elegir'. A partir de aquí, seleccione 'árboles -> J48'. También echemos un vistazo rápido a otras opciones en el botón Elegir:
- Bayes: Es una estimación de densidad para atributos numéricos.
- Meta: Es una regresión lineal de respuestas múltiples.
- Funciones: Es una regresión logística.
- Perezoso: Establece la entropía de mezcla automáticamente.
- Regla: Es un aprendiz de reglas.
- Árboles: Trees clasifica los datos.
#4) Haga clic en el botón Inicio. La salida del clasificador se verá en el panel de la derecha. Muestra la información de ejecución en el panel como:
- Esquema: El algoritmo de clasificación utilizado.
- Instancias: Número de filas de datos en el conjunto de datos.
- Atributos: El conjunto de datos tiene 5 atributos.
- El número de hojas y el tamaño del árbol describen el árbol de decisiones.
- Tiempo necesario para construir el modelo: Hora de la salida.
- Clasificación completa del J48 podado con los atributos y número de instancias.
#5) Para visualizar el árbol, haga clic derecho en el resultado y seleccione visualizar el árbol.
Producción :
El resultado tiene la forma de un árbol de decisiones. El atributo principal es 'perspectiva'.
Si el panorama es soleado, luego, el árbol analiza más la humedad. Si la humedad es alta, entonces la etiqueta de clase juega = 'sí'.
Si el panorama está nublado, la etiqueta de la clase, el juego es 'sí'. El número de instancias que obedecen a la clasificación es 4.
Si el pronóstico es lluvioso, se lleva a cabo una clasificación adicional para analizar el atributo 'ventoso'. Si viento = verdadero, el juego = 'no'. El número de instancias que obedecen a la clasificación de outlook = windy y windy = true es 2.
Conclusión
WEKA ofrece una amplia gama de conjuntos de datos de muestra para aplicar algoritmos de aprendizaje automático. Los usuarios pueden realizar tareas de aprendizaje automático como clasificación, regresión, selección de atributos, asociación en estos conjuntos de datos de muestra y también pueden aprender la herramienta usándolos.
El explorador WEKA se utiliza para realizar varias funciones, empezando por el preprocesamiento. El preprocesamiento toma la entrada como un archivo .arff, procesa la entrada y da una salida que puede ser utilizada por otros programas de computadora. En WEKA, el resultado del preprocesamiento proporciona los atributos presentes en el conjunto de datos que se pueden utilizar más para el análisis estadístico y la comparación con etiquetas de clase.
WEKA también ofrece muchos algoritmos de clasificación para árboles de decisión. J48 es uno de los algoritmos de clasificación populares que genera un árbol de decisiones. Usando la pestaña Clasificar, el usuario puede visualizar el árbol de decisiones. Si el árbol de decisión está demasiado poblado, se puede aplicar la poda de árboles desde la pestaña Preproceso eliminando los atributos que no son necesarios y comenzando el proceso de clasificación nuevamente.
=> Visite aquí para ver la serie exclusiva de aprendizaje automático
Lectura recomendada
- Tutorial de Weka: cómo descargar, instalar y usar la herramienta Weka
- Cómo escribir escenarios de prueba de lógica empresarial complejos mediante la técnica de tabla de decisiones
- WEKA Explorer: visualización, agrupación en clústeres, minería de reglas de asociación
- Ejemplos de algoritmos de árboles de decisión en minería de datos
- Construcciones de toma de decisiones en C ++
- Estructura de datos de árbol B y árbol B + en C ++
- Estructura de datos de árbol binario en C ++
- Estructura de datos de montón y árbol AVL en C ++