Réglage fin

technique d'apprentissage automatique From Wikipedia, the free encyclopedia

En apprentissage profond, le réglage fin ou ajustement (fine-tuning en anglais) est une approche d'apprentissage par transfert dans laquelle les paramètres d'un modèle pré-entraîné sont ajustés avec de nouvelles données[1]. Cela permet notamment d'adapter un modèle d'IA généraliste à une tâche spécifique, ou d'ajuster son comportement.

Courbes du taux de succès par réglages fin d’agent intelligents.

Le réglage fin peut être effectué sur l'ensemble du réseau de neurones, ou bien seulement sur un sous-ensemble de ses couches, auquel cas les couches qui ne sont pas entraînées sont « gelées » (ne sont pas mises à jour lors de l'étape de rétropropagation )[2]. Un modèle peut également être complété par des « adaptateurs » composés de beaucoup moins de paramètres que le modèle de base, qui peut lui dans ce cas être gelé[3].

Pour certaines architectures comme les réseaux de neurones convolutifs, il est courant de conserver les couches antérieures (les plus proches de la couche d'entrée) gelées, car elles capturent des fonctionnalités génériques d'analyse d'image (comme l'identification de contours ou de textures...), tandis que les couches ultérieures discernent souvent des fonctionnalités de plus haut niveau, souvent davantage liées à la tâche que le modèle doit accomplir[2],[4].

Pour adapter les modèles pré-entraînés généralistes, on conserve leurs paramètres initiaux et on y ajoute une couche spécifique à la tâche, qui est entraînée à partir de zéro (ou bien un adapteur, comme avec la méthode LoRA). Le réglage fin du modèle complet est également courant et donne souvent de meilleurs résultats, mais coûte plus cher en termes de calcul[5].

Le réglage fin utilise le plus souvent l'apprentissage supervisé[6]. Il peut être combiné à des méthodes d'apprentissage par renforcement comme le RLHF ou l'IA constitutionnelle pour rendre les grands modèles de langage plus utiles, inoffensifs et véridiques[7].

Robustesse

Le réglage fin peut dégrader la robustesse d'un modèle face aux changements de distribution, c'est-à-dire face à des données significativement différentes de celles utilisées pour le réglage[8],[9]. Une solution consiste à interpoler linéairement les paramètres du modèle après réglage, avec les pondérations du modèle d'origine. Ce qui peut augmenter considérablement les performances hors distribution tout en conservant largement les performances en distribution du modèle affiné[10].

Variantes

Adaptation de bas rang

L'adaptation de bas rang (Low-rank adaptation ou LoRA en anglais) est une technique basée sur un adaptateur pour ajuster efficacement les modèles. L’idée de base est de concevoir une matrice de bas rang qui est ensuite ajoutée à la matrice d’origine[11]. Un « adaptateur » LoRA est un ensemble de matrices de bas rang qui, ajoutées à un modèle de base, produisent un modèle ajusté. Cette technique offre des performances proches du réglage fin du modèle complet, mais en nécessitant beaucoup moins d'espace mémoire. L'adapteur d'un modèle comportant des milliards de paramètres peut ne contenir que quelques millions de paramètres.

Le réglage fin basé sur LoRA est devenu populaire dans la communauté Stable Diffusion[12]. LoRA a été intégrée dans la bibliothèque Diffusers de Hugging Face[13]. La prise en charge de LoRA et de techniques similaires est également disponible pour une large gamme d'autres modèles grâce à la librairie PEFT (Parameter-Efficient Fine-Tuning) de Hugging Face[14].

Applications

Traitement automatique des langues

Le réglage fin est courant en traitement automatique des langues. Les grands modèles de langage comme les modèles de fondation de type GPT peuvent être ajustés sur des tâches spécifiques de traitement des langues pour y améliorer les performances par rapport au modèle pré-entraîné de base[5].

Certains grands modèles de langage peuvent être ajustés via des plateformes de cloud computing comme Microsoft Azure ou Google Cloud Platform[15],[16].

Références

Related Articles

Wikiwand AI