35 votos

¿Qué problema resuelven el sobremuestreo, el submuestreo y el SMOTE?

En una pregunta reciente y bien recibida, Tim pregunta cuándo los datos desequilibrados son realmente un problema en el aprendizaje automático ? La premisa de la pregunta es que hay mucha literatura de aprendizaje automático que discute balance de clases y el problema de las clases desequilibradas . La idea es que los conjuntos de datos con un desequilibrio entre la clase positiva y la negativa causan problemas para algunos algoritmos de clasificación de aprendizaje automático (estoy incluyendo los modelos probabilísticos aquí), y se deben buscar métodos para "equilibrar" el conjunto de datos, restaurando la división perfecta de 50/50 entre las clases positivas y negativas.

El sentido general de las respuestas votadas es que "no lo es, al menos si se es reflexivo en el modelado". M. Henry L., en un comentario votado a una respuesta aceptada, afirma

[...] no hay un problema de bajo nivel con el uso de datos desequilibrados. En mi experiencia, el consejo de "evitar los datos desequilibrados" es específico del algoritmo, o bien sabiduría heredada. Estoy de acuerdo con AdamO en que, en general, los datos desequilibrados no suponen ningún problema conceptual para un modelo bien especificado.

AdamO argumenta que el "problema" del equilibrio de clases es realmente uno de clase rareza

Por lo tanto, al menos en la regresión (pero sospecho que en todas las circunstancias), el único problema con los datos desequilibrados es que efectivamente tienes un tamaño de muestra pequeño. Si cualquier método es adecuado para el número de personas de la clase más rara, no debería haber ningún problema si su proporción de miembros está desequilibrada.

Si esta es la verdadera cuestión, deja una pregunta abierta: ¿para qué sirven todos los métodos de remuestreo destinados a equilibrar el conjunto de datos: sobremuestreo, submuestreo, SMOTE, etc.? Está claro que no abordan el problema de tener implícitamente un tamaño de muestra pequeño, ¡no se puede crear información de la nada!

3voto

Milan Vukicevic Puntos 59

El problema que intentan resolver estos métodos es aumentar el impacto de la clase minoritaria en la función de costes. Esto se debe a que los algos intentan ajustarse bien a todo el conjunto de datos y luego se adaptan a la mayoría. Otro enfoque sería utilizar pesos de clase, y este enfoque en la mayoría de los casos da mejores resultados, ya que no hay pérdida de información por submuestreo o pérdida de rendimiento e introducción de ruido por sobremuestreo.

0voto

Josh Puntos 58

Algunas técnicas de muestreo sirven para ajustar el sesgo (si la tasa de la población es conocida y diferente), pero estoy de acuerdo con la idea de que la clase desequilibrada no es el problema en sí. Una de las principales razones se reduce al rendimiento del procesamiento. Si nuestra clase objetivo, por ejemplo, es un caso extremadamente raro a 1:100000, nuestro conjunto de datos de modelado sería masivo y el cálculo sería difícil. El muestreo, sea cual sea la estrategia, siempre supone desechar algunos datos para reducir el tamaño total del conjunto de datos. Supongo que la diferencia entre todas las estrategias de muestreo es la inteligencia en torno a los datos que desechamos sin sacrificar una pérdida de posibilidades de predicción.

0voto

Manav Kataria Puntos 183

Le daré un ejemplo más extremo. Considere el caso de que tenga un conjunto de datos con 99 puntos de datos etiquetados como positivos y sólo uno etiquetado como negativo. Durante el entrenamiento, tu modelo se dará cuenta de que si clasifica todo como positivo, acabará saliéndose con la suya. Una forma de solucionar esto es sobremuestrear la clase subrepresentada y otra es submuestrear la clase sobrerrepresentada. Por ejemplo, en un conjunto de datos con 70 etiquetas positivas y 30 negativas, podría muestrear las etiquetas negativas con reemplazo y las positivas sin reemplazo, lo que hará que mi modelo encuentre más etiquetas negativas durante el entrenamiento. De este modo, si mi modelo intenta clasificar todo como positivo, incurrirá en una pérdida mayor de la que habría tenido de otro modo.

Otro enfoque que no pertenece al muestreo es ajustar la función de costes para dar mayor peso a los puntos de datos con la etiqueta minoritaria. Por ejemplo, si se utiliza la pérdida NLL en un conjunto de datos en el que los 1 están sobrerrepresentados en comparación con los 0 entre las etiquetas, se podría ajustar la función de pérdida para que sea:

$L(\tilde{x_i}, y_i) = -\alpha(y_i)\ln(\tilde{x_i}) - \beta(1 - y_i) \ln(1 - \tilde{x_i})$

donde $\beta > \alpha$ . La magnitud de la diferencia $\beta - \alpha$ depende del grado de sobrerrepresentación/subrepresentación.

-2voto

Christina Puntos 1

Voy a discrepar de la premisa de que los datos desequilibrados no son un problema en el aprendizaje automático. Quizás menos en la regresión, pero ciertamente lo es en la clasificación.

Los datos desequilibrados son relevantes en las aplicaciones de aprendizaje automático debido a la disminución del rendimiento de los algoritmos (la investigación en la que estoy pensando es específicamente en los clasificadores) en el entorno de desequilibrio de clases.

Tomemos un simple problema de clasificación binaria con una proporción de 25:1 de ejemplos de entrenamiento de la clase A' frente a la 'clase B'. La investigación ha demostrado que la precisión relativa a la clasificación de la clase B se ve afectada simplemente por la disminución de la proporción de datos de entrenamiento. Tiene sentido, ya que cuanto menor sea el número de ejemplos de entrenamiento, peor será el entrenamiento del clasificador con esos datos. Como dijo uno de los comentaristas, no se puede hacer algo de la nada. Según los artículos que he visto, en los problemas de clasificación multiclase, parece que hay que llegar a una proporción de 10:1 para empezar a tener un impacto significativo en la precisión de la clase minoritaria. Tal vez la gente que lee literatura diferente a la que yo he visto tenga opiniones diferentes.

Así, las soluciones propuestas son: Sobremuestreo de la clase minoritaria, Submuestreo de la clase mayoritaria o uso de SMOTE en la clase minoritaria. Sí, realmente no se pueden crear datos de la nada (SMOTE más o menos lo hace, pero no exactamente), a menos que te metas en la creación de datos sintéticos para la clase minoritaria (no es un método sencillo). Otras técnicas como MixUp y similares entran potencialmente en este concepto, pero creo que son más regularizadores que soluciones de desequilibrio de clases. En los documentos que he leído, Oversampling > SMOTE > Undersampling.

Independientemente de su técnica, está alterando la relación entre las clases mayoritarias y minoritarias, lo que puede afectar a la incidencia. En otras palabras, si está creando un clasificador para detectar la enfermedad cerebral súper rara X, que tiene una incidencia de 1 en 100.000, y su clasificador está en 1:1, podría ser más sensible y menos específico con un mayor número de falsos positivos. Si es importante que detectes esos casos y los arbitres después, estás bien. Si no, habrás perdido el tiempo y el dinero de otras personas. En algún momento habrá que solucionar este problema.

Así que para responder a la pregunta:

tl/dr: Las operaciones de equilibrio de clases, como el sobremuestreo/desmembramiento y el SMOTE (y los datos sintéticos), existen para mejorar el rendimiento de los algoritmos de aprendizaje automático (clasificadores) resolviendo el golpe de rendimiento inherente a un algoritmo causado por el propio desequilibrio .

-2voto

Joerg Puntos 974

Hay muchas técnicas de sobremuestreo y submuestreo para superar la escasez de minorías en datos desequilibrados y viceversa.... Sin embargo, la mayoría de ellos tienen consecuencias en el comportamiento de su modelo (en términos de varianza). Personalmente, utilizo una técnica propia en la que el sobremuestreo y el submuestreo se realizan de forma simultánea. A este muestreo combinado con muestreo sintético adaptativo (ADASYN) lo llamo C-ADASYN . Usted puede pensar en trasplante de cabello donde se sobremuestrea en el área escasa y se desmuestra en el área densa, para mantener el comportamiento justo y añadir una muestra sintética si es necesario para aumentar la población.

enter image description here

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X