Model soups : moyennage des poids de plusieurs modèles ajustés finement améliore la précision sans augmenter le temps d'inférence

La recette classique pour maximiser la précision d’un modèle consiste à (1) entraîner plusieurs modèles avec différentes valeurs d’hyperparamètres, puis à (2) sélectionner le modèle individuel qui se comporte le mieux sur un ensemble de validation détaché, en éliminant les autres. Dans cet article, nous réexaminons la deuxième étape de cette procédure dans le cadre du fin-tuning de grands modèles pré-entraînés, où les modèles finement ajustés semblent souvent se situer dans une même vallée à faible erreur. Nous montrons qu’effectuer une moyenne des poids de plusieurs modèles finement ajustés avec des configurations d’hyperparamètres différentes améliore fréquemment la précision et la robustesse. Contrairement à un ensemble classique, nous pouvons moyenner un grand nombre de modèles sans engager de coûts supplémentaires en inférence ou en mémoire — nous appelons ces résultats « soups de modèles » (model soups). Lors du fin-tuning de grands modèles pré-entraînés tels que CLIP, ALIGN et un ViT-G pré-entraîné sur JFT, notre méthode de « soupe » permet d’obtenir des améliorations significatives par rapport au meilleur modèle identifié dans une exploration d’hyperparamètres sur ImageNet. Le modèle ViT-G résultant, atteignant une précision top-1 de 90,94 % sur ImageNet, établit un nouveau record d’état de l’art. En outre, nous démontrons que l’approche « soupe de modèles » s’étend à plusieurs tâches de classification d’images et de traitement du langage naturel, améliore les performances hors distribution et renforce les performances en mode zéro-shot sur de nouvelles tâches descendantes. Enfin, nous établissons une relation analytique entre la similarité de performance entre la moyenne des poids et l’ensemblage des logits, d’une part, et la « platitude » de la fonction de perte ainsi que la confiance des prédictions, d’autre part, et validons cette relation de manière empirique. Le code est disponible à l’adresse suivante : https://github.com/mlfoundations/model-soups.