Ensacado, refuerzo y apilamiento en el aprendizaje automático


245

¿Cuáles son las similitudes y diferencias entre estos 3 métodos:

  • Harpillera,
  • Impulso
  • ¿Apilado?

Cuál es el mejor? ¿Y por qué?

¿Me puede dar un ejemplo para cada uno?


3
para una referencia de libro de texto, recomiendo: "Métodos de conjunto: fundamentos y algoritmos" por Zhou, Zhi-Hua
Vadim Smolyakov

1
Vea aquí una pregunta relacionada .
Ricardo Cruz

Respuestas:


252

Los tres son los llamados "meta-algoritmos": enfoques para combinar varias técnicas de aprendizaje automático en un modelo predictivo para disminuir la varianza ( embolsado ), sesgo ( aumento ) o mejorar la fuerza predictiva ( conjunto de alias de apilamiento ).

Cada algoritmo consta de dos pasos:

  1. Producir una distribución de modelos ML simples en subconjuntos de datos originales.

  2. Combinando la distribución en un modelo "agregado".

Aquí hay una breve descripción de los tres métodos:

  1. Embolsado (significa B ootstrap Agg regat ing ) es una forma de disminuir la varianza de su predicción mediante la generación de datos adicionales para la formación de su conjunto de datos original usando combinaciones con repeticiones para producir conjuntos múltiples de la misma cardinalidad / tamaño que sus datos originales. Al aumentar el tamaño de su conjunto de entrenamiento, no puede mejorar la fuerza predictiva del modelo, sino simplemente disminuir la varianza, ajustando estrechamente la predicción al resultado esperado.

  2. El impulso es un enfoque de dos pasos, en el que primero se utilizan subconjuntos de datos originales para producir una serie de modelos de rendimiento promedio y luego "aumenta" su rendimiento combinándolos mediante una función de costo particular (= voto mayoritario). A diferencia del embolsado, en el refuerzo clásico, la creación del subconjunto no es aleatoria y depende del rendimiento de los modelos anteriores: cada nuevo subconjunto contiene los elementos que (probablemente serían) clasificados erróneamente por los modelos anteriores.

  3. El apilamiento es similar al aumento: también aplica varios modelos a sus datos originales. Sin embargo, la diferencia aquí es que no solo tiene una fórmula empírica para su función de peso, sino que introduce un meta-nivel y usa otro modelo / enfoque para estimar la entrada junto con las salidas de cada modelo para estimar los pesos o , en otras palabras, para determinar qué modelos funcionan bien y qué mal dados estos datos de entrada.

Aquí hay una tabla de comparación:

Tabla comparativa

Como puede ver, todos estos son enfoques diferentes para combinar varios modelos en uno mejor, y no hay un ganador único aquí: todo depende de su dominio y de lo que vaya a hacer. Todavía puede tratar el apilamiento como una especie de aumento de los avances , sin embargo, la dificultad de encontrar un buen enfoque para su meta-nivel dificulta la aplicación de este enfoque en la práctica.

Breves ejemplos de cada uno:

  1. Embolsado : datos de ozono .
  2. Impulso : se utiliza para mejorar la precisión del reconocimiento óptico de caracteres (OCR).
  3. Apilamiento : se utiliza en la clasificación de microarrays de cáncer en medicina.

8
Parece que su definición de refuerzo es diferente de la de wiki (para la que se vinculó) o de este documento . Ambos dicen que al impulsar el siguiente clasificador se utilizan los resultados de los previamente entrenados, pero usted no lo menciona. El método que describe en otra parte se asemeja a algunas de las técnicas de promedio de votación / modelo.
Alexander Rodin

2
@ a-rodin: Gracias por señalar este aspecto importante, reescribí completamente esta sección para reflejarlo mejor. En cuanto a su segundo comentario, entiendo que impulsar también es un tipo de votación / promedio, ¿o lo entendí mal?
Alexander Galkin

@AlexanderGalkin Tenía en mente el aumento de gradiente en el momento de comentar: no parece una votación, sino una técnica de aproximación de función iterativa. Sin embargo, por ejemplo, AdaBoost se parece más a votar, así que no discutiré sobre eso.
Alexander Rodin

3
En su primera oración usted dice que aumentar aumenta el sesgo, pero en la tabla de comparación dice que aumenta la fuerza predictiva. ¿Son estos ambos verdad?
Ben Lindsay

68

Ensacado :

  1. Conjunto paralelo : cada modelo se construye independientemente

  2. apunta a disminuir la varianza , no el sesgo

  3. Adecuado para modelos de alta desviación y bajo sesgo (modelos complejos)

  4. Un ejemplo de un método basado en árboles es el bosque aleatorio , que desarrolla árboles completamente desarrollados (tenga en cuenta que RF modifica el procedimiento de crecimiento para reducir la correlación entre árboles)

Impulso :

  1. conjunto secuencial : intente agregar nuevos modelos que funcionen bien donde faltan modelos anteriores

  2. pretenden disminuir el sesgo , no la varianza

  3. adecuado para modelos de baja polarización y alto sesgo

  4. un ejemplo de un método basado en un árbol es el aumento de gradiente


55
Comentar cada uno de los puntos para responder por qué es así y cómo se logra sería una gran mejora en su respuesta.
Tim

2
¿Puedes compartir algún documento / enlace que explique que aumentar la variación varía y cómo lo hace? Solo quiero entender con más profundidad
GeorgeOfTheRF

1
Gracias Tim, agregaré algunos comentarios más tarde. @ML_Pro, a partir del procedimiento de aumento (por ejemplo, la página 23 de cs.cornell.edu/courses/cs578/2005fa/… ), es comprensible que el aumento pueda reducir el sesgo.
yuqian

43

Solo para explicar un poco la respuesta de Yuqian. La idea detrás del ensacado es que cuando se sobreajusta con un método de regresión no paramétrico (generalmente árboles de regresión o clasificación, pero puede ser casi cualquier método no paramétrico), tiende a ir a la parte de sesgo de alta varianza, sin sesgo (o bajo) / equilibrio de varianza. Esto se debe a que un modelo de sobreajuste es muy flexible (sesgo muy bajo en muchas muestras de la misma población, si están disponibles) pero tiene una gran variabilidad (si recojo una muestra y la sobreajuste, y usted recolecta una muestra y la sobreajusta, nuestro los resultados serán diferentes porque la regresión no paramétrica rastrea el ruido en los datos). ¿Qué podemos hacer? Podemos tomar muchas muestras (de bootstrapping), cada una sobreajustada, y promediarlas juntas. Esto debería conducir al mismo sesgo (bajo) pero cancelar parte de la varianza,

El refuerzo de gradiente en su corazón funciona con regresiones no paramétricas BAJADAS, que son demasiado simples y, por lo tanto, no son lo suficientemente flexibles como para describir la relación real en los datos (es decir, sesgadas) pero, debido a que están mal ajustadas, tienen una varianza baja (tendería para obtener el mismo resultado si recopila nuevos conjuntos de datos). ¿Cómo corriges esto? Básicamente, si no está en forma, los RESIDUALES de su modelo aún contienen una estructura útil (información sobre la población), por lo que aumenta el árbol que tiene (o cualquier predictor no paramétrico) con un árbol construido sobre los residuos. Esto debería ser más flexible que el árbol original. Repetidamente genera más y más árboles, cada uno en el paso k aumentado por un árbol ponderado basado en un árbol ajustado a los residuos del paso k-1. Uno de estos árboles debería ser óptimo, así que terminas ponderando todos estos árboles juntos o seleccionando uno que parece ser el mejor. Por lo tanto, el aumento de gradiente es una forma de construir un montón de árboles candidatos más flexibles.

Al igual que todos los enfoques de regresión o clasificación no paramétricos, a veces el embolsado o el refuerzo funcionan muy bien, a veces uno u otro enfoque es mediocre, y a veces uno u otro enfoque (o ambos) se estrellarán y arderán.

Además, ambas técnicas se pueden aplicar a enfoques de regresión distintos de los árboles, pero se asocian más comúnmente con los árboles, tal vez porque es difícil establecer parámetros para evitar el ajuste o el sobreajuste.


3
¡+1 para el argumento overfit = varianza, underfit = sesgo! Una razón para usar los árboles de decisión es que son estructuralmente inestables, por lo tanto, se benefician más de ligeros cambios de condiciones. ( abbottanalytics.com/assets/pdf/… )
Mark Horvath


3

Para resumir, Bagging y Boosting se usan normalmente dentro de un algoritmo, mientras que Stacking generalmente se usa para resumir varios resultados de diferentes algoritmos.

  • Ensacado : subconjuntos de características y muestras de Bootstrap para obtener varias predicciones y promediar (u otras formas) los resultados, por ejemplo Random Forest, que eliminan la variación y no tienen un problema de sobreajuste.
  • Impulso : la diferencia con Bagging es que el modelo posterior está tratando de aprender el error cometido por el anterior, por ejemplo , GBMy XGBoostque elimina la variación pero tiene un problema de sobreajuste.
  • Apilamiento : Normalmente se usa en competiciones, cuando uno usa múltiples algoritmos para entrenar en el mismo conjunto de datos y promediar (máximo, mínimo u otras combinaciones) el resultado para obtener una mayor precisión de predicción.

2

Tanto el embolsado como el refuerzo utilizan un solo algoritmo de aprendizaje para todos los pasos; pero usan diferentes métodos para manejar muestras de entrenamiento. ambos son métodos de aprendizaje conjunto que combinan decisiones de múltiples modelos.
Empaquetamiento :
1. remuestrea datos de entrenamiento para obtener M subconjuntos (bootstrapping);
2. entrena a los clasificadores M (mismo algoritmo) basados ​​en conjuntos de datos M (muestras diferentes);
3. el clasificador final combina M salidas mediante votación;
las muestras pesan igualmente;
los clasificadores pesan igualmente;
disminuye el error al disminuir la varianza
Impulso : aquí enfóquese en el algoritmo adaboost
1. comience con el mismo peso para todas las muestras en la primera ronda;
2. en las siguientes rondas M-1, aumente los pesos de las muestras que están mal clasificadas en la última ronda, disminuya los pesos de las muestras clasificadas correctamente en la última ronda
3. usando una votación ponderada, el clasificador final combina múltiples clasificadores de rondas anteriores y otorga pesos más grandes a clasificadores con menos clasificaciones erróneas.
pesas paso a paso muestras; ponderaciones para cada ronda en función de los resultados de las
muestras de repesado de la última ronda (refuerzo) en lugar de remuestreo (embolsado).


0

El ensacado y el refuerzo tienden a usar muchos modelos homogéneos.

El apilamiento combina resultados de tipos de modelos heterogéneos.

Como ningún tipo de modelo individual tiende a ser el que mejor se adapta a cualquier distribución completa, puede ver por qué esto puede aumentar el poder predictivo.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.