Introduction au finetuning en machine learning

Jeffrey Erickson | Senior Writer | 25 février 2025

À mesure que l'IA se rend plus utile aux entreprises et que les agents prennent en charge des workflows plus complexes, le finetuning devient un levier essentiel. Ces agents répondent aux questions sur les données et agissent pour nous, écriture de code, gestion d'agendas, restitution d'insights analytiques, et bien plus encore. Pour y parvenir, les modèles doivent collaborer, explorer les données et les documents, collecter l'information, en vérifier l'exactitude, déclencher les bonnes actions, les communiquer. Aguerris aux schémas linguistiques généraux, ces modèles doivent aussi être optimisés pour des domaines précis, avec leur jargon, leur base de connaissances, leurs spécificités. Comment le finetuning aide‑t‑il un modèle d'IA, et les futurs agents, à maîtriser les nuances et les détails ? Voyons ci‑après les principaux aspects du finetuning des modèles d'IA.

Qu'est-ce que le finetuning ?

Le finetuning consiste pour les data scientists et ingénieurs ML à adapter un modèle déjà entraîné afin d'optimiser ses performances sur une tâche ciblée. On peut, par exemple, finetuner un LLM généraliste, comme Cohere Command ou Llama 2 de Meta, pour le rendre plus pertinent en santé ou en service client.

Ces modèles dits « foundation models » sont entraînés sur de vastes corpus généraux, parfois issus d'une large partie du web ouvert. Ils y apprennent un large éventail de caractéristiques et de motifs. Certains excellent en langage, d'autres gèrent la multimodalité, images, vidéo, audio, en plus du texte.

Le finetuning reprend ce modèle avancé et poursuit l'entraînement sur un jeu de données plus restreint, issu d'une tâche ou d'un domaine métier. Le modèle assimile ainsi la taxonomie, le contexte, voire les connaissances expertes du domaine.

L'objectif est de conserver tous les acquis initiaux, tout en affinant la compréhension des nuances et des détails du domaine ciblé. Par exemple, on peut affiner un modèle généraliste pour interpréter et commenter des imageries médicales, ou un chatbot LLM pour maîtriser des dialectes locaux et mieux servir le support client. La course aux agents d'IA très performants dans de multiples domaines s'appuiera largement sur des modèles finetunés. Découvrez une analyse approfondie des méthodes et mécanismes du finetuning.

Points à retenir

  • Le finetuning consiste à entraîner un modèle généraliste pour lui apporter du contexte et des connaissances sur une tâche précise, par exemple l'analyse de sentiment, la génération de langage, la détection d'images, et bien d'autres workloads.
  • Le finetuning fait partie des plusieurs méthodes permettant d'améliorer les sorties d'un LLM pour des applications, y compris des agents d'IA.
  • Le finetuning requiert des jeux d'entraînement bien plus restreints qu'un entraînement à partir de zéro.
  • Après finetuning, un modèle d'IA devient plus pertinent et précis dans un domaine donné, par exemple la santé, l'industrie manufacturière ou le service client.

Avantages et défis du finetuning

Le premier défi du finetuning tient à la disponibilité de données étiquetées, pertinentes et de qualité, leur acquisition ou leur création pouvant être coûteuses et chronophages. L'étiquetage de données peut exiger des heures d'annotation, zones à reconnaître dans des images, passages de texte à marquer pour faire ressortir l'information clé. Malgré cela, le finetuning offre des avantages déterminants qui en font une technique clé du développement IA moderne. Voyons les atouts et les limites.

Avantages

  • Gagner du temps et de l'argent par rapport à un entraînement from scratch : affiner un modèle de base réduit considérablement le temps d'entraînement et les coûts de calcul, ces modèles ayant déjà bénéficié d'un entraînement généraliste étendu et nécessitant moins de ressources pour s'adapter à une nouvelle tâche. Le finetuning reste efficace avec de petits jeux de données spécifiques, ce qui diminue le temps et le coût de collecte et de préparation des données. Des besoins moindres en calcul et en temps d'entraînement réduisent aussi la consommation d'énergie, donc les coûts.
  • Mieux performer sur des tâches ciblées : affiner un foundation model améliore la précision et accélère la convergence, point où le taux d'erreur se stabilise, indiquant que des entraînements supplémentaires sur le même jeu n'apporteront plus de gain. Les modèles de base s'adaptent rapidement aux nuances d'une nouvelle tâche avec moins de données et moins d'itérations. Cette combinaison de connaissances générales et d'apprentissage spécifique favorise de bonnes performances face à de nouvelles données.

Inconvénients

  • Surapprentissage : en finetuning, il survient lorsque les cycles d'entraînement sur de nouvelles données altèrent des couches utiles aux connaissances générales du modèle. Or, ces connaissances générales et cette flexibilité linguistique sont cruciales pour bien gérer des données inédites. En cas de surapprentissage, le modèle mémorise les données d'entraînement au lieu d'apprendre les motifs sous‑jacents qui permettent de généraliser.
  • Coût : les ressources de calcul et l'expertise nécessaires au finetuning peuvent être onéreuses. Le processus s'appuie sur des GPU ou des TPU hautes performances, coûteux à acquérir ou à louer auprès d'un fournisseur cloud. Recruter des experts en machine learning et en traitement du langage naturel représente aussi un investissement.
  • Temps : le finetuning peut être consommateur de temps à plusieurs égards. D'abord pour préparer les données, collecte, nettoyage, annotation, mise en forme. Ensuite pendant l'entraînement, qui peut durer des heures, des jours, voire des semaines selon la taille et la complexité de la tâche. Plus de temps signifie des coûts de calcul plus élevés.

Comment fonctionne le finetuning

Le finetuning s'appuie sur des modèles existants comme points de départ. Ces modèles de base, comme Llama 2 de Meta ou Command de Cohere, sont couramment disponibles chez les fournisseurs cloud. Beaucoup d'entreprises importent aussi d'autres modèles sur leurs plateformes de data science depuis des dépôts centralisés, Hugging Face, TensorFlow Hub, PyTorch Hub, qui hébergent des modèles préentraînés.

Commencer avec un modèle préentraîné

Choisissez un modèle adapté à votre tâche, classification de texte, analyse de sentiment, questions‑réponses, rédaction, génération de code, détection d'objets, ou tout autre cas relevant de l'IA ou du ML.

Le finetuning requiert trois ingrédients : un jeu de données correctement formaté, le foundation model idoine, et une infrastructure offrant réseaux neuronaux pour le deep learning et GPU pour soutenir l'entraînement. Ces ressources sont réunies dans une plateforme de data science ou, plus récemment, un service cloud d'IA générative.

Comme souvent, le finetuning s'est simplifié avec le temps grâce aux nouveaux outils et services d'infrastructure issus de l'open source et des équipes des clouds. Ces outils automatisent une partie du finetuning, y compris des tâches complexes comme l'optimisation des hyperparamètres, la sélection de modèles, le pré‑traitement des données. Le processus devient ainsi plus accessible aux non‑experts.

D'ailleurs, beaucoup notent que les outils abstraient tellement la minutie data science que la partie la plus difficile est désormais de constituer et formater le meilleur jeu de données possible. Là encore, des bibliothèques de données prêtes à l'emploi existent par domaine, santé, finance, et par capacité, vision par ordinateur, analyse de sentiment, détection d'anomalies. Tendance croissante : partir d'un modèle déjà finetuné pour votre cas d'usage à partir de ces bibliothèques. Ensuite, l'entreprise peut l'affiner encore avec un plus petit jeu de données et, le cas échéant, recourir à une architecture de génération augmentée par recherche, la RAG, pour améliorer les sorties.

Les entreprises complètent aussi les approches classiques par une technique appelée apprentissage par renforcement. Elle permet aux modèles d'apprendre par essais et erreurs et auto‑amélioration, plutôt que de dépendre uniquement du labellisation et du finetuning supervisé.

Comment affiner un modèle d'IA en quatre étapes

1. Utiliser un modèle préentraîné : commencez par choisir un foundation model adapté à la tâche. Des modèles populaires existent pour le NLP, la vision par ordinateur, la génération de texte, et d'autres domaines.

2. Ajouter de nouvelles données : réunissez et préparez un jeu de données spécifique à la tâche. Il peut s'agir d'avis clients labellisés ou d'ensembles de questions‑réponses propres au domaine visé.

3. Ajuster : la troisième étape consiste à ajuster le modèle selon les besoins. Vous pouvez geler certaines couches pour préserver les acquis, ajuster le taux d'apprentissage pour conserver les connaissances existantes, ajouter des couches pour des tâches nouvelles, couche de classification pour du texte, couche de régression pour des prédictions.

4. Entraîner le modèle : alimentez le modèle avec les nouvelles données et mettez à jour ses paramètres. L'objectif est d'améliorer les performances sur votre tâche, tout en conservant les connaissances générales issues de l'entraînement initial.

Techniques et méthodes de finetuning

Différentes techniques de finetuning sont disponibles. Première décision, opter pour un finetuning complet ou sélectif.

Finetuning complet

Le finetuning complet met à jour toutes les couches et tous les paramètres d'un foundation model pendant l'entraînement. Cette option convient si vous disposez d'un grand jeu de données varié, suffisant pour mettre à jour les paramètres sans risque de surapprentissage.

Finetuning sélectif

Le finetuning sélectif met à jour un sous‑ensemble de couches ou de paramètres à partir d'un plus petit jeu de données. Cette méthode préserve les connaissances générales du modèle et réduit le temps et le coût de calcul. Voici des techniques illustrant le finetuning sélectif.

  • Data augmentation : générer des données d'entraînement supplémentaires à partir du jeu existant en appliquant des transformations. Pour les images, rotation, redimensionnement, recadrage, ajout de bruit, par exemple. Utile quand le jeu spécifique est réduit, cela améliore les performances du finetuning.
  • Early stopping : arrêter l'entraînement quand la performance ne progresse plus sur un jeu de validation. Cela améliore l'efficacité et limite le surapprentissage.
  • Méthodes d'ensemble : combiner plusieurs modèles finetunés pour réduire la variance des sorties.
  • Finetuning de couches spécifiques : n'ajuster que les couches superficielles d'un réseau profond, en verrouillant les couches plus profondes.
  • Réglage des hyperparamètres : ajuster des paramètres comme le taux d'apprentissage ou la taille de lot.
  • Gel de couches : verrouiller les couches responsables des représentations de base et universelles. Cela évite que le modèle mémorise les données d'entraînement au lieu d'apprendre des motifs généralisables.
  • Planification du taux d'apprentissage : un taux plus lent permet des ajustements plus fins des paramètres. Il s'agit de réduire progressivement le taux d'apprentissage, ou taille de pas, pour apprendre plus efficacement à l'approche de la solution optimale.
  • Techniques de régularisation : destinées à prévenir le surapprentissage.
  • Apprentissage par transfert : poursuivre l'entraînement d'un foundation model sur un petit jeu de données spécifique à une tâche.

Finetuning ou entraînement à partir de zéro ?

Dans certains cas d'usage, concevoir et entraîner un modèle d'IA à partir de zéro a du sens. Le plus souvent, on obtient le résultat souhaité en affinant un foundation model.

L'entraînement à partir de zéro peut s'avérer préférable dans quelques situations. Par exemple, pour un domaine très exigeant, tel qu'une application médicale de niche avec des images très spécifiques. Former à partir de zéro impose de réunir un grand jeu de données et d'exécuter de longs cycles d'entraînement sur une infrastructure dédiée à l'IA. C'est coûteux, potentiellement des milliers de GPU et des millions de dollars. Des data scientists et des ingénieurs en ML sont indispensables.

Le finetuning consiste à partir d'un foundation model et à l'adapter à une tâche via un jeu de données plus petit et ciblé. Le processus est souvent plus rapide et efficace, le modèle disposant déjà d'une base solide en langage et en connaissances générales, à affiner sur les nuances de la nouvelle tâche. Vous améliorez ainsi les performances pour votre besoin avec moins de travail de collecte et préparation des données et bien moins de cycles d'entraînement que à partir de zéro. Retrouvez ci‑dessous d'autres bénéfices du finetuning.

Cas d'usage courants du finetuning

De nombreuses entreprises, des startups aux multinationales, finetunent des modèles préentraînés. C'est même devenu une pratique standard pour déployer des systèmes adaptés à ses besoins, sans l'investissement massif d'un entraînement complet. Voici quelques exemples de cas d'usage.

Exemples concrets

Des entreprises de la finance, logistique, santé, et bien d'autres domaines, intègrent une IA générative finetunée à leurs opérations quotidiennes. Ces retours de terrain vous aideront à explorer un large éventail de cas d'usage réels. Voici trois exemples précis :

  • Support client : une entreprise de solutions de sécurité industrielle a déployé un outil dopé à l'IA qui a immédiatement amélioré ses opérations de support. L'équipe utilise un LLM Cohere Command R+ finetuné pour traiter les demandes et générer des réponses précises.
  • Santé : des chercheurs universitaires exploitent l'IA pour analyser plus finement les données patients et contribuer à concevoir de nouvelles thérapies contre le cancer. Ils utilisent une infrastructure cloud pour héberger, exécuter et affiner des LLM à grande échelle.
  • Services : une entreprise brésilienne spécialisée en IA applique du finetuning sur des LLM pour soutenir la thérapie de réminiscence, un traitement psychologique éprouvé qui aide les patients souffrant de déclin cognitif.

Et après, pour le finetuning

Le finetuning en IA évolue rapidement, d'autant que de plus en plus d'agents d'IA s'appuient sur des modèles finetunés. À l'avenir, attendez‑vous à plus d'automatisation, de nouvelles techniques, un éventail plus large de modèles pour aider les entreprises à adapter l'IA à leurs besoins.

Parmi ces innovations, des services ML améliorés qui automatisent le finetuning, optimisation des hyperparamètres, sélection des modèles, prétraitement des données. Les techniques d'augmentation de données contextualisées devraient accélérer l'apprentissage des caractéristiques pertinentes, et l'apprentissage dynamique permettra d'ajuster le taux d'apprentissage à la volée. Les éditeurs de modèles ML et de modèles de base publieront des modèles toujours plus polyvalents et puissants, capables de transférer des connaissances entre modalités et de se prêter au finetuning pour des tâches multimodales. L'enjeu sera de disposer d'une infrastructure data suffisamment flexible pour tirer parti de ces innovations dès leur arrivée.

Boostez vos modèles d'IA avec des solutions d'IA générative

Saviez‑vous qu'Oracle Cloud Infrastructure (OCI) vous donne accès à tout le nécessaire pour finetuner des modèles de machine learning et des modèles de base ? Oracle fournit l'infrastructure matérielle, l'infrastructure de traitement des données, la plateforme de data science et des services d'IA générative, le tout en services entièrement managés. Le service d'IA générative d'OCI offre par exemple une intégration simple et fluide avec des LLM polyvalents, dans un service facile à utiliser. Utilisez‑le pour finetuner des modèles sur de nombreux cas d'usage, assistance à la rédaction, synthèse, analyse, chat.

En parallèle, vos data scientists et ingénieurs ML s'appuient sur la plateforme de data science d'Oracle pour collaborer à la création, l'entraînement et le déploiement de modèles ML avec Python et des outils open source. Un environnement basé sur JupyterLab fournit toutes les ressources pour expérimenter, développer des modèles, et passer à l'échelle avec des GPU NVIDIA et de l'entraînement distribué. Mettez les modèles en production et maintenez‑les en condition avec des capacités MLOps, pipelines automatisés, déploiements de modèles, supervision des modèles.

Le finetuning n'est qu'un des leviers pour exploiter l'IA et prendre une longueur d'avance. Découvrez d'autres façons d'en faire bénéficier votre entreprise.

FAQ sur le finetuning

En quoi le finetuning diffère‑t‑il des autres types d'entraînement ?

Le finetuning diffère d'un entraînement à partir de zéro. Il s'agit d'ajouter des cycles d'entraînement à un modèle de base avancé pour produire des résultats plus contextualisés sur une tâche cible. Le finetuning nécessite souvent moins de données, il est moins long et moins coûteux que de bâtir et entraîner un modèle à partir de zéro.

Peut‑on appliquer le finetuning à tout type de modèle ?

Oui, on peut finetuner des modèles de base pour de nombreux cas d'usage, reconnaissance d'images, classification de texte, génération de langage, sorties audio, et au‑delà.