Quand utiliser plusieurs modèles pour la prédiction?

13

C'est une question assez générale:

J'ai généralement constaté que l'utilisation de plusieurs modèles différents surpasse un modèle lorsque vous essayez de prédire une série temporelle hors échantillon. Existe-t-il de bons documents démontrant que la combinaison de modèles surclassera un seul modèle? Existe-t-il des meilleures pratiques concernant la combinaison de plusieurs modèles?

Quelques références:

Shane
la source
j'ai ajouté ce que je pense être une assez bonne source (malheureusement un manuel) avec annotation, à la lumière de votre commentaire / question ci-dessous ma réponse. J'ai modifié ma réponse d'origine, elle apparaît donc à la fin.
doug

Réponses:

8

Parfois, ce type de modèles est appelé un ensemble. Par exemple, cette page donne un bon aperçu de son fonctionnement. Les références qui y sont mentionnées sont également très utiles.

Peter Smit
la source
3
En effet, le mélange est l'une des techniques d'ensemble possibles. En particulier, il y en a deux lorsque vous combinez le même type de classificateur, le boosting (comme Adaboost) et l'ensachage (comme Random Forest), et le mélange, où vous combinez différents classificateurs (à propos de la question de Shane).
3
Pour le mélange, cet article du concours netflix mérite d'être lu: the-ensemble.com/content/feature-weighted-linear-stacking .
Shane
2
IL est amusant que le météorologue utilise également le mot «ensemble» mais pas pour une combinaison: ils l'utilisent pour un ensemble de prédiction (comme un scénario) obtenu par perturbation des conditions initiales du modèle numérique.
robin girard
1
@mbq en fait, ils s'appellent prévisionnistes et ils utilisent beaucoup les statistiques ...
Robin Girard
1
@robin Je sais, c'est juste pourquoi on l'appelle "ensemble", pas un ensemble ou quelque chose comme ça.
10

La dernière année du concours du prix NetFlix (2009) m'a semblé avoir radicalement changé la présomption générale à l'échelle de la communauté contre la combinaison de plusieurs algorithmes d'apprentissage.

Par exemple, ma formation formelle (cours universitaires) et plus tard la supervision / le mentorat sur le tas nous ont appris à éviter la combinaison d'algorithmes à moins que nous n'ayons une raison explicite de le faire - et "à améliorer la résolution de mon algorithme actuel", n'était-ce pas? t vraiment considéré comme une bonne raison. (D'autres peuvent avoir une expérience différente - bien sûr, j'infère une vision à l'échelle de la communauté basée uniquement sur ma propre expérience, bien que mon expérience dans le codage d'algorithmes ML peu performants soit substantielle.)

Pourtant, il y avait quelques "modèles" dans lesquels la combinaison d'algorithmes d'une manière ou d'une autre était acceptée, et améliorait en fait les performances. Pour moi, l'exemple le plus fréquent impliquait un algorithme ML configuré en mode machine (attribuant une étiquette de classe à chaque point de données) et dans lequel il y avait plus de deux classes (généralement beaucoup plus). Lorsque, par exemple, en utilisant un algorithme d'apprentissage supervisé pour résoudre quatre classes, nous verrions une excellente séparation, sauf pour disons la classe III par rapport à la classe IV. Ainsi, sur ces six limites de décision, une seule s'est résolue en dessous du seuil requis. En particulier lorsque les classes III et IV représentaient ensemble un petit pourcentage des données, l'ajout d'un algorithme supplémentaire optimisé uniquement sur la résolution de ces deux classes, était une solution assez courante à ce type de problème analytique. (Habituellement, cet «angle mort» était une limitation inhérente à l'algorithme principal - par exemple, il s'agissait d'un classificateur linéaire et la limite de décision III / IV n'était pas linéaire.

En d'autres termes, lorsque nous avions un algorithme fiable adapté à l'environnement de traitement (qui diffusait généralement des données en continu) et qui fonctionnait dans la spécification, à l'exception d'un seul angle mort qui l'a empêché de résoudre deux (ou plus) classes qui représentaient une petite fraction des données, alors il était toujours préférable de «boulonner» un autre algorithme spécialisé pour saisir ce qui manquait systématiquement à l'algorithme principal.

Enfin, sur ce sujet, je voudrais recommander fortement le chapitre 17, Combiner plusieurs apprenants , dans Introduction to Machine Learning , 2d, par Ethem Alpaydin, MIT Press, 2010. Notez qu'il s'agit de la deuxième édition publiée il y a quelques mois; la première édition a été publiée en 2004 et je doute qu'elle ait la même couverture de ce sujet. (En fait, je recommande l'intégralité du texte, mais ce chapitre en particulier car il se rapporte à la question de Shane.)

En 25 pages, l'auteur résume probablement tous les schémas de combinaison d'algorithmes ML dont l'utilité a été démontrée dans la littérature ou la pratique académique - par exemple, ensachage, boosting, mélange d'experts, généralisation empilée, cascade, vote, correction d'erreurs, .. ..

doug
la source
ce sont d'excellentes informations. Connaissez-vous des articles qui couvrent cela?
Shane
(Je n'ai pas reçu de notification de SA de votre commentaire) Eh bien, je ne faisais référence à aucun article lorsque j'ai écrit cela, plutôt en résumant simplement de manière informelle des éléments de mon expérience pertinents pour votre question. Je vais parcourir mes fichiers et voir ce que j'ai qui est pertinent.
doug
4

Suivi de la réponse de Peter sur les méthodes d'ensemble:

Shane
la source
2

L'exemple le plus spectaculaire est le défi Netflix , qui a vraiment accru la popularité du mélange.


la source
1

Voici une réponse légèrement hors champ, qui ne touche que la partie «meilleures pratiques concernant la combinaison de plusieurs modèles» de votre question. C'est fondamentalement exactement ma thèse de spécialisation, sauf que je traite de modèles complexes, hautement non linéaires qui présentent des modèles de chaos et de bruit - climat. Il est peu probable que cela soit largement applicable à de nombreux domaines, mais pourrait être utile en écologie ou en économétrie.

Jusqu'à une date relativement récente dans la communauté de la modélisation du climat, les modèles étaient en grande partie simplement brisés ensemble dans une moyenne non pondérée (généralement après correction du biais impliquant la suppression de la moyenne du modèle pour une partie ou la totalité de la période d'échantillonnage). C'est essentiellement ce que le GIEC a fait pour le 4e rapport d'évaluation (4AR) et les rapports précédents.

Ceci est plus ou moins un exemple de l' école " vérité plus erreur " de combinaison d'ensemble, où l'on suppose tacitement ou explicitement que les séries d'observation (par exemple la température globale, les précipitations locales, etc.) sont vraies, et que si vous prenez suffisamment d'échantillons (par exemple, les exécutions de modèle), le bruit dans les exécutions de modèle sera annulé (voir (1)).

Plus récemment, des méthodes de combinaison de modèles basés sur la pondération des performances ont été utilisées. Étant donné que les modèles climatiques sont si bruyants et comportent tant de variables et de paramètres, les seuls moyens d'évaluer les performances (que je connaisse) sont de prendre la covariance ou de prendre le MSE entre la sortie du modèle et la série chronologique observée. Les modèles peuvent ensuite être combinés en pondérant la moyenne en fonction de cette mesure. Il y a un bon aperçu de cela dans (2).

Une hypothèse derrière cette méthode de combinaison des simulations est l' hypothèse que tous les modèles sont raisonnablement indépendants - si certains étaient fortement dépendants, ils biaiseraient la moyenne. Cette hypothèse était raisonnablement juste pour l'ensemble de données utilisé pour 4AR ( CMIP3 , car cet ensemble de données était composé de quelques exécutions de modèles provenant de nombreux groupes de modélisation (d'autre part, le code est partagé dans la communauté de modélisation, il peut donc toujours y avoir une certaine interdépendance). Pour un regard intéressant à ce sujet, voir (3)) L'ensemble de données pour le prochain rapport d'évaluation, CMIP5, n'a pas cet attribut quelque peu fortuit - certaines équipes de modélisation soumettront quelques exécutions, tandis que d'autres en soumettront des centaines. Des ensembles provenant d'équipes différentes peuvent être produits par péturbation de conditions initiales, ou par des modifications de la physique du modèle et de la paramétrisation. En outre, ce super ensemble n'est pas échantillonné de manière systématique - c'est juste celui qui apporte les données qui est accepté (dans des limites raisonnables). Ceci est connu dans le domaine comme un « ensemble d'opportunités ». Il y a de fortes chances que l'utilisation d'une moyenne non pondérée sur un tel ensemble vous donne un biais majeur vers les modèles avec plus de séries (car même s'il y a des centaines de séries, il y a probablement un nombre beaucoup plus petit de séries vraiment indépendantes).

Mon superviseur a actuellement un document en revue décrivant un processus de combinaison de modèles impliquant une pondération de performance ET d' indépendance . Un résumé du document de conférence est disponible (4), je publierai le lien vers le document lorsqu'il sera publié (processus lent, ne retenez pas votre souffle). Fondamentalement, cet article décrit un processus qui implique de prendre la covariance des erreurs de modèle (modèle obsolète) et de pondérer les modèles qui ont une covariance élevée avec tous les autres modèles (c.-à-d. Les modèles avec des erreurs fortement dépendantes). La variance d'erreur du modèle est également calculée et utilisée comme composante de pondération des performances.

Il convient également de noter que la modélisation du climat est évidemment fortement impactée par les aléas de la modélisation numérique en général. Il y a une chose appelée «test de rire» - si vous vous retrouvez avec un modèle qui implique que les températures moyennes mondiales seront de + 20 ° C d'ici 2050, vous le jetez simplement, car ce n'est clairement pas pertinent physiquement. Évidemment, ce genre de test est assez subjectif. Je ne l'ai pas encore requis, mais je m'attends à le faire dans un proche avenir.

C'est ma compréhension de la combinaison de modèles d'état dans mon domaine en ce moment. Évidemment, j'apprends toujours, donc si je touche quelque chose de spécial, je reviendrai et mettrai à jour cette réponse.

(1) Tebaldi, C. & Knutti, R., 2007. L'utilisation de l'ensemble multimodèle dans les projections climatiques probabilistes. Transactions philosophiques de la Royal Society A: Mathematical, Physical and Engineering Sciences, 365 (1857), pp.2053–2075.

(2) Knutti, R. et al., 2010. Réunion d'experts du GIEC sur l'évaluation et la combinaison de projections climatiques multimodèles.

(3) Masson, D. & Knutti, R., 2011. Généalogie des modèles climatiques. Géophysique. Res. Lett, 38 (8), p. L08703.

(4) Abramowitz, G. & Bishop, C., 2010. Définition et pondération de la dépendance du modèle dans la prédiction d'ensemble. Dans les résumés des réunions d'automne de l'AGU. p. 07.

rien101
la source
premier paragraphe, vous parlez de " modèles complexes, hautement non linéaires ", n'est-ce pas? Pour mon domaine de travail (zone non climatique), je trouve souvent que l'utilisation de modèles différents ne conduit généralement pas à des prédictions très différentes. Cependant, le simple fait de faire fonctionner l'informatique pour combiner des modèles de manière non ad hoc est un obstacle énorme pour nous. Je m'attendrais à des prévisions plus précises, mais je n'ai pas le temps de combiner les modèles et d'estimer avec précision l'erreur dans ces prévisions.
probabilitéislogic
Merci, réparé. J'ai accès à un cluster informatique, donc la puissance de calcul n'est pas un gros problème, mais oui, même configurer correctement le modèle que j'utilise est pénible, et c'est déjà écrit. C'est pourquoi le CMIP existe, afin que les gens n'aient pas à traverser tous ces problèmes à chaque fois. Je serais intéressé de savoir dans quel domaine vous vous trouvez si vous faites des choses similaires.
naught101