Weka - Preprocesamiento de datos

Los datos que se recopilan en el campo contienen muchas cosas no deseadas que conducen a un análisis incorrecto. Por ejemplo, los datos pueden contener campos nulos, pueden contener columnas que son irrelevantes para el análisis actual, etc. Por lo tanto, los datos deben procesarse previamente para cumplir con los requisitos del tipo de análisis que está buscando. Esto se hace en el módulo de preprocesamiento.

Para demostrar las funciones disponibles en el preprocesamiento, usaremos el Weather base de datos que se proporciona en la instalación.

Utilizando el Open file ... opción bajo la Preprocess etiqueta seleccione la weather-nominal.arff archivo.

Cuando abre el archivo, su pantalla se ve como se muestra aquí:

Esta pantalla nos dice varias cosas sobre los datos cargados, que se tratan más adelante en este capítulo.

Entender los datos

Veamos primero el resaltado Current relationsubventana. Muestra el nombre de la base de datos que está cargada actualmente. Puede inferir dos puntos de esta subventana:

  • Hay 14 instancias: el número de filas de la tabla.

  • La tabla contiene 5 atributos: los campos, que se tratan en las próximas secciones.

En el lado izquierdo, observe el Attributes subventana que muestra los distintos campos de la base de datos.

los weatherLa base de datos contiene cinco campos: perspectiva, temperatura, humedad, viento y juego. Cuando selecciona un atributo de esta lista haciendo clic en él, se muestran más detalles sobre el atributo en el lado derecho.

Seleccionemos primero el atributo de temperatura. Al hacer clic en él, verá la siguiente pantalla:

En el Selected Attribute subventana, puede observar lo siguiente:

  • Se muestran el nombre y el tipo de atributo.

  • El tipo para el temperature atributo es Nominal.

  • El número de Missing los valores es cero.

  • Hay tres valores distintos sin un valor único.

  • La tabla debajo de esta información muestra los valores nominales para este campo como caliente, templado y frío.

  • También muestra el recuento y el peso en términos de un porcentaje para cada valor nominal.

En la parte inferior de la ventana, verá la representación visual del class valores.

Si hace clic en el Visualize All , podrá ver todas las funciones en una sola ventana como se muestra aquí -

Eliminar atributos

Muchas veces, los datos que desea utilizar para la construcción de modelos vienen con muchos campos irrelevantes. Por ejemplo, la base de datos de clientes puede contener su número de teléfono móvil que es relevante para analizar su calificación crediticia.

Para eliminar los atributos, selecciónelos y haga clic en el Remove botón en la parte inferior.

Los atributos seleccionados se eliminarán de la base de datos. Después de preprocesar por completo los datos, puede guardarlos para la creación de modelos.

A continuación, aprenderá a preprocesar los datos aplicando filtros a estos datos.

Aplicar filtros

Algunas de las técnicas de aprendizaje automático, como la minería de reglas de asociación, requieren datos categóricos. Para ilustrar el uso de filtros, usaremosweather-numeric.arff base de datos que contiene dos numeric atributos - temperature y humidity.

Los convertiremos a nominalaplicando un filtro en nuestros datos sin procesar. Clickea en elChoose botón en el Filter subventana y seleccione el siguiente filtro -

weka→filters→supervised→attribute→Discretize

Clickea en el Apply botón y examinar el temperature y / o humidityatributo. Notará que estos han cambiado de tipos numéricos a nominales.

Echemos un vistazo a otro filtro ahora. Suponga que desea seleccionar los mejores atributos para decidir elplay. Seleccione y aplique el siguiente filtro:

weka→filters→supervised→attribute→AttributeSelection

Notará que elimina los atributos de temperatura y humedad de la base de datos.

Una vez que esté satisfecho con el procesamiento previo de sus datos, guárdelos haciendo clic en el Save... botón. Utilizará este archivo guardado para la construcción de modelos.

En el próximo capítulo, exploraremos la construcción de modelos utilizando varios algoritmos ML predefinidos.