Aviso:

Para brindarle información de soporte completa de manera más rápida, el contenido de esta página ha sido traducido al español mediante traducción automática. Para consultar la información de soporte más precisa, consulte la versión en inglés de este contenido.

Desbalance de Clases

¿Qué es el Desbalance de Clases?

El desbalance de clases ocurre cuando el número de muestras en una clase (llamada la clase mayoritaria) supera significativamente a las de otra clase (llamada la clase minoritaria) en problemas de clasificación. Este desbalance puede causar que los modelos estén sesgados hacia la predicción de la clase mayoritaria, resultando en una detección deficiente de los casos de la clase minoritaria, que frecuentemente son los críticos (por ejemplo, detectar fraude o diagnosticar enfermedades raras).

¿Por Qué es Importante?

Si el desbalance no se maneja, los modelos pueden:

  • Alcanzar una alta precisión general, pero fallar en detectar casos de la clase minoritaria
  • Producir muchos falsos negativos (detecciones perdidas), lo cual puede ser peligroso en campos como la salud
  • Tener métricas de evaluación engañosas porque la precisión está dominada por la clase mayoritaria
  • Tener dificultades para generalizar bien con datos nuevos

Técnicas para Manejar el Desbalance

El manejo del desbalance de clases se refiere a un conjunto de técnicas usadas para tratar problemas de clasificación donde una clase (la mayoritaria) tiene significativamente más muestras que otra (la minoritaria).

Oversampling

El oversampling se usa para abordar el problema del desbalance de clases en datasets—particularmente común en problemas de clasificación binaria donde una clase supera significativamente a la otra.

En un dataset desbalanceado, la clase mayoritaria domina, lo que puede llevar a los modelos de machine learning a estar sesgados hacia predecir esa clase con más frecuencia, ignorando la clase minoritaria por completo. Esto resulta en un recall y precisión deficientes para la clase minoritaria, que frecuentemente es la clase de interés.

¿Qué hace el oversampling?

El oversampling aumenta la representación de la clase minoritaria al agregar más muestras, ya sea duplicando ejemplos existentes o generando nuevos sintéticos. El objetivo es equilibrar la distribución de clases, para que el modelo reciba igual exposición de aprendizaje a ambas clases.

Técnicas comunes:

  • SMOTE (Synthetic Minority Over-sampling Technique): Crea muestras sintéticas de la clase minoritaria interpolando entre ejemplos minoritarios existentes.
  • RandomOverSampler: Simplemente duplica muestras de la clase minoritaria aleatoriamente.
  • BorderlineSMOTE: Genera muestras sintéticas solo cerca del límite de decisión donde las clases se superponen.
  • ADASYN: Similar a SMOTE pero se enfoca más en crear muestras para los casos minoritarios más difíciles de aprender.

Ejemplo:

Supongamos que tienes un dataset de detección de fraude:

Clase Número de Muestras
Legítimo 10,000
Fraude 200

Usando SMOTE, generas casos sintéticos de fraude para aumentar las muestras de la clase minoritaria de 200 a 10,000. Este dataset equilibrado ayuda al modelo a aprender mejor los patrones de fraude, reduciendo los casos de fraude no detectados (falsos negativos) y mejorando las tasas de detección.

Undersampling

El undersampling es una técnica usada para manejar el desbalance de clases en datasets de machine learning al reducir el tamaño de la clase mayoritaria para que sea comparable al tamaño de la clase minoritaria. Esto ayuda a crear un dataset más equilibrado, asegurando que el modelo preste igual atención a ambas clases durante el entrenamiento.

En un escenario típico de desbalance, una clase (usualmente la que nos interesa menos) domina el dataset. Por ejemplo, en una tarea de clasificación de correos electrónicos, el número de correos “no spam” podría superar ampliamente a los de “spam”. Sin equilibrar, un modelo podría aprender a predecir solo la clase mayoritaria para optimizar la precisión, mientras ignora completamente la clase minoritaria.

¿Qué hace el undersampling?

El undersampling reduce la distribución sesgada al eliminar aleatoria o estratégicamente muestras de la clase mayoritaria, reduciéndola así para igualar o acercarse al tamaño de la clase minoritaria. Esto obliga al modelo a aprender de forma más equitativa de ambas clases, lo que puede mejorar su rendimiento en la clase minoritaria.

Técnicas comunes:

  • RandomUnderSampler: Elimina aleatoriamente muestras de la clase mayoritaria.
  • TomekLinksUnderSampler: Elimina muestras mayoritarias que están muy cerca de las muestras minoritarias (limpiando superposiciones ruidosas).
  • EditedNNUnderSampler: Elimina muestras mayoritarias mal clasificadas por los vecinos más cercanos, reduciendo el ruido.
  • NearMissUnderSampler: Mantiene las muestras mayoritarias que están cerca de las muestras minoritarias (se enfoca en casos difíciles del límite de decisión).

Ejemplo:

En un dataset de diagnóstico médico:

Clase Número de Muestras
Sano 5000
Enfermedad 300

Usando RandomUnderSampler, las muestras sanas se reducen de 5,000 a 300 para igualar las muestras de enfermedad. Esto ayuda al modelo a evitar el sesgo hacia la clase sana y detectar mejor la enfermedad.

Última actualización 2026-03-20 21:51:56 +0530 IST