Comment les méthodes d'ensemble surpassent-elles toutes leurs composantes?

16

Je suis un peu confus au sujet de l'apprentissage d'ensemble. En bref, il exécute k modèles et obtient la moyenne de ces k modèles. Comment peut-on garantir que la moyenne des modèles k serait meilleure que n'importe laquelle des modèles en soi? Je comprends que le biais est "étalé" ou "moyenné". Cependant, que se passe-t-il s'il y a deux modèles dans l'ensemble (c'est-à-dire k = 2) et l'un des deux est pire que l'autre - l'ensemble ne serait-il pas pire que le meilleur modèle?

user1691278
la source
ce fil m'intéresse, mais a soulevé plus de questions qu'il n'en a répondu. Pourrions-nous tous utiliser un peu plus de pour définir plus rigoureusement tous ces mots que nous utilisons? LUNETEX
Taylor

Réponses:

23

Ce n'est pas garanti. Comme vous le dites, l'ensemble pourrait être pire que les modèles individuels. Par exemple, prendre la moyenne du vrai modèle et d'un mauvais modèle donnerait un assez mauvais modèle.

La moyenne de k modèles ne sera une amélioration que si les modèles sont (quelque peu) indépendants les uns des autres. Par exemple, dans l'ensachage, chaque modèle est construit à partir d'un sous-ensemble aléatoire des données, donc une certaine indépendance est intégrée. Ou des modèles peuvent être construits en utilisant différentes combinaisons de fonctionnalités, puis combinés par moyenne.

De plus, la moyenne des modèles ne fonctionne bien que lorsque les modèles individuels présentent une variance élevée. C'est pourquoi une forêt aléatoire est construite à l'aide de très grands arbres. D'un autre côté, la moyenne d'un tas de modèles de régression linéaire vous donne toujours un modèle linéaire, qui n'est probablement pas meilleur que les modèles avec lesquels vous avez commencé (essayez-le!)

D'autres méthodes d'ensemble, telles que le boosting et le blending, fonctionnent en prenant les sorties de modèles individuels, ainsi que les données d'apprentissage, comme entrées dans un modèle plus grand. Dans ce cas, il n'est pas surprenant qu'ils fonctionnent souvent mieux que les modèles individuels, car ils sont en fait plus compliqués et utilisent toujours les données de formation.

Flet
la source
Ne voulez-vous pas dire que la RF utilise un grand nombre d'arbres pour obtenir une grande variance? Je m'attends à ce qu'à mesure que les arbres grandissent, ils s'étendent sur la plupart des caractéristiques et l'écart entre les modèles diminue.
Itamar
Non, @Flounderer est correct. Les arbres de décision sont appelés modèles instables. Si vous modifiez légèrement les données, vous obtenez des arbres très différents. Les forêts aléatoires sont des moyens de les stabiliser. Si vous entraînez deux RF avec des échantillons de données légèrement différents, ils produiront des modèles similaires.
Ricardo Cruz du
"La moyenne d'un tas de modèles de régression linéaire vous donne toujours un modèle linéaire" <- que voulez-vous dire par moyenne ici? De quelle variation parlez-vous également?
Taylor
6

Dans votre exemple, votre ensemble de deux modèles pourrait être pire qu'un seul modèle lui-même. Mais votre exemple est artificiel, nous en construisons généralement plus de deux dans notre ensemble.

Il n'y a aucune garantie absolue qu'un modèle d'ensemble fonctionne mieux qu'un modèle individuel, mais si vous en créez plusieurs et que votre classificateur individuel est faible . Votre performance globale devrait être meilleure qu'un modèle individuel.

Dans l'apprentissage automatique, la formation de plusieurs modèles surpasse généralement la formation d'un seul modèle. C'est parce que vous avez plus de paramètres à régler.

SmallChess
la source
2

Je veux juste jeter quelque chose qui est rarement discuté dans ce contexte, et cela devrait vous donner matière à réflexion.

Ensemble travaille également avec les humains!

Il a été observé que la moyenne des prédictions humaines donne de meilleures prédictions que toute prédiction individuelle. Ceci est connu comme la sagesse de la foule.

Maintenant, vous pourriez faire valoir que c'est parce que certaines personnes ont des informations différentes, vous effectuez donc une moyenne des informations. Mais non, cela est vrai même pour des tâches telles que deviner le nombre de grains dans un bocal.

Il y a beaucoup de livres et d'expériences écrits à ce sujet, et le phénomène intrigue toujours les chercheurs.

Cela étant dit, comme l'a souligné @Flounderer, les gains réels proviennent de modèles dits instables tels que les arbres de décision, où chaque observation a généralement un impact sur la frontière de décision. Les plus stables comme les SVM ne gagnent pas autant car le rééchantillonnage n'affecte généralement pas beaucoup les vecteurs de support.

Ricardo Cruz
la source
1
C'est pourquoi j'ai toujours essayé d'embaucher des gens qui n'étaient pas comme moi. De bons conseils pour constituer des équipes flexibles et efficaces.
Matthew Drury
0

Il est en fait tout à fait possible que des modèles uniques soient meilleurs que des ensembles.

Même s'il n'y a aucun point dans vos données où certains de vos modèles surestiment et certains sous-estiment (dans ce cas, vous pourriez espérer que l'erreur moyenne sera annulée), certaines des fonctions de perte les plus populaires (comme la perte quadratique moyenne) sont pénalisantes un seul grand écart plus qu'un certain nombre d'écarts modérés. Si les modèles que vous calculez en moyenne sont quelque peu différents, vous pouvez espérer que la variance devient "moins" car la moyenne tue les écarts exceptionnels. Cela s'explique probablement par cela .

chanteur
la source
0

Oui, cela pourrait être le cas, mais l'idée de l'assemblage est de former des modèles plus simples pour éviter un ajustement excessif tout en capturant différentes caractéristiques des données de différents ensembles. Bien sûr, il n'y a aucune garantie qu'un modèle d'ensemble surpasse un modèle unique lorsqu'il est entraîné avec les mêmes données d'entraînement. La surperformance peut être obtenue en combinant des modèles d'ensemble et en boostant (par exemple AdaBoost). En boostant, vous entraînez chaque modèle d'ensemle suivant en attribuant des poids à chaque point de données et en les mettant à jour en fonction de l'erreur. Considérez-le donc comme un algorithme de descente de coordonnées, il permet à l'erreur d'apprentissage de diminuer à chaque itération tout en maintenant une complexité moyenne constante du modèle. Dans l'ensemble, cela a un impact sur les performances. Il y a beaucoup de

Kerem T
la source