Considera un conjunto de datos que contenga una etiqueta categórica cuyo valor sea uno de los siguientes: Positiva o Negativa. En un conjunto de datos equilibrado, la cantidad de etiquetas Positivas y Negativas es aproximadamente igual. Sin embargo, si una etiqueta es más común que la otra etiqueta, el conjunto de datos se desequilibrado. La etiqueta predominante en un conjunto de datos desequilibrado se denomina clase mayor; la etiqueta menos común se llama clase minoritaria.
En la siguiente tabla, se proporcionan nombres y rangos generalmente aceptados para diferentes grados de desequilibrio:
Porcentaje de datos que pertenecen a la clase minoritaria | Grado de desequilibrio |
---|---|
Entre el 20 y el 40% del conjunto de datos | Leve |
Entre el 1 y el 20% del conjunto de datos | Moderado |
Menos del 1% del conjunto de datos | Extremo |
Por ejemplo, considera un conjunto de datos de detección de virus en el que la clase minoritaria representa el 0.5% del conjunto de datos y la clase mayoritaria representa el 99.5%. Los conjuntos de datos extremadamente desequilibrados como este son comunes en la medicina, ya que la mayoría de los sujetos no tendrán el virus.
Los conjuntos de datos desequilibrados a veces no contienen suficiente clase minoritaria. para entrenar un modelo de forma apropiada. Es decir, con tan pocas etiquetas positivas, el modelo se entrena casi exclusivamente en etiquetas negativas y no puede aprender lo suficiente sobre las etiquetas positivas. Por ejemplo, si el tamaño del lote es de 50, muchos lotes no contendrán etiquetas positivas.
A menudo, el desequilibrio no es un problema, en especial para los conjuntos de datos ligeramente desequilibrados y algunos moderadamente desequilibrados. Por lo tanto, primero debes intentar entrenar con el conjunto de datos original. Si el modelo funciona bien, ya está todo listo. Si no es así, al menos el modelo subóptimo brinda una buena modelo de referencia para experimentos futuros. Luego, puedes probar las siguientes técnicas para superar los problemas que causan los conjuntos de datos desequilibrados.
Reducción de muestreo y aumento de ponderación
Una forma de controlar un conjunto de datos desequilibrados es reducir el muestreo y aumentar el peso del mayoritaria. A continuación, presentamos las definiciones de esos dos términos nuevos:
- Reducción de muestreo (en este contexto) implica capacitarse en un subconjunto desproporcionadamente bajo de la clase mayoritaria, ejemplos.
- Aumento de ponderación significa agregar un peso de ejemplo a la clase con reducción de muestreo igual al factor por el que se realizó la reducción de muestreo.
Paso 1: Reduce la muestra de la clase mayoritaria. Considera el conjunto de datos de virus que se muestra en la Figura 5, que tiene una proporción de 1 etiqueta positiva por cada 200 etiquetas negativas. La reducción de la muestra en un factor de 10 mejora el equilibrio a 1 positivo por 20 negativos (5%). Aunque el conjunto de entrenamiento resultante aún es moderadamente desequilibrada, la proporción de positivos a negativos es mucho mejor que con la proporción original extremadamente desequilibrada (0.5%).
Paso 2: Aumenta el peso de la clase con reducción de muestreo: Agrega pesos de ejemplo a la clase con reducción de muestreo. Después de realizar una reducción de muestreo por un factor de 10, el peso del ejemplo debería ser 10. (Sí, esto puede parecer contradictorio, pero explicar por qué más adelante).
El término peso no se refiere a los parámetros del modelo (como w1 o w2). Aquí, peso se refiere a Ponderaciones de ejemplo, lo que aumenta la importancia de un ejemplo individual durante el entrenamiento. Un peso de ejemplo de 10 significa que el modelo trata el ejemplo como 10 veces más importante (cuando se calcula la pérdida) que un ejemplo de peso 1.
El peso debe ser igual al factor que usaste para reducir el muestreo:
\[\text{ \{example weight\} = \{original example weight\} × \{downsampling factor\} }\]
Puede parecer extraño agregar pesos de ejemplo después de la reducción de la muestra. Después de todo, eres tratar de hacer que el modelo mejore a la clase minoritaria, entonces, ¿por qué aumentar mayoritaria? De hecho, aumentar el peso de la clase mayoritaria tiende a reducir el sesgo de predicción. Es decir, el aumento de peso después de la reducción de muestreo tiende a reducir el delta entre de las predicciones de tu modelo y el promedio de las etiquetas de tu conjunto de datos.
Proporciones de rebalanceo
¿Cuánto debes reducir la muestra y aumentar el peso para rebalancear tu conjunto de datos? Para determinar la respuesta, debe experimentar con la proporción de rebalanceo tal como lo harías con otras hiperparámetros. Dicho esto, la respuesta depende en última instancia de los siguientes factores:
- El tamaño del lote
- La proporción de desequilibrio
- La cantidad de ejemplos en el conjunto de entrenamiento
Lo ideal sería que cada lote contenga varios ejemplos de clases minoritarias. Los lotes que no contengan suficientes clases minoritarias se entrenarán muy mal. El tamaño del lote debe ser varias veces mayor que la proporción de desequilibrio. Por ejemplo, si la proporción de desequilibrio es de 100:1, el tamaño del lote debe ser de al menos 500.
Ejercicio: Comprueba tu comprensión
Ten en cuenta la siguiente situación:
- El conjunto de entrenamiento contiene un poco más de mil millones de ejemplos.
- El tamaño del lote es 128.
- La proporción de desequilibrio es 100:1, por lo que el conjunto de entrenamiento se divide de la siguiente manera:
- Alrededor de mil millones de ejemplos de clases mayoritarias.
- Alrededor de 10 millones de ejemplos de clases minoritarias.