En cliquant sur "Accepter ", vous acceptez que des cookies soient stockés sur votre appareil afin d'améliorer la navigation sur le site, d'analyser son utilisation et de contribuer à nos efforts de marketing. Consultez notre politique de confidentialité pour plus d'informations.
How-to

Estrategias para equilibrar tu conjunto de datos de entrenamiento

Escrito por
Nicolas
Publicado el
2024-10-26
Tiempo de lectura
0
min

En el campo del aprendizaje automático, el equilibrio de los conjuntos de datos de entrenamiento es muy importante para optimizar el rendimiento del modelo. Si los datos están desequilibrados, pueden generar sesgos y limitar la generalización, lo que compromete la confiabilidad de las predicciones. Para obtener resultados precisos e imparciales, se recomienda establecer estrategias eficaces para equilibrar los datos utilizados para entrenar los modelos.

🤔 ¿Por qué es importante? De hecho, cuando los datos están desequilibrados, el modelo de inteligencia artificial tiende a favorecer a las clases mayoritarias, lo que puede sesgar los resultados y llevar a predicciones inexactas para las clases minoritarias. Esto puede tener graves consecuencias, especialmente en áreas críticas como la salud o las finanzas, donde las decisiones deben tomarse de manera justa, precisa y ética.

Garantizar un buen equilibrio en los conjuntos de datos permite entrenar modelos que puedan tratar todas las clases de manera justa, lo que garantiza predicciones más confiables e imparciales.

💡 Este artículo explora técnicas clave para equilibrar los conjuntos de datos de entrenamiento. Vamos a ver por qué es importante tener datos equilibrados, métodos de remuestreo comunes y enfoques para generar datos sintéticos. También analizaremos cómo evaluar y ajustar el equilibrio de los datos para optimizar el rendimiento de los modelos. ¡Estas estrategias te ayudarán a mejorar la calidad de tus kits de entrenamiento y a lograr modelos más robustos a largo plazo!

Comprenda la importancia de los datos equilibrados

Definición de un conjunto de datos equilibrado

Un conjunto de datos equilibrado se refiere a un conjunto en el que las clases o categorías se representan en proporciones aproximadamente iguales. En el contexto del aprendizaje automático, este equilibrio es particularmente importante para las tareas de clasificación. Un número equivalente de muestras para cada clase garantiza que el modelo no genere un sesgo hacia una clase en particular. Este equilibrio contribuye a hacer predicciones más precisas y confiables, especialmente en escenarios en los que los costos de una clasificación errónea son altos.

Por el contrario, un conjunto de datos desequilibrado se produce cuando una clase está significativamente sobrerrepresentada en comparación con las demás. Este desequilibrio puede conducir a un modelo sesgado que favorezca la predicción de la clase mayoritaria, porque el modelo aprende a minimizar el error general al dar prioridad a la clase con más ejemplos.

Una ilustración de un conjunto de datos desequilibrado y equilibrado (fuente: Minasha Saini, Seba Susan)

Impacto en el rendimiento del modelo

El equilibrio de datos tiene una enorme influencia en el rendimiento de los modelos de aprendizaje automático. Un conjunto de datos equilibrado permite que el modelo tenga suficientes ejemplos de cada clase para aprender, lo que permite una mejor generalización y predicciones más precisas. Esto es especialmente importante en áreas como la detección de fraudes, el diagnóstico médico y la segmentación de clientes, donde la clasificación errónea puede provocar importantes pérdidas financieras, riesgos para la salud o la pérdida de oportunidades.

Además, un conjunto de datos equilibrado contribuye a la equidad y a las prácticas éticas de IA. Por ejemplo, en escenarios en los que los datos representan diferentes grupos demográficos, un conjunto de datos desequilibrado podría generar predicciones sesgadas que afecten de manera desproporcionada a los grupos subrepresentados. Por lo tanto, garantizar el equilibrio de los datos ayuda a mitigar este riesgo, lo que conduce a resultados más equitativos y ayuda a las empresas a cumplir con los requisitos reglamentarios relacionados con la discriminación y la equidad en el uso de la inteligencia artificial.

Consecuencias de un desequilibrio de datos

El desequilibrio de datos puede tener consecuencias importantes en el rendimiento y la fiabilidad de los modelos de aprendizaje automático. A continuación se presentan algunas de las principales consecuencias:

1. Sesgo del modelo

Los datos desequilibrados pueden provocar un sesgo en el modelo, en el que el modelo se ve excesivamente influenciado por la clase mayoritaria. Entonces, puede tener problemas para hacer predicciones precisas para la clase minoritaria.

Un ejemplo del sesgo de un algoritmo de inteligencia artificial... que obviamente no reconoció a Obama. Sus modelos están sesgados porque sus datos están sesgados... ¡porque probablemente estén desequilibrados! (Fuente: @hardmaru en X)

2. Alta precisión, bajo rendimiento

Un modelo basado en datos desequilibrados puede parecer que tiene una alta precisión, pero en realidad puede funcionar mal en las clases minoritarias, que suelen ser las que más interés suscitan.

3. Pérdida dePerspectivas

El desequilibrio de datos puede provocar la pérdida de información y razones importantes presente en la clase minoritaria, lo que lleva a la pérdida de oportunidades o a errores críticos.

4. Generalización limitada

Los modelos entrenados en conjuntos de datos desequilibrados pueden tener problemas para generalizar datos nuevos e invisibles, especialmente para la clase minoritaria.

🦺 Para paliar estos problemas, se han desarrollado diversas técnicas, como remuestreo, elAjustar los pesos de las clases Y eluso de métricas de valoración especializadas que reflejen mejor el rendimiento en datos desequilibrados.

Técnicas de remuestreo

Para tratar los problemas de desequilibrio de datos, el remuestreo es un enfoque ampliamente adoptado para tratar los conjuntos de datos. Esta técnica cambia la composición del conjunto de datos de entrenamiento para lograr una distribución más equilibrada entre las clases. Los métodos de remuestreo se pueden clasificar en dos categorías principales: sobremuestreo Y el submuestreo. ¡Te explicamos a continuación de qué se trata!

Sobremuestreo

El sobremuestreo implica agregar ejemplos a la clase minoritaria para equilibrar la distribución de las clases. Esta técnica es particularmente útil cuando el conjunto de datos es pequeño y las muestras de la clase minoritaria son limitadas.

Un método sencillo de sobremuestreo es el duplicación aleatoria de ejemplos de la clase minoritaria. Aunque es fácil de implementar, este enfoque puede resultar en sobreaprendizaje, porque no genera nueva información.

Una técnica más sofisticada es la Técnica de sobremuestreo sintético de minorías (o DERROTÓ). SMOTE crea nuevos ejemplos sintéticos mediante la interpolación entre las instancias existentes de la clase minoritaria. Este método genera puntos de datos artificiales basados en las características de las muestras existentes, lo que añade diversidad al conjunto de datos de entrenamiento.

Submuestreo

El submuestreo tiene como objetivo reducir el número de ejemplos de la clase mayoritaria para equilibrar la distribución de las clases. Este enfoque puede ser eficaz cuando el conjunto de datos es grande y la clase mayoritaria contiene muchas muestras redundantes o similares.

Un método simple de submuestreo es eliminar aleatoriamente ejemplos de la clase mayoritaria. Si bien esta técnica puede ser eficaz, existe el riesgo de eliminar información importante.

Métodos más avanzados, como enlaces a Tomek, identifique y elimine pares de ejemplos que sean muy similares pero que pertenezcan a clases diferentes. Este enfoque aumenta el espacio entre las clases y facilita el proceso de clasificación.

Técnicas híbridas

Las técnicas híbridas combinan el sobremuestreo y el submuestreo para obtener mejores resultados. Por ejemplo, el método SMOTEENN primero aplica SMOTE para generar ejemplos sintéticos de la clase minoritaria y, a continuación, utiliza el algoritmo Edited Nearest Neighbors (ENN) para limpiar el espacio resultante del sobremuestreo.

Otro enfoque híbrido es SMOTE-TOMEK, que aplica SMOTE seguido de la eliminación de los enlaces de Tomek. Esta combinación da como resultado un espacio de funciones más limpio y mejor equilibrado.

Es importante tener en cuenta que la elección de la técnica de remuestreo depende de las características específicas del conjunto de datos y del problema a resolver. Con frecuencia se requiere una evaluación exhaustiva de los distintos métodos para determinar el enfoque más apropiado para un caso de uso particular.

Métodos de generación de datos sintéticos

La generación de datos sintéticos se ha convertido en una herramienta esencial para mejorar la calidad y la diversidad de los conjuntos de datos de formación. Estos métodos permiten crear muestras artificiales que imitan las características de los datos reales, lo que ayuda a resolver los problemas de desequilibrio de clases y aumenta el tamaño de los conjuntos de datos.

DERROTÓ (Técnica de sobremuestreo sintético de minorías)

SMOTE es una técnica popular para tratar conjuntos de datos desequilibrados. Funciona creando nuevos ejemplos sintéticos para la clase minoritaria. El algoritmo identifica los k vecinos más cercanos en una muestra de clase minoritaria y genera nuevos puntos a lo largo de las líneas que conectan la muestra con sus vecinos. Este enfoque permite aumentar la representación de la clase minoritaria sin limitarse a duplicar los ejemplos existentes, lo que podría llevar a un aprendizaje excesivo.

Aumento de datos

El aumento de datos es una técnica muy utilizada, especialmente en el campo de la visión por computador. Consiste en aplicar transformaciones a los datos existentes para crear nuevas variaciones. En el caso de las imágenes, estas transformaciones pueden incluir rotaciones, cambios de tamaño, cambios de brillo o la adición de ruido. En el procesamiento del lenguaje natural, el aumento puede incluir sustituciones de sinónimos o paráfrasis. Estas técnicas permiten exponer el modelo a una mayor variedad de escenarios, lo que mejora su capacidad de generalización.

Generadores adversarios (GAN)

Las redes generativas de confrontación (GAN) representan un enfoque más avanzado para generar datos sintéticos. Una GAN consiste en dos redes neuronales que compiten entre sí: un generador que crea nuevos datos y un discriminador que intenta distinguir los datos reales de los datos generados. A medida que avanza el entrenamiento, el generador mejora para producir datos cada vez más realistas, mientras que el discriminador refina su capacidad para detectar falsificaciones.

Las GAN han mostrado resultados prometedores en la generación de datos sintéticos para diversas aplicaciones, especialmente en el campo de la medicina, donde se pueden utilizar para generar imágenes médicas sintéticas. Estas imágenes pueden ayudar a aumentar los conjuntos de datos limitados, mejorando así el rendimiento de los modelos de clasificación y segmentación.

En conclusión, estos métodos de generación de datos sintéticos ofrecen soluciones poderosas para enriquecer los conjuntos de datos de entrenamiento. No solo equilibran las clases subrepresentadas, sino que también aumentan la diversidad de datos, lo que contribuye a mejorar la solidez y la generalización de los modelos de aprendizaje automático.

Evaluación y ajuste del saldo

Evaluar y ajustar el equilibrio del conjunto de datos de entrenamiento son pasos fundamentales para garantizar el rendimiento óptimo de los modelos de aprendizaje automático. Esta fase implica el uso de métricas específicas, la aplicación de técnicas de validación cruzada estratificadas y el ajuste iterativo del conjunto de datos.

Métricas para medir el equilibrio

Para evaluar eficazmente el equilibrio de un conjunto de datos, es esencial utilizar las métricas adecuadas. Las métricas tradicionales, como la precisión general, pueden resultar engañosas en el caso de datos desequilibrados. Es mejor centrarse en las métricas que ofrecen una visión más completa del rendimiento del modelo, por ejemplo:

• El precisión : mide la proporción de predicciones positivas que son correctas entre todas las predicciones positivas.

• El recordatorio (o sensibilidad): evalúa la proporción de verdaderos positivos entre todas las muestras positivas reales.

• El Puntuación de F1 : representa la media armónica de precisión y recuperación, proporcionando una medida equilibrada del rendimiento del modelo.

Además, el uso de la curva ROC (Característica de funcionamiento del receptor) y la curva Precision-Recall permite visualizar el rendimiento del modelo en diferentes umbrales de clasificación. Estas curvas ayudan a comprender el equilibrio entre la tasa de verdaderos positivos y la tasa de falsos positivos (curva ROC) o entre la precisión y la recuperación (curva de precisión-recuperación).

Validación cruzada estratificada

La validación cruzada estratificada es una técnica avanzada que es particularmente útil para conjuntos de datos con una distribución de clases desequilibrada. A diferencia de la validación cruzada estándar, que divide aleatoriamente el conjunto de datos, la validación cruzada estratificada garantiza que cada pliegue contenga aproximadamente el mismo porcentaje de muestras de cada clase que el conjunto completo.

Este enfoque garantiza una evaluación más equitativa y confiable del modelo, especialmente cuando ciertas clases están subrepresentadas. Garantiza que el modelo se entrene y evalúe en una muestra representativa de cada clase, lo que mitiga los posibles sesgos y mejora la estimación del rendimiento general del modelo.

Ajuste iterativo del conjunto de datos

El ajuste iterativo de los conjuntos de datos es un enfoque que tiene como objetivo mejorar progresivamente el equilibrio y la calidad de los datos de entrenamiento. Este método implica varios pasos:

1. Evaluación inicial

Utilice las métricas adecuadas para evaluar el saldo actual del conjunto de datos.

2. Identificación de problemas

Analice los resultados para detectar clases subrepresentadas o posibles sesgos.

3. Aplicación de técnicas de remuestreo

Utilice métodos como el sobremuestreo o el submuestreo para ajustar la distribución de clases.

4. Generación de datos sintéticos

Si es necesario, cree nuevos ejemplos para las clases minoritarias utilizando técnicas como SMOTE.

5. Reevaluación

Vuelva a medir el saldo del conjunto de datos después de los ajustes.

6. Iteración

Repite el proceso hasta lograr un equilibrio satisfactorio.

🧾 Es importante tener en cuenta que el ajuste iterativo debe hacerse con cuidado para evitar el sobreaprendizaje. Se recomienda aplicar la validación cruzada antes de volver a muestrear los datos para garantizar una evaluación imparcial del rendimiento del modelo.

Logo


¿Y si te ayudamos a crear conjuntos de datos equilibrados "by Design"?
¡No esperes más! Nuestro equipo de etiquetadores especializados en Computer Vision puede ayudarte a construir datasets equilibrados según tus instrucciones. No dudes en contactarnos.

Conclusión

Equilibrar los conjuntos de datos de entrenamiento tiene un impacto significativo en el rendimiento y la confiabilidad de los modelos de aprendizaje automático. Técnicas como el remuestreo, la generación de datos sintéticos y el ajuste iterativo ofrecen soluciones eficaces a los problemas de desequilibrio de clases. Al implementar estas estrategias, los profesionales de datos pueden mejorar la calidad de sus conjuntos de capacitación y obtener modelos más sólidos e imparciales.

Al final del día, equilibrar los datos no es una tarea única, sino un proceso continuo que requiere una evaluación y un ajuste constantes. Al usar las métricas correctas y aplicar la validación cruzada estratificada, los equipos pueden asegurarse de que sus modelos funcionen de manera óptima en todas las clases. ¡Este enfoque no solo mejora el rendimiento del modelo, sino que también contribuye a unas prácticas de IA más éticas y equitativas!

Preguntas frecuentes

Para reequilibrar un conjunto de datos desequilibrado, se puede recurrir al submuestreo o al sobremuestreo de la clase mayoritaria. El submuestreo consiste en utilizar un número reducido de ejemplos de la clase mayoritaria durante el entrenamiento.
El desequilibrio de datos se refiere a una distribución desigual de muestras entre diferentes clases en el aprendizaje automático supervisado y en el aprendizaje profundo. Este fenómeno puede generar sesgos en los resultados de los modelos, afectando su fiabilidad y eficacia, especialmente en ámbitos críticos como la salud.
Para abordar el desequilibrio de clases en un conjunto de datos, se pueden usar técnicas como el sobremuestreo sintético de la clase minoritaria (SMOTE), el submuestreo aleatorio y una evaluación rigurosa del modelo que incluya validación cruzada.