Introducción al preprocesamiento de datos en Machine Learning

El preprocesamiento de datos en Machine Learning es una forma de convertir datos del formulario sin formato a un formato mucho más formateado, inutilizable o deseado. Es una tarea integral del aprendizaje automático que realiza el científico de datos. Como los datos recopilados están en un formato sin formato, es posible que no sea factible entrenar el modelo con ellos. Es importante procesar estos datos en bruto con cuidado para hacer una interpretación adecuada de ellos y finalmente evitar cualquier resultado negativo en la predicción. En resumen, la calidad de nuestro algoritmo de aprendizaje depende en gran medida del tipo de conjunto de datos que utilizamos para alimentar el modelo, por lo que el procesamiento previo de datos se utiliza para mantener esa calidad.

Los datos recopilados para la capacitación del modelo provienen de varias fuentes. Estos datos recopilados generalmente están en su formato sin formato, es decir, pueden tener ruidos como valores faltantes e información relevante, números en el formato de cadena, etc., o pueden estar desestructurados. El preprocesamiento de datos aumenta la eficiencia y la precisión de los modelos de aprendizaje automático. Como ayuda a eliminar estos ruidos y al conjunto de datos y le da sentido al conjunto de datos

Seis pasos diferentes involucrados en el aprendizaje automático

Los siguientes son seis pasos diferentes involucrados en el aprendizaje automático para realizar el procesamiento previo de datos:

Paso 1: Importar bibliotecas

Paso 2: importar datos

Paso 3: Verificación de valores faltantes

Paso 4: Verificación de datos categóricos

Paso 5: escalado de características

Paso 6: división de datos en conjuntos de capacitación, validación y evaluación

Comprendamos cada uno de estos pasos en detalle:

1. Importar bibliotecas

El primer paso es importar algunas de las bibliotecas importantes requeridas en el procesamiento previo de datos. Una biblioteca es una colección de módulos a los que se puede llamar y usar. En python, tenemos muchas bibliotecas que son útiles en el procesamiento previo de datos.

Algunas de las siguientes bibliotecas importantes en python son:

  • Numpy: usó principalmente la biblioteca para implementar o usar el cálculo matemático complicado del aprendizaje automático. Es útil para realizar una operación en matrices multidimensionales.
  • Pandas : es una biblioteca de código abierto que proporciona un alto rendimiento y una estructura de datos fácil de usar y herramientas de análisis de datos en python. Está diseñado de manera que el trabajo con relación y datos etiquetados sea fácil e intuitivo.
  • Matplotlib: es una biblioteca de visualización proporcionada por python para gráficos 2D o matriz. Está construido sobre una matriz numpy y diseñado para trabajar con una pila Scipy más amplia. La visualización de conjuntos de datos es útil en el escenario donde hay grandes datos disponibles. Los gráficos disponibles en matplot lib son línea, barra, dispersión, histograma, etc.
  • Seaborn: también es una biblioteca de visualización dada por python. Proporciona una interfaz de alto nivel para dibujar gráficos estadísticos atractivos e informativos.

2. Importar conjunto de datos

Una vez que se importan las bibliotecas, nuestro siguiente paso es cargar los datos recopilados. La biblioteca Pandas se usa para importar estos conjuntos de datos. En su mayoría, los conjuntos de datos están disponibles en formatos CSV, ya que son de tamaño bajo, lo que hace que el procesamiento sea rápido. Entonces, para cargar un archivo csv usando la función read_csv de la biblioteca de panda. Varios otros formatos del conjunto de datos que se pueden ver son

Una vez que se carga el conjunto de datos, tenemos que inspeccionarlo y buscar cualquier ruido. Para hacerlo, tenemos que crear una matriz de características X y un vector de observación Y con respecto a X.

3. Comprobación de valores perdidos

Una vez que cree la matriz de características, puede encontrar que faltan algunos valores. Si no lo manejamos, puede causar un problema en el momento del entrenamiento.

Hay dos métodos para manejar los valores faltantes:

  1. Eliminando toda la fila que contiene el valor faltante, pero puede existir la posibilidad de que termine perdiendo información vital. Este puede ser un buen enfoque si el tamaño del conjunto de datos es grande.
  2. Si una columna numérica tiene un valor faltante, puede estimar el valor tomando la media, la mediana, la moda, etc.

4. Comprobación de datos categóricos

Los datos en el conjunto de datos tienen que estar en forma numérica para poder realizar cálculos en él. Dado que los modelos de aprendizaje automático contienen cálculos matemáticos complejos, no podemos alimentarlos con un valor no numérico. Por lo tanto, es importante convertir todos los valores de texto en valores numéricos. La clase de aprendizaje LabelEncoder () se utiliza para convertir estos valores categóricos en valores numéricos.

5. Escalado de características

Los valores de los datos en bruto varían extremadamente y pueden resultar en un entrenamiento sesgado del modelo o pueden terminar aumentando el costo computacional. Por eso es importante normalizarlos. El escalado de características es una técnica que se utiliza para llevar el valor de los datos en un rango más corto.

Los métodos utilizados para el escalado de características son:

  • Reescalado (normalización min-max)
  • Normalización media
  • Estandarización (Normalización de puntaje Z)
  • Escalando a la longitud de la unidad

6. División de datos en conjuntos de capacitación, validación y evaluación.

Finalmente, necesitamos dividir nuestros datos en tres conjuntos diferentes: conjunto de entrenamiento para entrenar el modelo, conjunto de validación para validar la precisión de nuestro modelo y, finalmente, conjunto de prueba para probar el rendimiento de nuestro modelo en datos genéricos. Antes de dividir el conjunto de datos, es importante mezclar el conjunto de datos para evitar sesgos. Una proporción ideal para dividir el conjunto de datos es 60:20:20, es decir, 60% como conjunto de entrenamiento, 20% como conjunto de prueba y validación. Para dividir el conjunto de datos, use train_test_split de sklearn.model_selection dos veces. Una vez para dividir el conjunto de datos en tren y conjunto de validación y luego para dividir el conjunto de datos de tren restante en tren y conjunto de prueba.

Conclusión: preprocesamiento de datos en Machine Learning

El preprocesamiento de datos es algo que requiere práctica. No es como una simple estructura de datos en la que aprende y aplica directamente para resolver un problema. Para obtener un buen conocimiento sobre cómo limpiar un conjunto de datos o cómo visualizar su conjunto de datos, debe trabajar con diferentes conjuntos de datos.

Cuanto más use estas técnicas, mejor comprenderá al respecto. Esta fue una idea general de cómo el procesamiento de datos juega un papel importante en el aprendizaje automático. Junto con eso, también hemos visto los pasos necesarios para el preprocesamiento de datos. Entonces, la próxima vez antes de entrenar el modelo utilizando los datos recopilados, asegúrese de aplicar el preprocesamiento de datos.

Artículos recomendados

Esta es una guía para el preprocesamiento de datos en Machine Learning. Aquí discutimos la introducción, Seis pasos diferentes involucrados en el aprendizaje automático. También puede consultar nuestros otros artículos sugeridos para obtener más información:

  1. Importancia de la inteligencia artificial
  2. Tecnología IoT
  3. Tipos de datos PL / SQL
  4. Tipos de datos de la colmena
  5. Tipos de datos R

Categoría: