É«¿Ø´«Ã½

Skip to Content

?Qu¨¦ es el preprocesamiento de datos para el aprendizaje autom¨¢tico?

El preprocesamiento de datos para el aprendizaje autom¨¢tico (ML) se refiere a la preparaci¨®n y transformaci¨®n de datos sin procesar en un formato adecuado para la capacitaci¨®n de modelos de ML. Es un paso esencial en un de ML (o AI) porque afecta directamente el rendimiento y la precisi¨®n de los modelos.

El preprocesamiento de datos implica varias t¨¦cnicas, como limpiar los datos para manejar los valores faltantes, eliminar valores at¨ªpicos, escalar caracter¨ªsticas, codificar variables categ¨®ricas y dividir los datos en conjuntos de capacitaci¨®n y pruebas. Estas t¨¦cnicas son clave para garantizar que los datos est¨¦n en un formato consistente y utilizable para los algoritmos de ML.

Este art¨ªculo cubre todo lo que necesita saber sobre el preprocesamiento de datos para el aprendizaje autom¨¢tico, incluido qu¨¦ es, sus beneficios, pasos y ejemplos.?

?Qu¨¦ es el preprocesamiento de datos??

El preprocesamiento de datos es la transformaci¨®n de los datos sin procesar en un formato m¨¢s adecuado y significativo para el an¨¢lisis y la capacitaci¨®n del modelo. El preprocesamiento de datos desempe?a un papel vital en la mejora de la calidad y la eficiencia de los modelos de ML al abordar problemas como valores faltantes, ruido, inconsistencias y valores at¨ªpicos en los datos.

Beneficios del preprocesamiento de datos para el aprendizaje autom¨¢tico

El preprocesamiento de datos para el aprendizaje autom¨¢tico tiene muchos beneficios, y estos beneficios son los mismos que los pasos involucrados en el preprocesamiento de datos. Echemos un vistazo.?

1. Limpieza de datos

La limpieza de datos es una parte esencial del proceso de preprocesamiento de datos en el aprendizaje autom¨¢tico. Implica identificar y corregir errores o inconsistencias en el conjunto de datos para garantizar que los datos sean de alta calidad y adecuados para el an¨¢lisis o la capacitaci¨®n del modelo.?

La limpieza de datos generalmente incluye:

Manejo de valores faltantes

Los valores faltantes son un problema com¨²n en los conjuntos de datos del mundo real y pueden afectar negativamente el rendimiento de los modelos de ML. Para identificar y lidiar con los valores faltantes:

  • Use estad¨ªsticas descriptivas o visualizaciones para identificar columnas/funciones con valores faltantes. Los indicadores comunes de valores faltantes incluyen valores NaN (no un n¨²mero) o NULOS.
  • Determine el impacto de los valores faltantes en su an¨¢lisis o modelo. Considere el porcentaje de valores faltantes en cada columna y su importancia para el conjunto de datos general.
  • Si el porcentaje de valores faltantes es peque?o y esas filas o columnas no son cr¨ªticas, puede optar por eliminarlas usando m¨¦todos como dropna() en pandas o funciones similares en otras herramientas.
  • Para las caracter¨ªsticas num¨¦ricas, puede imputar los valores faltantes utilizando t¨¦cnicas como la media, la mediana o el m¨¦todo de imputaci¨®n de modo (fillna() en pandas). Para las caracter¨ªsticas categ¨®ricas, puede imputar con la categor¨ªa m¨¢s frecuente.

Tambi¨¦n puede considerar m¨¦todos de imputaci¨®n m¨¢s avanzados, como la imputaci¨®n de regresi¨®n, la imputaci¨®n de vecinos m¨¢s cercanos a k o el uso de modelos de ML para predecir valores faltantes basados en otras caracter¨ªsticas.

Manejo de valores at¨ªpicos

Los valores at¨ªpicos son puntos de datos que difieren significativamente de otras observaciones en el conjunto de datos y pueden sesgar el an¨¢lisis estad¨ªstico o los modelos de aprendizaje autom¨¢tico.?

Para detectar y manejar valores at¨ªpicos:

  • Use diagramas de caja, histogramas o diagramas de dispersi¨®n para visualizar la distribuci¨®n de las caracter¨ªsticas num¨¦ricas e identificar los posibles valores at¨ªpicos de manera visual.
  • Calcule estad¨ªsticas resumidas como media, desviaci¨®n est¨¢ndar, cuartiles e intervalo intercuartil (IQR). Los valores at¨ªpicos a menudo se definen como puntos de datos que caen por debajo de Q1 - 1,5 * IQR o por encima de Q3 + 1,5 * IQR.
  • En algunos casos, eliminar los valores at¨ªpicos puede ser apropiado, especialmente si se deben a errores o anomal¨ªas en el ingreso de datos. Use t¨¦cnicas de filtrado basadas en umbrales estad¨ªsticos para eliminar valores at¨ªpicos.
  • Aplique transformaciones como la transformaci¨®n de registros, la transformaci¨®n de ra¨ªz cuadrada o la transformaci¨®n Box-Cox para que los datos se distribuyan de manera m¨¢s normal y reduzcan el impacto de los valores at¨ªpicos.
  • Considere usar modelos de aprendizaje autom¨¢tico robustos que sean menos sensibles a los valores at¨ªpicos, como m¨¢quinas de vectores de soporte (SVM), bosques aleatorios o m¨¦todos de conjunto.

Manejo de duplicados

Los registros duplicados pueden sesgar el an¨¢lisis y modelar la capacitaci¨®n al inflar ciertos patrones o sesgos.?

Para detectar y manejar duplicados:

  • Use funciones como duplicada() en pandas para identificar filas duplicadas basadas en columnas espec¨ªficas o en toda la fila.
  • Si los registros duplicados son redundantes y no proporcionan informaci¨®n adicional, puede eliminarlos usando la funci¨®n drop_duplicates() en pandas o m¨¦todos similares en otras herramientas.
  • En algunos casos, pueden producirse duplicados debido a varias entradas, pero tienen identificadores ¨²nicos. Aseg¨²rese de conservar identificadores ¨²nicos o columnas clave que diferencien entre registros duplicados.

Al seguir estos pasos y utilizar t¨¦cnicas adecuadas, puede limpiar y procesar previamente sus datos de manera eficaz para las tareas de aprendizaje autom¨¢tico, mejorando la calidad y confiabilidad de las predicciones de sus modelos.

2. Normalizaci¨®n de datos

La normalizaci¨®n es una t¨¦cnica de procesamiento previo de datos que se utiliza para escalar y estandarizar los valores de las caracter¨ªsticas dentro de un conjunto de datos. El objetivo principal de la normalizaci¨®n es llevar todos los valores de las caracter¨ªsticas a un rango similar sin distorsionar las diferencias en los rangos de valores. Esto es importante porque muchos algoritmos de aprendizaje autom¨¢tico funcionan mejor o convergen m¨¢s r¨¢pido cuando las funciones de entrada tienen una escala similar y una distribuci¨®n similar.

Los beneficios de la normalizaci¨®n incluyen:

  • Ayudar a evitar que las funciones con grandes escalas dominen a aquellas con escalas m¨¢s peque?as durante el entrenamiento del modelo.?
  • Los algoritmos como el descenso de gradiente convergen m¨¢s r¨¢pido cuando las funciones se normalizan, lo que lleva a tiempos de capacitaci¨®n m¨¢s r¨¢pidos.?
  • Reducci¨®n del impacto de los valores at¨ªpicos al llevar todos los valores dentro de un rango limitado. Los datos normalizados pueden ser m¨¢s f¨¢ciles de interpretar y comparar entre diferentes funciones.

T¨¦cnicas de normalizaci¨®n

Escalamiento m¨ªn.-m¨¢x.?

  • F¨®rmula:Xnorm =Xm¨¢x ?Xmin /Xm¨¢x ?Xmin
  • Rango: Transforma los valores en un rango entre 0 y 1.

?

Ejemplo:

Normalizaci¨®n del puntaje Z (estandarizaci¨®n):

  • F¨®rmula: Xstd =¦ÒX/¦Ì
  • Rango: Transforma los valores para tener una media de 0 y una desviaci¨®n est¨¢ndar de 1.

?

Ejemplo:

Pautas para aplicar la normalizaci¨®n

Escalamiento m¨ªn.-m¨¢x.: La escalabilidad m¨ªn.-m¨¢x. es adecuada para algoritmos que requieren que las funciones de entrada est¨¦n dentro de un rango espec¨ªfico, como redes neuronales y m¨¢quinas de vectores de soporte. Aseg¨²rese de que los valores at¨ªpicos se manejen de manera adecuada, ya que pueden afectar la escalabilidad.

Normalizaci¨®n del puntaje Z: Esto es adecuado para algoritmos como la agrupaci¨®n de medias k, la regresi¨®n lineal y la regresi¨®n log¨ªstica. Da como resultado una distribuci¨®n centrada alrededor de 0 con una desviaci¨®n est¨¢ndar de 1, lo que la hace ideal para algoritmos que asumen datos distribuidos normalmente.

Datos dispersos: Para conjuntos de datos dispersos (donde la mayor¨ªa de los valores son cero), considere usar t¨¦cnicas como MaxAbsScaler o RobustScaler para la normalizaci¨®n.

Datos categ¨®ricos: Para las caracter¨ªsticas categ¨®ricas, considere t¨¦cnicas como la codificaci¨®n en un solo punto antes de la normalizaci¨®n para garantizar una escalabilidad significativa.

Es importante tener en cuenta que la elecci¨®n de la t¨¦cnica de normalizaci¨®n depende de las caracter¨ªsticas espec¨ªficas de sus datos y de los requisitos del algoritmo de aprendizaje autom¨¢tico que planea usar. La experimentaci¨®n y la comprensi¨®n del impacto en el rendimiento del modelo son aspectos clave de la aplicaci¨®n efectiva de la normalizaci¨®n.

3. Escalamiento de funciones

El escalamiento de caracter¨ªsticas es una t¨¦cnica de preprocesamiento de datos que se utiliza para estandarizar el rango de variables independientes o caracter¨ªsticas de un conjunto de datos. El objetivo del escalamiento de caracter¨ªsticas es llevar todas las caracter¨ªsticas a una escala o rango similar para evitar que una caracter¨ªstica domine sobre otras durante la capacitaci¨®n o el an¨¢lisis del modelo. El escalamiento de funciones puede mejorar la velocidad de convergencia de los algoritmos de optimizaci¨®n y evitar que ciertas funciones tengan una influencia indebida en el modelo.

Funci¨®n del escalamiento de caracter¨ªsticas en el preprocesamiento de datos

Las funciones de escalamiento garantizan que los algoritmos de ML traten todas las funciones por igual, lo que evita el sesgo hacia las funciones con escalas m¨¢s grandes. Tambi¨¦n mejora las convergencias, ya que muchos algoritmos de optimizaci¨®n (p. ej., descenso de gradiente) convergen m¨¢s r¨¢pido cuando se escalan las caracter¨ªsticas, lo que lleva a un entrenamiento m¨¢s r¨¢pido del modelo. Tambi¨¦n puede evitar problemas de inestabilidad num¨¦rica que puedan surgir debido a grandes diferencias en las magnitudes de las caracter¨ªsticas. Y, por ¨²ltimo, el escalamiento puede facilitar la interpretaci¨®n del impacto de las caracter¨ªsticas en las predicciones del modelo.

M¨¦todos de escalamiento de caracter¨ªsticas

Adem¨¢s de la escalabilidad m¨ªn.-m¨¢x. y la normalizaci¨®n del puntaje Z descritas anteriormente, tambi¨¦n hay:

MaxAbsScaler: Esto escala cada caracter¨ªstica por su valor absoluto m¨¢ximo, por lo que los valores resultantes oscilan entre -1 y 1. Es adecuado para datos dispersos en los que es importante conservar cero entradas, como en sistemas de clasificaci¨®n de texto o recomendaci¨®n.

RobustScaler: Esto utiliza estad¨ªsticas que son s¨®lidas para los valores at¨ªpicos, como la mediana y el rango intercuartil (IQR), para escalar las caracter¨ªsticas. Es adecuado para conjuntos de datos que contienen valores at¨ªpicos o distribuciones sesgadas.

Pautas para aplicar el escalamiento de funciones

Para aplicar el escalamiento de funciones:

  • Aplique la estandarizaci¨®n (normalizaci¨®n del puntaje Z) cuando los datos sigan una distribuci¨®n normal o cuando se usen algoritmos como regresi¨®n lineal, regresi¨®n log¨ªstica o agrupamiento de medias k.
  • Aplique la normalizaci¨®n (escala m¨ªn.-m¨¢x.) cuando necesite que los datos est¨¦n dentro de un rango espec¨ªfico, como redes neuronales o m¨¢quinas vectoriales compatibles.
  • Use MaxAbsScaler cuando trate con datos dispersos, como datos de texto o caracter¨ªsticas dispersas de alta dimensi¨®n.
  • Use RobustScaler al tratar con conjuntos de datos que contienen valores at¨ªpicos o caracter¨ªsticas que no se distribuyen normalmente.

Tenga en cuenta que es posible que las caracter¨ªsticas categ¨®ricas necesiten codificaci¨®n (p. ej., codificaci¨®n en caliente) antes de aplicar el escalamiento de caracter¨ªsticas, especialmente si son nominales (categor¨ªas no ordenadas).

4. Manejo de datos categ¨®ricos

Las variables categ¨®ricas representan grupos o categor¨ªas y a menudo son de naturaleza no num¨¦rica, lo que plantea desaf¨ªos durante la capacitaci¨®n del modelo, incluidos los siguientes:

  • Representaci¨®n no num¨¦rica: Las variables categ¨®ricas generalmente se representan usando cadenas o etiquetas, que la mayor¨ªa de los algoritmos de aprendizaje autom¨¢tico no pueden procesar directamente. Los algoritmos requieren entradas num¨¦ricas para la capacitaci¨®n y las predicciones.
  • Variables ordinales frente a nominales: Las variables categ¨®ricas pueden ser ordinales (con un orden significativo) o nominales (sin un orden espec¨ªfico). Tratar las variables ordinales como nominales o viceversa puede llevar a interpretaciones incorrectas del modelo o predicciones sesgadas.
  • Maldici¨®n de dimensionalidad: La codificaci¨®n en un solo punto, una t¨¦cnica com¨²n para el manejo de datos categ¨®ricos, puede provocar un aumento en la dimensionalidad del conjunto de datos, especialmente con una gran cantidad de categor¨ªas ¨²nicas. Esto puede afectar el rendimiento del modelo y aumentar la complejidad computacional.

T¨¦cnicas para codificar variables categ¨®ricas

Las t¨¦cnicas para codificar variables categ¨®ricas incluyen:

Codificaci¨®n de etiquetas: La codificaci¨®n de etiquetas asigna una etiqueta num¨¦rica ¨²nica a cada categor¨ªa en una variable categ¨®rica. Es adecuado para variables ordinales donde hay un orden significativo entre las categor¨ªas.

Este es un ejemplo de c¨®mo usar scikit-learn de Python:

desde sklearn.preprocesamiento importaci¨®n LabelEncoder

le = LabelEncoder()

etiquetas_codificadas = le.fit_transform(['cat', 'perro', 'conejo', 'perro'])

Codificaci¨®n en un solo punto: La codificaci¨®n en caliente crea columnas binarias para cada categor¨ªa en una variable categ¨®rica, donde cada columna indica la presencia o ausencia de esa categor¨ªa. Es adecuado para variables nominales sin un orden espec¨ªfico entre categor¨ªas.

Este es un ejemplo usando pandas:

importar pandas como pd

df = pd.DataFrame({'category': ['A', 'B', 'C', 'A']})

one_hot_encoded = pd.get_dummies(df['category'], prefijo='category')

Codificaci¨®n simulada: La codificaci¨®n simulada es similar a la codificaci¨®n de un solo uso, pero descarta una de las columnas binarias para evitar problemas de multicolinealidad en modelos lineales. Se utiliza com¨²nmente en modelos de regresi¨®n en los que una categor¨ªa sirve como categor¨ªa de referencia.

Este es un ejemplo usando pandas:

dummy_encoded = pd.get_dummies(df['category'], prefijo='category', drop_first=True)

Pautas para el manejo de datos categ¨®ricos

Para manejar correctamente los datos categ¨®ricos, debe:

Comprender los tipos de variables: Determine si las variables categ¨®ricas son ordinales o nominales para elegir la t¨¦cnica de codificaci¨®n adecuada.

Evite la mala interpretaci¨®n ordinal: Tenga cuidado al usar la codificaci¨®n de etiquetas para variables nominales, ya que puede introducir una ordinalidad no deseada en los datos.

Lidiar con una alta cardinalidad: Para las variables categ¨®ricas con un gran n¨²mero de categor¨ªas ¨²nicas, considere t¨¦cnicas como codificaci¨®n de frecuencia, codificaci¨®n de objetivos o t¨¦cnicas de reducci¨®n de dimensionalidad como PCA.

Todo esto se suma al manejo ya mencionado de los valores faltantes y la normalizaci¨®n de los datos num¨¦ricos.?

5. C¨®mo lidiar con datos desequilibrados

Lidiar con los datos desequilibrados es un desaf¨ªo com¨²n en el aprendizaje autom¨¢tico, especialmente en las tareas de clasificaci¨®n en las que la cantidad de instancias en una clase (clase minoritaria) es significativamente menor que en las otras clases (clases mayoritarias). Los datos desequilibrados pueden tener un profundo impacto en la capacitaci¨®n y evaluaci¨®n de modelos, lo que lleva a modelos sesgados que favorecen a la clase mayoritaria y tienen un rendimiento deficiente en las clases minoritarias.?

Estos son algunos puntos clave con respecto a los datos desequilibrados y las t¨¦cnicas para manejarlos:

Impacto de los datos desequilibrados en el rendimiento del modelo

Los modelos capacitados en datos desequilibrados tienden a priorizar la precisi¨®n en la clase mayoritaria mientras se descuida la clase minoritaria. Esto puede llevar a un rendimiento deficiente en las predicciones de clase minoritaria. Adem¨¢s, las m¨¦tricas como la precisi¨®n pueden ser enga?osas en los conjuntos de datos desequilibrados, ya que una alta precisi¨®n puede ser el resultado de predecir correctamente la clase mayoritaria e ignorar la clase minoritaria. Las m¨¦tricas de evaluaci¨®n como precisi¨®n, recuperaci¨®n, F1-score y ¨¢rea bajo la curva ROC (AUC-ROC) son m¨¢s informativas para conjuntos de datos desequilibrados en comparaci¨®n con la exactitud sola.

T¨¦cnicas para manejar datos desequilibrados

Las t¨¦cnicas m¨¢s comunes para manejar datos desequilibrados son el sobremuestreo y el submuestreo. El sobremuestreo implica aumentar la cantidad de instancias en la clase minoritaria para equilibrarla con la clase mayoritaria. El submuestreo implica reducir la cantidad de instancias en la clase mayoritaria para equilibrarla con la clase minoritaria. Tambi¨¦n puede adoptar un enfoque h¨ªbrido al combinar el sobremuestreo y el submuestreo.

Tambi¨¦n hay una ponderaci¨®n de clase, en la que ajusta las ponderaciones de clase durante el entrenamiento del modelo para penalizar los errores en la clase minoritaria m¨¢s que los errores en la clase mayoritaria. Esto solo es ¨²til para algoritmos que admiten ponderaci¨®n de clase, como regresi¨®n log¨ªstica o m¨¢quinas de vectores de soporte.

Pautas para el manejo de datos desequilibrados

Para manejar datos desequilibrados, debe:

Comprender la distribuci¨®n de datos: Analice la distribuci¨®n de clases en su conjunto de datos para determinar la gravedad del desequilibrio.

Elija la t¨¦cnica adecuada: Seleccione la t¨¦cnica de sobremuestreo, submuestreo o h¨ªbrida seg¨²n el tama?o del conjunto de datos, la relaci¨®n de desequilibrio y los recursos inform¨¢ticos.

Eval¨²e las m¨¦tricas: Use m¨¦tricas de evaluaci¨®n adecuadas como precisi¨®n, recuerdo, F1-score o curva AUC-ROC para evaluar el rendimiento del modelo en ambas clases.

Validaci¨®n cruzada: Aplique t¨¦cnicas dentro de los pliegues de validaci¨®n cruzada para evitar la fuga de datos y obtener estimaciones confiables del rendimiento del modelo.

Conclusiones

El preprocesamiento de datos ayuda a garantizar que los modelos de ML est¨¦n capacitados en datos de alta calidad y con el formato adecuado, lo que afecta directamente el rendimiento, la precisi¨®n y la capacidad de generalizaci¨®n del modelo. Al abordar problemas como valores faltantes, valores at¨ªpicos, variables categ¨®ricas y desequilibrio de clase, el procesamiento previo de datos permite a los modelos hacer predicciones m¨¢s informadas y precisas, lo que conduce a una mejor toma de decisiones en aplicaciones del mundo real.

Con un preprocesamiento de datos adecuado, los profesionales de ML pueden liberar todo el potencial de sus datos y crear modelos predictivos m¨¢s precisos y confiables para varias aplicaciones en todos los dominios.

Sin embargo, para hacerlo realmente en el mundo real, primero debe tener una soluci¨®n de almacenamiento de datos flexible, como É«¿Ø´«Ã½, que lo ayude a acelerar la AI y el aprendizaje autom¨¢tico, y a avanzar con sus iniciativas de AI empresarial.

10/2025
FlashStack for AI: The Foundation for Enterprise AI Factories
FlashStack?? for AI from É«¿Ø´«Ã½??, Cisco, and NVIDIA delivers an integrated, validated foundation for building and scaling Enterprise AI Factories.
Resumen de la soluci¨®n
5 pages

Buscar recursos y eventos clave

VIDEO
Vea: El valor de una Enterprise Data Cloud.

Charlie Giancarlo explica por qu¨¦ la administraci¨®n de datos, no el almacenamiento, es el futuro. Descubra c¨®mo un enfoque unificado transforma las operaciones de TI de una empresa.

Mirar ahora
RECURSO
El almacenamiento heredado no puede impulsar el futuro.

Las cargas de trabajo modernas exigen velocidad, seguridad y escalabilidad listas para la AI. ?Su pila est¨¢ lista?

Realizar la evaluaci¨®n
DEMOSTRACIONES DE PURE360
Explore, aprenda y experimente É«¿Ø´«Ã½.

Acceda a videos y demostraciones seg¨²n demanda para ver lo que É«¿Ø´«Ã½ puede hacer.

Mire las demostraciones
LIDERAZGO DE PENSAMIENTO
La carrera de la innovaci¨®n.

Los ¨²ltimos conocimientos y perspectivas de l¨ªderes de la industria que est¨¢n a la vanguardia de la innovaci¨®n en almacenamiento.

M¨¢s informaci¨®n
?Su navegador ya no es compatible!

Los navegadores m¨¢s antiguos a menudo representan riesgos de seguridad. Para brindar la mejor experiencia posible al utilizar nuestro sitio, actualice a cualquiera de estos navegadores m¨¢s recientes.