¿Qué es el submuestreo?

Autores

Jacob Murel Ph.D.

Senior Technical Content Creator

¿Qué es el submuestreo?

El submuestro disminuye el número de muestras de datos en un conjunto de datos. Al hacerlo, su objetivo es corregir los datos desequilibrados y, por lo tanto, mejorar el rendimiento del modelo.

El submuestreo es una técnica común de procesamiento de datos que aborda los desequilibrios en un conjunto de datos mediante la eliminación de datos de la clase mayoritaria para que coincida con el tamaño de la clase minoritaria. Esto se opone al sobremuestreo, que implica volver a muestrear puntos de clase minoritarios. Tanto Python scikit-learn como Matlab contienen funciones integradas para aplicar técnicas de submuestreo.

El submuestreo en la ciencia de datos se suele confundir con el descarte de muestras en el procesamiento digital de señales (DSP). Ambos son similares en espíritu. El submuestreo en el procesamiento digital de señales (también conocido como "decimación") es el proceso de disminuir el ancho de banda y la frecuencia de muestreo del dispositivo de muestreo, eliminando así parte de los datos originales de la señal original. El proceso de disminución de la frecuencia de muestreo suele realizarse reduciendo la frecuencia de muestreo en algún factor entero, manteniendo sólo una de cada enésima muestra. Para ello se utiliza un filtro de paso bajo, también conocido como filtro antialiasing, que reduce los componentes de alta frecuencia/ruido de una señal de tiempo discreto en el factor entero antes mencionado.

El submuestreo para el equilibrio de datos también puede confundirse con el submuestreo para el procesamiento de imágenes. Cuando los datos contienen muchos elementos, como en las imágenes de resonancia magnética de alta resolución, los cálculos pueden resultar caros. El submuestreo en el procesamiento de imágenes reduce así la dimensionalidad de cada punto de datos mediante la convolución. No es lo mismo que equilibrar el conjunto de datos: es una técnica de optimización que, más adelante, requerirá la interpolación para recuperar los datos originales.

Las últimas tendencias en IA, presentadas por expertos

Obtenga conocimientos organizados sobre las noticias más importantes e intrigantes de la IA. Suscríbase a nuestro boletín semanal Think. Consulte la Declaración de privacidad de IBM.

¡Gracias! Está suscrito.

Su suscripción se enviará en inglés. Encontrará un enlace para darse de baja en cada boletín. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

¿Por qué utilizar el submuestreo?

El submuestreo es una forma eficaz de abordar los desequilibrios dentro de un conjunto de datos. Un conjunto de datos desequilibrado se define como un conjunto de datos en el que una clase está muy infrarrepresentada en el conjunto de datos en relación con la población real, lo que crea un sesgo no intencionado. Por ejemplo, imagine que se entrena a una modelo para clasificar las imágenes según las que muestran un gato o un perro. El conjunto de datos utilizado está compuesto por un 90 % de gatos y un 10 % de perros. Los gatos en este escenario están sobrerrepresentados y, si tenemos un clasificador que prediga los gatos siempre, tendrá una precisión del 90 % en la clasificación de los gatos, pero del 0 % de precisión en la clasificación de los perros. En este caso, el conjunto de datos desequilibrado hará que los clasificadores favorezcan la precisión de la clase mayoritaria a expensas de la minoritaria. Puede surgir el mismo problema con conjuntos de datos de varias clases.1

El proceso de submuestreo contrarresta el problema del desequilibrio del conjunto de datos. Identifica los puntos de clase mayoritarios que se van a eliminar en función de criterios especificados. Estos criterios pueden cambiar con la técnica de submuestreo elegida. De este modo, se equilibra el conjunto de datos reduciendo el número de muestras de una clase mayoritaria sobrerrepresentada hasta que el conjunto de datos contenga la misma proporción de puntos en todas las clases.

Aunque los desequilibrios pueden observarse simplemente trazando el recuento de puntos de datos en cada clase, no nos dice si afectarán en gran medida al modelo. Afortunadamente, podemos utilizar métricas de rendimiento para calibrar hasta qué punto una técnica de reducción de la muestra corrige el desequilibrio de clases. La mayoría de estas métricas serán para la clasificación binaria, donde solo hay dos clases: positiva y negativa. Por lo general, la clase positiva es la clase minoritaria, mientras que la clase negativa es la clase mayoritaria. Dos métricas populares son las curvas de característica operativa del receptor (ROC) y las curvas de recuperación de precisión.1

Mixture of Experts | 12 de diciembre, episodio 85

Descifrar la IA: resumen semanal de noticias

Únase a nuestro panel de ingenieros, investigadores, responsables de producto y otros profesionales de talla mundial que se abren paso entre el bullicio de la IA para ofrecerle las últimas noticias y conocimientos al respecto.

Ventajas y desventajas del submuestreo

Ventajas

  • Menos requisitos de almacenamiento: cuando el almacenamiento cuesta dinero, por ejemplo, para el almacenamiento en la nube, se preferiría el muestreo descendente al muestreo ascendente para evitar aumentar los costes.2
  • Entrenamiento más rápido: la reducción de la muestra reduce el tamaño de los conjuntos de datos y hace que el entrenamiento sea menos intensivo para la CPU o la GPU, lo que resulta más económico y respetuoso con el medio ambiente.
  • Menos propenso al sobreajuste: el sobremuestreo genera nuevos datos a partir de los datos antiguos, lo que puede hacer que los modelos se sobreajusten a los datos dados. El submuestreo, al ser lo contrario (elimina datos), no sufre este problema.2

Desventajas

  • Pérdida de información: la eliminación de puntos de la clase mayoritaria puede provocar la pérdida de información importante. Esto puede ser un problema si la clasificación de la clase mayoritaria debe ser precisa. Otro problema es que el conjunto de datos sea demasiado pequeño para que el modelo pueda entrenarse.2
  • Sesgo introducido: los puntos de muestra de la clase mayoritaria restantes pueden ser un conjunto sesgado de los datos originales, lo que afecta negativamente al rendimiento del clasificador.

Técnicas de submuestreo

Submuestreo aleatorio

El submuestreo aleatorio es una técnica de eliminación en la que se eligen puntos aleatorios de la clase mayoritaria sin reemplazo y se eliminan del conjunto de datos hasta que el tamaño de la clase mayoritaria sea igual al tamaño de la clase minoritaria. Esta es una manera fácil de eliminar aleatoriamente un subconjunto de datos con fines de equilibrio. Sin embargo, esta técnica puede hacer que desaparezcan patrones o distribuciones importantes en la clase mayoritaria, lo que afecta negativamente al rendimiento del clasificador.2

Submuestreo Near Miss

El submuestreo Near Miss es una técnica que tiene como objetivo equilibrar la distribución de clases eliminando aleatoriamente ciertos ejemplos de clases mayoritarias.

Conceptualmente, el Near Miss funciona según el principio de que los datos deben mantenerse en lugares donde las clases mayoritaria y minoritaria estén muy cerca, ya que estos lugares nos brindan información clave para distinguir las dos clases.3 Estos puntos se conocen generalmente como puntos de datos "difíciles" de aprender. El Near Miss generalmente se realiza en dos pasos:

  • Paso 1: calcular la distancia por pares entre todas las instancias de clase mayoritaria-minoritaria.
  • Paso 2: en función de las distancias calculadas, eliminar las instancias de la clase mayoritaria que estén más alejadas de los puntos minoritarios.

Hay tres variaciones del algoritmo Near Miss que proporcionan una forma más definitiva de seleccionar instancias de clase mayoritaria para eliminar.

  • Versión 1: esta versión mantiene las instancias de clase mayoritaria con la menor distancia media a sus N instancias de clase minoritaria más cercanas. Los datos resultantes pueden estar distribuidos de forma desigual, con algunos puntos de clase mayoritaria cerca de muchos puntos de clase minoritaria y otros cerca de muy pocos, lo que provoca una baja precisión y recuperación.4
Un diagrama de reducción de muestreo: Near Miss 1
  • Versión 2: esta versión de submuestreo Near Miss mantiene las instancias de clase mayoritaria con la distancia promedio más pequeña a sus N instancias de clase minoritaria más lejanas. A diferencia de la primera, esta versión crea una distribución más uniforme de la clase mayoritaria, lo que permite obtener mejores resultados del clasificador.4
Un diagrama de reducción de resolución: Near Miss 2
  • Versión 3: esta versión mantiene las muestras de clase mayoritaria más cercanas para las instancias de clase minoritaria más cercanas a la clase mayoritaria. Se realiza en dos pasos. En primer lugar, se mantienen los M vecinos de clase mayoritaria más cercanos de cada instancia de clase minoritaria. A continuación, de las instancias de clase mayoritarias restantes, se identifican y conservan aquellas con la mayor distancia media. Dado que esta versión mantiene instancias de clase mayoritaria que están cerca de muchas instancias de clase minoritaria, puede tener una alta precisión pero poca recuperación.4
Un diagrama de reducción de resolución: Near Miss 3

Submuestreo de la regla del vecino más cercano condensado

Los vecinos más cercanos condensados (CNN, que no deben confundirse con las siglas de redes neuronales convolucionales) buscan encontrar un subconjunto de un conjunto de datos que pueda utilizarse para el entrenamiento sin pérdida de rendimiento del modelo. Esto se consigue identificando un subconjunto de los datos que se puede utilizar para entrenar un modelo que prediga correctamente todo el conjunto de datos.

El submuestreo CNN se puede dividir en los siguientes pasos:5

  1. Cree un nuevo conjunto de datos, S, que contenga todas las instancias de la clase minoritaria y una única instancia muestreada aleatoriamente de la clase mayoritaria.
  2. Entrene un clasificador 1-NN en el nuevo conjunto de datos S.
  3. Para todos los puntos de datos de clase mayoritaria que no estén en S, utilice el clasificador 1-NN para predecir su etiqueta. Si el clasificador 1-NN predice correctamente la etiqueta, descarte el punto. De lo contrario, añádalo a S.

Al igual que Near Miss, este proceso elimina esencialmente todos los casos de clase mayoritaria alejados del límite de decisión, que, de nuevo, son puntos fáciles de clasificar. También garantiza que todos los datos de nuestro conjunto de datos original puedan predecirse correctamente utilizando sólo los datos de S. De este modo, el conjunto de datos puede reducirse significativamente y, al mismo tiempo, conservar razonablemente bien el límite de decisión.

Un diagrama con 3 gráficos de una muestra de clase mayoritaria, una muestra de clase minoritaria y una muestra de clase mayoritaria con vecinos de clase minoritaria.

Esta imagen muestra un ejemplo de aplicación de vecinos más cercanos condensados utilizando 1 vecino más cercano y 21 vecinos más cercanos a dos conjuntos de datos. Las dos imágenes superiores son anteriores a la aplicación de vecinos más próximos condensados, mientras que las dos inferiores son posteriores. Como puede ver, el límite de decisión está bastante bien conservado.

Tomek Link

La premisa del submuestreo de Tomek Link es reducir el ruido en los datos eliminando puntos cerca del límite de decisión y aumentar la separación de clases. Funciona identificando "enlaces tomek", una agrupación de dos puntos de diferentes clases sin un tercer punto existente que esté más cerca de ninguno de los dos.2

Para todos los enlaces tomek, se suprime el punto dentro de la clase mayoritaria. Al eliminar un punto de clase mayoritaria que está cerca de un punto de clase minoritaria, aumenta la separación de clases. Un inconveniente de este método es la complejidad computacional de calcular todas las distancias por pares entre los puntos de las clases mayoritaria y minoritaria.2 El submuestreo de Tomek Link es más eficaz cuando se combina con otras técnicas.

Vecinos más cercanos editados

El submuestreo de vecinos más cercanos editados (ENN) es similar al submuestreo de Tomek Link, donde el objetivo es eliminar ejemplos cerca del límite de decisión para aumentar la separación de clases. En general, este método elimina puntos de datos que difieren en clase de la mayoría de sus vecinos.2 Esto significa que el proceso elimina los puntos de datos de la clase mayoritaria con una mayoría de sus vecinos más cercanos pertenecientes a la clase minoritaria, y viceversa. La mayoría en este contexto puede definirse libremente: puede significar que al menos un vecino sea de una clase diferente o que la proporción de vecinos de una clase diferente supere un determinado umbral.

El submuestreo de ENN generalmente se realiza con 3 vecinos más cercanos, como se ilustra a continuación.

Un diagrama de submuestreo: Boundry Preservation

Se trata de una estrategia más gruesa porque analiza la vecindad general de los puntos en lugar de un solo vecino, pero es una forma eficaz de eliminar el ruido de los datos. El submuestreo de ENN es más eficaz cuando se combina con otras técnicas.

Investigación reciente

Los desarrollos actuales en el submuestreo giran en torno a las integraciones de deep learning. Esto se ha utilizado en campos como el procesamiento de imágenes y los datos médicos, que implican el uso de redes neuronales para reducir la muestra de los datos.6 Un ejemplo de esto es SOM-US, que utiliza una red neuronal de dos capas.7 En los últimos años, el aprendizaje activo también se ha aplicado al submuestreo para intentar mitigar los efectos de los datos desequilibrados.8 Los experimentos han demostrado que estos modelos funcionan significativamente mejor que las técnicas tradicionales.

La investigación actual sobre el submuestreo también gira en torno a su combinación con otras técnicas para crear técnicas híbridas. Una combinación es reducir y aumentar la muestra de los datos para obtener los beneficios de ambos: SMOTE+Tomek Link, Agglomerative Hierarchical Clustering (AHC) y SPIDER son algunos ejemplos de ellos.9 Las técnicas a nivel de algoritmo también pueden incorporar ideas de las técnicas tradicionales de submuestreo, como con Hard Example Mining, donde el entrenamiento solo se centra en los puntos de datos "más difíciles".2 Todas muestran mejores resultados que el uso de cada técnica por separado.

Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste e implemente IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de nueva generación para desarrolladores de IA. Cree aplicaciones de IA en menos tiempo y con menos datos.

Descubra watsonx.ai
Soluciones de inteligencia artificial

Ponga la IA a trabajar en su negocio con la experiencia líder en IA del sector de IBM y junto a su cartera de soluciones.

Explore las soluciones de IA
Consultoría y servicios de IA

Reinvente las operaciones y flujos de trabajo críticos añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.

Explore los servicios de IA
Dé el siguiente paso

Obtenga acceso único a capacidades que abarcan el ciclo de vida de desarrollo de la IA. Produzca potentes soluciones de IA con interfaces intuitivas, flujos de trabajo y acceso a API y SDK estándar del sector.

Explore watsonx.ai Solicite una demostración en directo
Notas a pie de página

1 Haobo He y Edwardo Garcia, Learning from Imbalanced Data, IEEE, septiembre de 2009, https://ieeexplore.ieee.org/document/5128907 (enlace externo a ibm.com).

2 Kumar Abhishek y Mounir Abdelaziz, Machine learning para datos desequilibrados, Packt, noviembre de 2023

3 Ajinkya More, Encuesta sobre técnicas de remuestreo para mejorar el rendimiento de la clasificación en conjuntos de datos desequilibrados, 22 de agosto de 2016, https://arxiv.org/pdf/1608.06048 (enlace externo a ibm.com).

4 Jianping Zhang and Inderjeet Mani, kNN Approach to Unbalanced Data Distributions: A Case Study involving Information Extraction, 2003, https://www.site.uottawa.ca/~nat/Workshop2003/jzhang.pdf (enlace externo a ibm.com).

5 More, Encuesta de técnicas de remuestreo para mejorar el rendimiento de clasificación en conjuntos de datos no equilibrados, 22 de agosto de 2016, https://arxiv.org/pdf/1608.06048 (enlace externo a ibm.com). Alberto Fernandez, et al. Learning from Imbalanced Data Sets. Springer. 2018.

6 Md Adnan Arefeen, Sumaiya Tabassum Nimi y M. Sohel Rahman. Neural Network-Based Undersampling Techniques. IEEE. 2 de septiembre de 2020. https://ieeexplore.ieee.org/abstract/document/9184909?casa_token=RnLRvnqyiF8AAAAA:iyxPWT06HX6a9g8X1nhShrllo_ht9ZM1cqHMWjET5wOopeR5dqizBF29cSSmFMRPo9V1D7XBIwg (enlace externo a ibm.com).

7 Ajay Kumar, SOM-US: A Novel Under-Sampling Technique for Handling Class Imbalance Problem, hrcak, 30 de enero de 2024, https://hrcak.srce.hr/clanak/454006 (enlace externo a ibm.com).

8 Wonjae Lee y Kangwon Seo, Downsampling for Binary Classification with a Highly Imbalanced Dataset Using Active Learning, Science Direct, 26 de abril de 2022, https://www.sciencedirect.com/science/article/pii/S2214579622000089 (enlace externo a ibm.com).

9 Alberto Fernandez, et al. Learning from Imbalanced Data Sets. Springer. 2018.