Les ensembles profonds (Deep Ensembles) sont une technique d'apprentissage automatique où plusieurs réseaux de neurones sont entraînés indépendamment sur la même tâche et leurs prédictions sont combinées, généralement par moyenne, pour produire une sortie finale. Cette approche exploite le principe de l'apprentissage ensembliste, qui en statistique et en apprentissage automatique utilise plusieurs algorithmes d'apprentissage pour obtenir de meilleures performances prédictives que celles obtenues par l'un des algorithmes constitutifs seul. Contrairement à un ensemble statistique en mécanique statistique, qui est généralement infini, un ensemble d'apprentissage automatique consiste en un ensemble fini concret de modèles alternatifs, mais permet généralement une structure beaucoup plus flexible parmi ces alternatives. Les ensembles profonds sont devenus une méthode standard pour améliorer à la fois la précision prédictive et la calibration des estimations d'incertitude en apprentissage profond, surpassant souvent en pratique des approches bayésiennes plus complexes.
L'idée centrale est qu'en entraînant plusieurs modèles avec des initialisations aléatoires différentes et des mélanges de données différents, l'ensemble capture un ensemble diversifié d'hypothèses. Lorsqu'elles sont moyennées, ces hypothèses tendent à annuler les erreurs individuelles, conduisant à une prédiction plus robuste et plus précise. Cette technique est particulièrement précieuse dans les applications critiques pour la sécurité telles que la conduite autonome, le diagnostic médical et la prévision financière, où une quantification fiable de l'incertitude est essentielle. Les ensembles profonds sont également largement utilisés en apprentissage par renforcement, en traitement du langage naturel et en vision par ordinateur, servant souvent de référence pour des méthodes d'incertitude plus sophistiquées.
Contexte historique
Le concept d'apprentissage ensembliste trouve ses racines dans l'apprentissage automatique classique, avec des méthodes comme le bagging (agrégation par bootstrap) et le boosting développées dans les années 1990. Le bagging, introduit par Leo Breiman en 1996, crée de la diversité en générant des échantillons aléatoires à partir des données d'entraînement et en ajustant le même modèle à chaque échantillon, formant des ensembles parallèles homogènes. Le boosting, développé à peu près à la même époque, entraîne séquentiellement des modèles de base sur les erreurs pondérées des modèles précédents, produisant un modèle additif. Ces techniques ont été principalement appliquées aux arbres de décision, conduisant aux forêts aléatoires et aux arbres à gradient boosting, qui restent populaires aujourd'hui.
Les ensembles profonds ont émergé spécifiquement avec l'essor de l'apprentissage profond dans les années 2010. Une étape clé a été l'article de 2017 de Balaji Lakshminarayanan, Alexander Pritzel et Charles Blundell chez DeepMind, intitulé « Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles ». Ce travail a démontré que l'entraînement d'un ensemble de réseaux de neurones avec une règle de score appropriée, telle que la log-vraisemblance négative, pouvait produire des estimations d'incertitude bien calibrées qui rivalisent ou dépassent celles des réseaux de neurones bayésiens, mais avec une implémentation beaucoup plus simple. Depuis lors, les ensembles profonds ont été adoptés dans toute l'industrie, y compris dans les grands modèles de langage et d'autres systèmes d'IA générative.
Comment fonctionnent les ensembles profonds
Dans un ensemble profond typique, plusieurs réseaux de neurones sont entraînés indépendamment sur le même ensemble de données. Chaque réseau a la même architecture mais est initialisé avec des poids aléatoires différents et entraîné avec des ordres de données différents (par exemple, des mélanges différents de mini-lots). Cette aléatoire garantit que les modèles convergent vers des optima locaux différents, fournissant ainsi de la diversité. Pendant l'inférence, les prédictions de tous les modèles sont moyennées, soit en prenant la moyenne des probabilités de sortie pour la classification, soit la moyenne des valeurs prédites pour la régression.
L'estimation de l'incertitude est un avantage clé. La variance entre les prédictions de l'ensemble peut être décomposée en une composante aléatoire (bruit inhérent aux données) et une composante épistémique (incertitude du modèle). En entraînant chaque modèle à produire à la fois une moyenne et une variance (pour la régression) ou en utilisant la dispersion des probabilités softmax (pour la classification), l'ensemble peut fournir une mesure de confiance. Pour la classification, la moyenne des sorties softmax donne une probabilité calibrée, et le désaccord entre les modèles indique l'incertitude épistémique.
L'entraînement d'un ensemble nécessite plus de calcul que l'entraînement d'un modèle unique, car chaque membre doit être entraîné séparément. Cependant, le coût computationnel peut être atténué en parallélisant l'entraînement sur plusieurs GPU ou en utilisant des techniques comme les ensembles instantanés (snapshot ensembles), où une seule session d'entraînement capture plusieurs modèles à différentes époques. Malgré le coût supplémentaire, l'amélioration de la précision et de l'incertitude justifie souvent la dépense, en particulier dans les applications où les erreurs sont coûteuses.
Fondements théoriques
La théorie des ensembles fournit une justification pour expliquer pourquoi la combinaison de modèles fonctionne. Empiriquement, les ensembles tendent à donner de meilleurs résultats lorsqu'il existe une diversité significative entre les modèles. De nombreuses méthodes cherchent donc à promouvoir la diversité, par exemple en utilisant des sous-ensembles aléatoires de données ou de caractéristiques. Le cadre géométrique offre une perspective formelle : la sortie de chaque modèle pour l'ensemble du jeu de données peut être vue comme un point dans un espace multidimensionnel, avec la cible comme point idéal. La distance euclidienne mesure à la fois la performance d'un modèle unique (distance à l'idéal) et la dissemblance entre les modèles (distance entre les points). Dans ce cadre, il peut être prouvé que la moyenne des sorties de tous les modèles de base conduit à des résultats égaux ou meilleurs que la moyenne des modèles individuels. De plus, avec une pondération optimale, une moyenne pondérée peut surpasser n'importe quel modèle individuel.
Un autre résultat théorique est la « loi des rendements décroissants dans la construction d'ensembles », qui suggère qu'il existe un nombre idéal de classificateurs composants pour un ensemble. En avoir plus ou moins que ce nombre peut détériorer la précision, et utiliser le même nombre de composants indépendants que d'étiquettes de classes donne la plus haute précision. Cette découverte a des implications pour la conception d'ensembles profonds, bien qu'en pratique, des ensembles de 5 à 10 modèles soient courants et souvent suffisants.
Comparaison avec d'autres méthodes d'incertitude
Les ensembles profonds sont souvent comparés aux réseaux de neurones bayésiens (BNN), qui placent des distributions sur les poids pour capturer l'incertitude. Les BNN sont théoriquement élégants mais coûteux en calcul et difficiles à mettre à l'échelle. Les ensembles profonds offrent une alternative plus simple qui produit souvent des estimations d'incertitude mieux calibrées en pratique. Ils se comparent également favorablement au dropout de Monte Carlo, qui utilise le dropout à l'inférence pour approximer l'inférence bayésienne. Bien que le MC dropout soit moins coûteux, il tend à sous-estimer l'incertitude. Les ensembles profonds sont également liés à des techniques comme la moyenne de modèles en Machine learning et Deep learning, mais ils mettent spécifiquement l'accent sur la quantification de l'incertitude.
Dans le contexte des Large language models, les ensembles profonds ont été utilisés pour améliorer la précision factuelle et réduire l'hallucination en entraînant plusieurs modèles et en agrégeant leurs sorties. Cependant, le coût computationnel de l'entraînement de plusieurs grands modèles est prohibitif, de sorte que les chercheurs utilisent souvent des techniques de type ensemble au niveau du décodage, comme l'échantillonnage de plusieurs sorties et la sélection de la plus cohérente.
Applications et cas d'utilisation
Les ensembles profonds sont largement utilisés dans les domaines où l'incertitude compte. En conduite autonome, des entreprises comme Waymo et Tesla utilisent des ensembles pour améliorer la perception et la prise de décision, garantissant que le système est confiant avant d'agir. En imagerie médicale, les ensembles aident à détecter les anomalies avec une fiabilité accrue, comme le montrent les recherches d'institutions comme MIT CSAIL et Stanford AI Lab. En apprentissage par renforcement, les ensembles sont utilisés pour estimer la fonction de valeur et la politique, améliorant l'efficacité de l'échantillonnage et la robustesse.
Dans l'industrie, OpenAI et Google DeepMind ont exploré des méthodes d'ensemble pour l'évaluation des modèles et la sécurité. Par exemple, les ensembles peuvent être utilisés pour détecter les entrées hors distribution, ce qui est crucial pour déployer des modèles dans le monde réel. Les institutions financières utilisent des ensembles pour l'évaluation des risques et la détection de fraude, où les faux positifs sont coûteux. De plus, les ensembles sont un composant clé des systèmes de Generative AI, où ils aident à stabiliser l'entraînement et à améliorer la qualité des sorties.
Considérations pratiques et limites
La mise en œuvre d'ensembles profonds nécessite une attention particulière à plusieurs facteurs. Le choix de la taille de l'ensemble est critique ; trop peu de modèles peuvent ne pas fournir suffisamment de diversité, tandis que trop augmentent le coût computationnel sans gains significatifs. La procédure d'entraînement doit garantir la diversité, généralement obtenue par initialisation aléatoire et mélange des données, mais peut également être améliorée en utilisant différentes architectures ou sous-ensembles de données. La méthode d'agrégation compte : la moyenne simple est courante, mais la moyenne pondérée ou l'empilement (stacking) peuvent donner de meilleurs résultats si les modèles ont des forces variables.
Une limite est le surcoût en mémoire et en calcul, qui peut être substantiel pour les grands modèles. Pour y remédier, des techniques comme l'élagage de modèles et la distillation peuvent compresser l'ensemble en un modèle unique, bien que cela puisse sacrifier une partie de la qualité de l'incertitude. Un autre défi est que les ensembles profonds ne capturent pas toutes les formes d'incertitude ; ils sont principalement efficaces pour l'incertitude épistémique, et l'incertitude aléatoire doit être modélisée séparément. Malgré ces limites, les ensembles profonds restent un choix robuste et pratique pour de nombreuses applications.
Directions futures
La recherche continue d'améliorer l'efficacité et l'efficacité des ensembles profonds. Une direction est le développement d'« ensembles profonds avec représentations partagées », où les modèles partagent les couches inférieures pour réduire le coût computationnel tout en maintenant la diversité dans les couches supérieures. Une autre est l'utilisation de hyperréseaux pour générer efficacement les membres de l'ensemble. À l'ère des grands modèles, il y a un intérêt pour la « distillation d'ensemble », où un modèle unique est entraîné à imiter la distribution prédictive d'un ensemble, fournissant des estimations d'incertitude à l'inférence sans le coût de l'ensemble.
Alors que les systèmes d'IA deviennent plus intégrés dans la prise de décision critique, le besoin d'une quantification fiable de l'incertitude augmente. Les ensembles profonds, avec leur simplicité et leurs performances empiriques solides, sont susceptibles de rester une technique de base. Ils sont également combinés avec d'autres méthodes, comme Batch Normalization et Dropout, pour améliorer encore la robustesse. La communauté open source, y compris des frameworks comme PyTorch et TensorFlow, fournit des outils pour implémenter des ensembles, rendant la technique accessible à un large éventail de praticiens.
Voir aussi
- Machine learning
- Deep learning
- Neural network
- Uncertainty Quantification (si disponible)
- Bagging (si disponible)
- boosting (si disponible)
- model-averaging (si disponible)
- bayesian-neural-network (si disponible)
- Monte Carlo Dropout (si disponible)
Références
- Lakshminarayanan, B., Pritzel, A., & Blundell, C. (2017). Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles. NeurIPS.
- Breiman, L. (1996). Bagging predictors. Machine Learning.
- Freund, Y., & Schapire, R. (1997). A decision-theoretic generalization of on-line learning and an application to boosting. JCSS.
- Zhou, Z.-H. (2012). Ensemble Methods: Foundations and Algorithms. Chapman & Hall/CRC.