Métodos para recopilar conjuntos de algoritmos de aprendizaje automático: apilamiento, ensacado, refuerzo

¿Qué son los conjuntos de modelos?

Como sugiere el nombre, un conjunto son solo unos pocos algoritmos de aprendizaje automático juntos. Este enfoque se utiliza a menudo para mejorar las "cualidades positivas" de los algoritmos individuales, que por sí mismos pueden funcionar mal, pero en un grupo, un conjunto, dan un buen resultado. Cuando se utilizan métodos de conjunto, los algoritmos aprenden simultáneamente y pueden corregir los errores de los demás. Ejemplos típicos de métodos destinados a unir a estudiantes "débiles" en un grupo de fuertes son (Fig. 1):





  • Staking . Se pueden considerar modelos individuales diferentes. Existe un metamodelo, que toma modelos básicos como entrada, y la previsión final es la salida.





  • Harpillera. Se consideran modelos homogéneos, que se entrenan de forma independiente y en paralelo, y luego sus resultados simplemente se promedian. Un representante sorprendente de este método es el bosque aleatorio.





  • Impulso. Consideramos modelos homogéneos que se entrenan secuencialmente, y el modelo posterior debe corregir los errores del anterior. Por supuesto, el aumento de gradiente me viene a la mente como ejemplo aquí.





Foto 1
Foto 1

Estos tres métodos se analizarán con más detalle a continuación.





Replanteo

. . sklearn.ensemble python AdaBoost, Bagging, GradientBoosting, Stacking ( ).





: . , (SVM), k- (KNN) . . ( ), - .





(. 2):





  • k ( , -).





  • , k- , , k-1 . .





  • .





  • .





    Imagen 2
    2

:













, .





, , . , , , .





, , , . , , . n , n - . , ~ 0.632*n . , m m .





. , .





, , (. 3). ai .





figura 3
3

(. 4):





Figura 4
4





() , , - . , , . , , . , , (. 5). .





Figura 5
5

:













, , . , - , , . : - .





, . , , .





Figura 6
6

: AdaBoost. - , (. 6).





. :





  • , .









  • ,





  • , ,





- AdaBoost, , , . , , .





:





, AdaBoost-





, AdaBoost-





Por lo tanto, vimos que para mejorar la calidad de funcionamiento de los modelos individuales de aprendizaje automático, existen varias técnicas para combinarlos en conjuntos. Estas técnicas ya están integradas en los productos de software y puede utilizarlas para mejorar su solución. Sin embargo, desde mi punto de vista, a la hora de resolver un problema, no debes abordarlos inmediatamente. Es mejor probar primero un modelo simple y separado, comprender cómo funciona con datos específicos y luego usar conjuntos.








All Articles