Plaidoyer pour une modélisation des données à l'échelle de l'entreprise
Gouvernance, efficacité, performance... sont à portée de main, pourvu qu'on se penche sérieusement sur un processus fondamental qui structure l'information de son SI.
De l'IA aujourd'hui, ce sont des données, une architecture algorithmique, des méthodes d'entraînement et une infra logicielle et matérielle moderne.
Ces dernières années, l’intelligence artificielle a été alimentée par des avancées significatives en matière de puissance de calcul et de disponibilité des données. Pour bien comprendre comment l’écosystème tire parti de ces éléments, il est nécessaire de comprendre les composants qui permettent de construire un modèle d'IA moderne. Maîtriser ces aspects permet d'élaborer une stratégie d'innovation alignée sur les objectifs de l’organisation, accélérant le déploiement et minimisant le temps de mise sur le marché.
Voici les 4 piliers les plus importants pour construire un modèle d’IA.
La qualité et la diversité des données utilisées pour entraîner les modèles déterminent en grande partie la performance de ces derniers. Le processus de collecte de données est la première étape cruciale dans la conception de modèles d'IA performants. Cette phase doit être rigoureusement planifiée pour garantir que les données recueillies sont représentatives du problème à résoudre. Une fois collectées, les données doivent être nettoyées et préparées, ce qui implique de filtrer les anomalies, de combler les valeurs manquantes et d'assurer leur formatage correct.
Cette étape est souvent sous-estimée en termes de temps et de ressources, mais elle est indispensable pour la fiabilité des modèles d'IA. Des données de mauvaise qualité peuvent entraîner des erreurs de modélisation et des prédictions inexactes. Les biais présents dans les données de formation peuvent conduire à des discriminations ou à des décisions erronées une fois le modèle déployé. Il est donc très important d'évaluer et de minimiser les biais durant la phase de préparation des données pour garantir une équité dans le système d'IA.
C’est l’élément qui va déterminer la manière dont le modèle va traiter et d'analyser les données dans le but de produire un résultat. Historiquement, les architectures de modèles en IA étaient principalement dominées par des réseaux de neurones convolutifs (CNN) et des réseaux de neurones récurrents (RNN). Les CNN excellaient dans le traitement des données visuelles, exploités largement pour la reconnaissance d'images et la classification vidéo. Les RNN, quant à eux, étaient utilisés pour gérer les séquences de données, comme dans la traduction automatique ou la reconnaissance de la parole, en raison de leur capacité à maintenir un état interne reflétant les entrées précédentes. Les limites des RNN, notamment leur difficulté à gérer de longues séquences et leur lenteur, ont conduit au développement des modèles Transformer (le T de GPT).
Introduits en 2017, les Transformers ont révolutionné le traitement du langage naturel grâce à leur mécanisme d'attention, qui permet de pondérer différemment les parties d'un texte. Cette architecture permet de traiter les données de manière parallèle, accélérant ainsi l'apprentissage. Ce progrès a non seulement amélioré l'efficacité des calculs mais aussi la qualité des prédictions, comme démontré par des modèles tels que GPT et des applications telles que ChatGPT.
Enfin, dans l'architecture des modèles d'intelligence artificielle, les poids représentent les paramètres ajustables qui sont modifiés et optimisés au cours de l'entraînement du modèle. Ils sont souvent sauvegardés sous forme de SafeTensor, un format de fichier qui assure la sécurité et l'intégrité des données lors du stockage et du transfert.
Le nombre de poids, ou paramètres, dans un modèle est directement lié à sa complexité et à sa capacité d'apprentissage. Un modèle avec plus de paramètres dispose d'une plus grande flexibilité pour capturer les nuances du langage et apprendre des données plus complexes. Ainsi, des modèles avec un grand nombre de paramètres, tels que les architectures de Transformers, possèdent une "capacité d'émergence" où ils peuvent développer des compétences et des comportements non explicitement programmés.
L'entraînement d'un modèle d'IA consiste à ajuster ses paramètres, les poids, afin qu'il puisse effectuer des tâches spécifiques. Cette adaptation se fait généralement en exposant le modèle à un ensemble de données, à partir duquel il apprend à réaliser des prédictions. Le choix du type d'entraînement pour un modèle d'IA repose sur la nature des données, les objectifs du modèle, les ressources disponibles, la complexité de la tâche, et la disponibilité du feedback humain. L'apprentissage supervisé fonctionne mieux avec des données bien étiquetées, tandis que l'apprentissage auto-supervisé excelle lorsque les données étiquetées sont limitées. Le renforcement convient aux environnements dynamiques où un agent doit interagir et s'adapter en temps réel, et le RLHF (Reinforcement learning from human feedback, ou apprentissage par renforcement à partir de rétroaction humaine) ajoute une couche de feedback humain pour améliorer les résultats. En comprenant ces paramètres, il devient possible de choisir la méthode d'entraînement la plus adaptée pour maximiser les performances du modèle.
Supervised Learning
L'apprentissage supervisé est le pilier traditionnel de l'IA, où un modèle apprend à partir de données explicitement étiquetées. Ce cadre est utilisé pour des tâches comme la classification d'images ou la prédiction de séries temporelles, où les modèles sont entraînés sur des exemples annotés pour généraliser à de nouvelles données.
Self-Supervision
Dans la self-supervision, les modèles génèrent leurs propres étiquettes à partir des données brutes. Cette méthode est utilisée pour des tâches comme le pré-entraînement de modèles de langage, où les modèles apprennent à prédire un mot manquant dans une phrase, améliorant ainsi leur compréhension linguistique sans données étiquetées.
Reinforcement Learning (RL)
L'apprentissage par renforcement permet aux agents de prendre des décisions en maximisant une récompense. Des applications incluent les systèmes de recommandation, où l'agent apprend à recommander des produits pour maximiser les clics ou les achats.
RLHF (Reinforcement Learning from Human Feedback)
RLHF utilise le feedback humain pour guider l'apprentissage des agents, essentiel pour aligner les systèmes d'IA sur des critères qualitatifs. Un exemple est l'entraînement de modèles de conversation, où le feedback des utilisateurs aide à affiner les réponses générées pour être plus pertinentes et naturelles.
Les frameworks de développement comme TensorFlow, développé par Google, et PyTorch, soutenu par Facebook, jouent un rôle très important dans le domaine de l'IA. Ils simplifient l'expérimentation et l'implémentation de différentes architectures de modèles. Néanmoins, le choix du framework peut influencer la facilité avec laquelle les architectures peuvent être modifiées ou optimisées, ainsi que la rapidité avec laquelle les modèles peuvent être entraînés et testés.
Sur le plan matériel, les GPU, particulièrement efficaces pour les opérations matricielles et vectorielles qui sont courantes dans les réseaux de neurones, sont le meilleur moyen de faire un entraînement optimisé. La disponibilité des GPU chez les hyperscalers croît de manière constante même si elle peine encore à répondre à la demande.
De nouveau services émergent, spécialisés dans la mise à disposition de GPU sous forme de plateforme accessible par API. Ces derniers proposent des prix et une expérience de développement bien pensé. Dans l’ensemble, les frictions pour accéder à du matériel pour entraîner ont été grandement réduites ces dernières années. La disponibilité de ces technologies matérielles a un impact direct sur la conception des architectures et permet ainsi l'utilisation de modèles plus larges et plus complexes.
Ainsi la distribution de l'entraînement sur plusieurs machines ou même plusieurs datacenters permet de surmonter les limitations de la mémoire et de la puissance de calcul d'un seul appareil. En outre, la scalabilité influence non seulement la conception technique des systèmes d'IA mais aussi la viabilité économique des projets d'IA, car les coûts associés à l'entraînement et à l’utilisation de modèles à grande échelle peuvent être prohibitifs.