¿Qué es bagging?

23 de septiembre de 2021

¿Qué es bagging?

Bagging, también conocido como Bootstrapping, es el método de aprendizaje por conjuntos que se emplea comúnmente para reducir la varianza dentro de un conjunto de datos ruidoso.

En el bagging, se selecciona una muestra aleatoria de datos en un conjunto de entrenamiento con reemplazo, lo que significa que los puntos de datos individuales se pueden elegir más de una vez. Después de generar varias muestras de datos, estos modelos débiles se entrenan de manera independiente. Dependiendo del tipo de tarea (regresión o clasificación, por ejemplo), el promedio o la mayoría de esas predicciones arrojan una estimación más precisa.

Nótese que el bosque aleatorio es un algoritmo que se considera una extensión del método bagging, ya que utiliza tanto el bagging como la aleatoriedad de características para crear un bosque de árboles de decisión no correlacionados.

Aprendizaje en conjunto

El aprendizaje conjunto da crédito a la idea de la "sabiduría de las multitudes", que sugiere que la toma de decisiones de un grupo más amplio de personas suele ser mejor que la de un experto individual. Del mismo modo, el aprendizaje conjunto se refiere a un grupo de aprendices base, o modelos, que trabajan colectivamente para lograr una mejor predicción final.

Un modelo único, también conocido como modelo básico o de aprendizaje débil, puede no funcionar bien individualmente debido al alta varianza o al alto sesgo. Sin embargo, cuando se agregan aprendices débiles, pueden formar un aprendiz fuerte, ya que su combinación reduce el sesgo o la varianza, lo que produce un mejor rendimiento del modelo.

Los métodos de conjunto suelen emplear árboles de decisión a modo de ilustración. Este algoritmo puede ser propenso a sobreajuste, mostrando una alta varianza y un sesgo bajo, cuando no se podó. Por el contrario, también puede prestarse a un ajuste insuficiente, con baja varianza y alto sesgo, cuando es muy pequeño, como un muñón de decisión, que es un decision tree de un nivel.

Recuerde que cuando un algoritmo se ajusta en exceso o en defecto a su conjunto de entrenamiento, no puede generalizar bien nuevos conjuntos de datos, por lo que los métodos de conjunto se emplean para contrarrestar este comportamiento y permitir la generalización del modelo a nuevos conjuntos de datos. Aunque los decision trees pueden presentar una varianza o un sesgo elevados, cabe señalar que no es la única técnica de modelado que aprovecha el aprendizaje por conjuntos para encontrar el "punto óptimo" dentro del equilibrio entre sesgo y varianza.

Bagging vs. boosting

El bagging y boosting son dos tipos principales de métodos de aprendizaje por conjuntos. Como se destaca en este estudio , la principal diferencia entre estos métodos de aprendizaje es cómo se entrenan.

En bagging, los aprendices débiles se capacitan en paralelo, pero en boosting, aprenden secuencialmente. Esto significa que se construye una serie de modelos y con cada nueva iteración del modelo, se incrementan los pesos de los datos mal clasificados en el modelo anterior.

Esta redistribución de pesos ayuda al algoritmo a identificar los parámetros en los que debe centrarse para mejorar su rendimiento. AdaBoost, que significa “algoritmo de refuerzo adaptativo”, es uno de los algoritmos de refuerzo más populares, ya que fue uno de los primeros de su tipo. Otros tipos de algoritmos de impulso incluyen XGBoost, GradientBoost y BrownBoost.

Otra diferencia en la que se diferencian el bagging y el boosting son los escenarios en los que se utilizan. Por ejemplo, los métodos de bagging se utilizan típicamente para aprendices débiles que exhiben alta varianza y sesgo bajo, mientras que los métodos de boosting se utilizan cuando se observa baja varianza y sesgo alto.

Diseño 3D de pelotas rodando en una pista

Las últimas novedades e insights sobre IA

Descubra insights y noticias de expertos sobre IA, la nube y mucho más en el boletín semanal Think. 

Cómo funciona el bagging

En 1996, Leo Breimanintrodujo el algoritmo de bagging, que consta de tres pasos básicos:

  1. Bootstrapping: el bagging aprovecha una técnica de muestreo de bootstrapping para crear muestras diversas. Este método de remuestreo genera diferentes subconjuntos de los datos de entrenamiento. Esto se hace seleccionando puntos de datos al azar y con reemplazo. Esto significa que, cada vez que selecciona un punto de datos del conjunto de datos de entrenamiento, puede seleccionar la misma instancia varias veces. Como resultado, un valor o instancia se repite dos veces (o más) en una muestra.

  2. Entrenamiento paralelo: estas muestras de bootstrapping se entrenan de forma independiente y en paralelo entre sí por medio de aprendices débiles o básicos.

  3. Agregación: Finalmente, dependiendo de la tarea (es decir, regression o clasificación), se toma un promedio o la mayoría de las predicciones para realizar una estimación más precisa. En el caso de la regression, se toma un promedio de todos los resultados predichos por los clasificadores individuales; esto se conoce como votación blanda. Para problemas de clasificación, se acepta la clase con la mayoría de votos; esto se conoce como voto duro o voto mayoritario.
Mixture of Experts | 25 de abril, episodio 52

Decodificación de 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 revuelo de la IA para ofrecerle las últimas noticias e insights al respecto.

Beneficios y desafíos del bagging

Hay varios beneficios y retos clave que presenta el método bagging cuando se emplea para problemas de clasificación o regression. Los principales beneficios del bagging son:

  • Facilidad de implementación: las bibliotecas de Python, como scikit-learn (también conocida como sklearn), facilitan la combinación de predicciones de aprendices básicos o estimadores para mejorar el rendimiento del modelo. Su documentaciónestablece los módulos disponibles que puede utilizar en la optimización de su modelo.

  • Reducción de la varianza: el bagging puede reducir la varianza dentro de un algoritmo de aprendizaje. Esto es particularmente útil con datos de alta dimensión, ya que los missing values pueden generar una mayor varianza, haciéndolos más propensos al sobreajuste y evitando una generalización precisa a nuevos conjuntos de datos.

Los desafíos clave del bagging incluyen:

  • Pérdida de interpretabilidad: es difícil extraer insights empresariales muy precisos a través del bagging debido al promedio involucrado en las predicciones. Si bien la salida es más precisa que cualquier punto de datos individual, un conjunto de datos más preciso o completo también podría producir más precisión dentro de un solo modelo de clasificación o regresión.

  • Computacionalmente costoso: el bagging se ralentiza y se vuelve más intensivo a medida que aumenta el número de iteraciones. Por lo tanto, no es adecuado para aplicaciones en tiempo real. Los sistemas en clúster o una gran cantidad de núcleos de procesamiento son ideales para crear rápidamente conjuntos empaquetados en grandes conjuntos de prueba.

  • Menos flexible: como técnica, el bagging funciona particularmente bien con algoritmos que son menos estables. Uno que sea más estable o esté sujeto a grandes cantidades de sesgo no proporciona tanto beneficio ya que hay menos variación dentro del conjunto de datos del modelo. Como se señala en Hands-On Guide to Machine Learning, "hacer bagging de un modelo de regresión lineal devolverá efectivamente las predicciones originales para b lo suficientemente grande".

Aplicaciones de bagging

La técnica de bagging se emplea en muchas industrias, ya que ofrece insights tanto para el valor del mundo real como para perspectivas interesantes, como en los GRAMMY Debates with Watson. Los casos de uso clave incluyen:

  • Atención médica: el bagging se ha utilizado para formar predicciones de datos médicos. Por ejemplo, una investigaciónmuestra que los métodos de conjunto se han utilizado para una serie de problemas de bioinformática, como la selección de genes o proteínas para identificar un rasgo específico de interés. Más específicamente, esta investigaciónprofundiza en su uso para predecir la aparición de diabetes en función de varios predictores de riesgo.

  • TI: el bagging también puede mejorar la precisión y exactitud en los sistemas de TI, como los sistemas de detección de intrusiones en la red. Mientras tanto, esta investigaciónanaliza cómo el bagging puede mejorar la precisión de la detección de intrusiones en la red y reducir las tasas de falsos positivos.

  • Medio ambiente: dentro del campo de la teledetección se han aplicado métodos de ensamble, como bagging. Más específicamente, esta investigación muestra cómo se ha utilizado para mapear los tipos de humedales dentro de un paisaje costero.

  • Finanzas: el bagging también se empleó con modelos de aprendizaje profundo en la industria financiera para automatizar tareas críticas, como la detección de fraudes, evaluaciones de riesgo crediticio y problemas de precios de opciones. Esta investigación demuestra cómo se ha aprovechado el embolsado, entre otras técnicas de machine learning, para evaluar el riesgo de impago de préstamos. Este estudio destaca cómo el bagging ayuda a minimizar el riesgo al prevenir el fraude con tarjetas de crédito dentro de las instituciones bancarias y financieras.
Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.

Descubra watsonx.ai
Soluciones de inteligencia artificial

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

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

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

Conozca los servicios de IA
Dé el siguiente paso

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

Explore watsonx.ai Reserve una demostración en vivo