Accueil les sujets Intégration Qu’est-ce que l’incorporation ?
Découvrir IBM watsonx.ai
Concept de réseaux neuronaux informatiques

Publication : 22 décembre 2023
Contributeur : Joel Barnard

Qu’est-ce que l’incorporation ?

L’incorporation est un moyen de représenter des objets comme du texte, des images et de l’audio sous forme de points dans un espace vectoriel continu, où les emplacements de ces points dans l’espace sont sémantiquement significatifs pour les algorithmes de machine learning (ML).

L’incorporation (ou « embedding » est un outil essentiel pour les ingénieurs ML qui créent des moteurs de recherche de textes et d’images, des systèmes de recommandation, des chatbots, des systèmes de détection des fraudes et de nombreuses autres applications. L’incorporation permet par essence aux modèles de machine learning de trouver des objets similaires.

Contrairement à d’autres techniques de ML, les incorporations sont tirées de données utilisant divers algorithmes, tels que les réseaux de neurones, au lieu d’exiger explicitement une expertise humaine pour les définir. Elles permettent au modèle d’acquérir des schémas et des relations complexes que les humains ne sont pas capables d’identifier.

Par exemple, l’implémentation de l’incorporation d’OpenAI permet à ChatGPT de comprendre facilement les relations qui unissent différents mots et catégories au lieu d’analyser chaque mot séparément. Grâce aux incorporations, les modèles GPT d’OpenAI peuvent générer des réponses plus cohérentes et plus pertinentes aux questions et sollicitations des utilisateurs.

Suivre la visite guidée d’IBM watsonx.ai

Studio de développement d’IA nouvelle génération destiné aux entreprises pour l’entraînement, la validation, le réglage et le déploiement de modèles IA

Contenu connexe

S’abonner à la newsletter IBM

Fonctionnement de l’incorporation

La plupart des algorithmes de machine learning ne peuvent accepter comme entrées que des données numériques de faible dimension. Il est donc nécessaire de convertir les données au format numérique. Cela peut impliquer la création d’une représentation « sac de mots » (bag of words) pour les données textuelles, la conversion d’images en pixels ou encore la transformation de données graphiques en matrice numérique.

Les objets qui entrent dans un modèle d’incorporation sont générés sous forme d’incorporations, représentées sous forme de vecteurs. Un vecteur est une série de nombres (par exemple, 1489, 22… 3, 777), où chaque nombre indique où se trouve un objet le long d’une dimension spécifiée. Le nombre de dimensions peut atteindre un millier ou plus en fonction de la complexité des données entrées. Plus une incorporation est proche des autres dans cet espace n-dimensionnel, plus elles sont similaires. La similarité de distribution est déterminée par la longueur des points vectoriels d’un objet à l’autre (mesurée par euclidienne, cosinus ou autre).

Le modèle Word2Vec (Word to Vector), développé par Google en 2013, permet de créer efficacement des plongements lexicaux en utilisant un réseau neuronal à deux couches. Il prend comme entrée un mot et sort une coordonnée n-dimensionnelle (le vecteur incorporant) afin que, lorsque vous tracez ces vecteurs de mots dans un espace tridimensionnel, les synonymes se regroupent.

Voici comment deux mots, « papa » et « maman », seraient représentés comme vecteurs :

    « papa » = [0,1548, 0,4848, …, 1,864]

    « maman » = [0,8785, 0,8974, …, 2,794]

Bien qu’il existe une certaine similarité entre ces deux mots, nous pouvons nous attendre à ce que « père » soit beaucoup plus proche de « papa » dans l’espace vectoriel, ce qui donnerait un produit scalaire plus élevé (une mesure de la direction relative de deux vecteurs et de la proximité de leur alignement dans la direction vers laquelle ils pointent).

Un exemple plus complexe est l’incorporation de recommandations, qui fonctionne en représentant les utilisateurs et les éléments (par exemple, les films, les produits, les articles) sous forme de vecteurs de grande dimension dans un espace vectoriel continu. Ces incorporations capturent les caractéristiques latentes qui reflètent les préférences des utilisateurs et les caractéristiques des éléments. L’idée est d’apprendre une représentation pour chaque utilisateur et chaque élément de manière à ce que le produit scalaire de leurs incorporations soit en corrélation avec la préférence de l’utilisateur pour cet article.

Chaque utilisateur et chaque élément sont associés à un vecteur d’incorporation. Ces vecteurs sont généralement appris à partir d’un modèle de recommandation lors d’un processus d’entraînement. Les incorporations d’utilisateurs et d’éléments sont organisées en matrices. Les lignes de la matrice d’utilisateurs représentent les utilisateurs, et celles de la matrice d’éléments représentent les éléments.

Le score de recommandation d’un couple élément-utilisateur peut être calculé en prenant le produit scalaire du vecteur d’incorporation de l’utilisateur et celui du vecteur d’incorporation de l’élément. Plus le produit scalaire est élevé, plus l’utilisateur est susceptible d’être intéressé par l’élément.

    Score de recommandation = incorporation d’utilisateur ⋅ incorporation d’élément

Les matrices d’incorporation sont apprises à partir d’un processus d’entraînement à l’aide d’interactions passées de l’utilisateur avec l’élément. Le modèle vise à minimiser la différence entre les scores prédits et les préférences réelles des utilisateurs (par exemple, avis, clics, achats).

Une fois le modèle entraîné, il peut servir à générer des recommandations de premier plan pour les utilisateurs. Les éléments avec les scores prévus les plus élevés pour un utilisateur sont recommandés.

Pourquoi utiliser l’incorporation

Les incorporations, ou embeddings, sont utilisées dans divers domaines et champs d’application en raison de leur capacité à transformer des données de grande dimension et catégorielles en représentations vectorielles continues, saisissant des relations, une sémantique et des schémas significatifs. Vous trouverez ci-dessous quelques-unes des raisons pour lesquelles l’incorporation est utilisée dans la science des données :

Représentation sémantique

En mappant des entités (mots, images, nœuds dans un graphique, etc.) à des vecteurs dans un espace continu, les incorporations saisissent les relations sémantiques et les similitudes, ce qui permet aux modèles de mieux comprendre et généraliser les informations.

Réduction de la dimensionnalité

Les données de grande dimension, telles que le texte, les images ou les graphiques, peuvent être transformées en représentations de moindre dimension, ce qui les rend plus efficaces sur le plan des calculs et plus faciles à utiliser.

Généralisation améliorée des modèles

En apprenant des représentations significatives à partir de données, les modèles peuvent généraliser leur analyse à des exemples non étudiés, rendant les incorporations cruciales pour les tâches avec des données étiquetées comme limitées.

Visualisation efficace

Des techniques comme t-SNE peuvent être appliquées pour visualiser les incorporations de grande dimension en deux ou trois dimensions, fournissant des informations sur les relations et les clusters dans les données.

Entraînement efficace dans les réseaux neuronaux

Les couches d’incorporation sont couramment utilisées dans les architectures de réseaux neuronaux pour mapper les entrées catégorielles aux vecteurs continus, facilitant la rétropropagation et l’optimisation.

Quels objets peuvent être incorporés ?

Les incorporations sont des représentations polyvalentes qui peuvent être appliquées à un large éventail de types de données. Voici quelques-uns des objets les plus courants pouvant être incorporés :

Mots

L’incorporation de mots, plus connue sous l’appellation « plongement lexical », saisit les relations sémantiques et la signification contextuelle des mots en fonction de leurs schémas d’utilisation dans un corpus de langue donné. Chaque mot est représenté comme un vecteur de nombres réels dense et de taille fixe. C’est le contraire d’un vecteur creux, comme l’encodage one hot, qui comporte de nombreuses entrées nulles.

L’utilisation du plongement lexical a considérablement amélioré les performances des modèles de traitement automatique du langage naturel (NLP) en fournissant une représentation plus significative et plus efficace des mots. Les incorporations de ce type permettent aux machines de comprendre et de traiter le langage de manière à saisir les nuances sémantiques et les relations contextuelles, ce qui les rend utiles pour un large éventail de champs d’application, notamment l’analyse des sentiments, la traduction automatique et la récupération d’informations.

Parmi les modèles de plongement lexical les plus populaires, on trouve Word2Vec, GloVe (Global Vectors for Word Representation), FastText et les incorporations dérivées de modèles basés sur des transformers, tels que BERT (Bidirectionnel Encoder Representations from Transformers) et GPT (Generative Pre-trained Transformer).

Texte

L’incorporation de texte va plus loin que le plongement lexical pour représenter des phrases, des paragraphes ou des documents entiers dans un espace vectoriel continu. L’incorporation de texte joue un rôle crucial dans divers champs d’application du NLP, telles que l’analyse des sentiments, la classification de texte, la traduction automatique, la réponse aux questions et la récupération d’informations.

Des modèles tels que Doc2Vec, USE (Universal Sentence Encoder), BERT et ELMO (Embeddings from Language Models) ont été entraînés à partir d’énormes quantités de corpus d’incorporations pré-entraînés, tels que Wikipédia et Google News.

Images

L’incorporation d’images est conçue pour saisir des caractéristiques visuelles et des informations sémantiques sur le contenu des images. L’incorporation d’images est particulièrement utile pour diverses tâches de vision par ordinateur : elle permet de modéliser les similitudes entre images, la classification des images, la détection d’objets et d’autres tâches de reconnaissance visuelle.

Les modèles tels que VGG (Visual Geometry Group), ResNet (Residual Networks), Inception (GoogLeNet) et EfficientNet comptent parmi les réseaux neuronaux convolutifs (CNN) les plus populaires pour l’incorporation d’images. Ces modèles ont été pré-entraînés sur des jeux de données d’image à grande échelle et peuvent être utilisés comme de puissants extracteurs de fonctionnalités.

Audio

Semblables aux incorporations d’images et de texte, les incorporations audio sont souvent générées à l’aide d’architectures d’apprentissage profond, notamment les réseaux neuronaux récurrents (RNN), les réseaux neuronaux convolutifs (CNN) ou les modèles hybrides qui combinent les deux. Ces incorporations saisissent les caractéristiques pertinentes des données audio, ce qui permet une analyse, un traitement et des indicateurs de similarité efficaces. Les incorporations audio sont particulièrement utiles dans les champs d’application tels que la reconnaissance vocale, la classification audio et l’analyse musicale, entre autres.

Graphiques

L’incorporation de graphiques est essentielle pour diverses tâches, notamment la classification des nœuds, la prédiction des liens et la détection des communautés dans des réseaux complexes. Ces incorporations sont utiles dans l’analyse des réseaux sociaux, les systèmes de recommandation, l’analyse des réseaux biologiques, la détection des fraudes et divers autres domaines où les données peuvent être représentées sous forme de graphiques.

Comment les incorporations sont créées

Les incorporations sont créées via un processus appelé « apprentissage par incorporation ». Bien que la méthode spécifique utilisée dépende du type de données incorporées, les incorporations sont créées en suivant ces étapes générales :

  1. Choisissez ou entraînez un modèle d’incorporation : sélectionnez un modèle d’intégration préexistant adapté à vos données et à votre tâche, ou entraînez-en un nouveau si nécessaire. Pour le texte, vous pouvez choisir Word2Vec, GloVe ou BERT. Pour les images, vous pouvez utiliser des CNN pré-entraînés comme VGG ou ResNet.

  2. Préparez vos données : Formatez vos données de manière à ce qu’elles soient compatibles avec le modèle d’incorporation choisi. Pour le texte, cela implique la tokenisation et éventuellement le prétraitement. Pour les images, vous devrez peut-être les redimensionner et les normaliser.

  3. Chargez ou entraînez le modèle d’incorporation : si vous utilisez un modèle pré-entraîné, chargez les poids et l’architecture. Si vous entraînez un nouveau modèle, fournissez à l’algorithme vos données d’entraînement préparées en amont.

  4. Générez des incorporations : pour chaque donnée, utilisez le modèle entraîné ou chargé pour générer des incorporations. Par exemple, si vous utilisez un modèle de plongement lexical, entrez un mot pour obtenir son vecteur correspondant.

  5. Intégrez des incorporations à votre application : utilisez les incorporations générées comme fonctionnalités dans votre modèle de machine learning ou à des fins de recherche de similarités, de recommandation, de clustering, etc., selon votre tâche spécifique.

Dans tous les cas d’incorporation, l’idée est de représenter les données dans un espace vectoriel continu où les relations significatives sont conservées. Le processus d’entraînement consiste à ajuster les paramètres du modèle pour minimiser la différence entre les valeurs prévues et réelles suivant la fonction d’objectif choisie. Une fois entraînées, les incorporations peuvent être utilisées pour diverses tâches en aval.

Exemples concrets d’incorporations

Par exemple, l’implémentation de l’incorporation d’OpenAI permet à ChatGPT de comprendre facilement les relations qui unissent différents mots et catégories au lieu d’analyser chaque mot séparément. dont voici quelques exemples :

Traitement automatique du langage naturel (NLP)

 

  • Plongement lexical dans l’analyse des sentiments : les outils de plongement lexical comme Word2Vec ou GloVe sont utilisés pour représenter des mots dans un espace vectoriel continu. Les modèles d’analyse des sentiments peuvent en tirer parti pour comprendre et catégoriser le sentiment d’un texte.

  • BERT pour répondre aux questions : les incorporations BERT sont utilisées dans les systèmes de réponse aux questions. Le modèle peut comprendre le contexte de la question et du document pour extraire les informations pertinentes.

  • Similarité entre les textes avec Doc2Vec : les incorporations Doc2Vec peuvent servir à identifier des documents similaires. Les incorporations de documents sont comparées pour mesurer la similarité sémantique entre eux.

 

Vision par ordinateur

 

  • Classification d’images avec les CNN : les réseaux neuronaux convolutifs (CNN), tels que VGG ou ResNet, sont utilisés pour les tâches de classification des images. Les fonctionnalités de la couche finale ou des couches intermédiaires peuvent servir d’incorporation d’image.

  • Récupération d’images à l’aide de CLIP : le modèle CLIP reconnaît les incorporations conjointes (« joint embeddings ») au niveau des images et du texte. Cela permet par exemple la récupération d’images en fonction de requêtes en langage naturel.

  • Reconnaissance faciale avec FaceNet : FaceNet crée des incorporations pour les visages qui peuvent être utilisés pour la reconnaissance faciale. Elles servent souvent à mesurer la similarité entre différents visages.

 

Systèmes de recommandation

 

  • Filtrage collaboratif avec incorporations : les incorporations sont utilisées pour représenter les utilisateurs et les éléments dans les modèles de filtrage collaboratif. Les méthodes de factorisation matricielle tirent parti de ces incorporations pour formuler des recommandations personnalisées.

  • Recommandations de produits avec plongement lexical : dans le e-commerce, les descriptions de produits ou les avis peuvent être incorporés à l’aide du plongement lexical. Des produits similaires peuvent être recommandés en fonction de la similarité sémantique de leurs incorporations.

 

Utilisations multimodales

 

  • Traduction multimodale avec MUSE : le modèle MUSE (Multilingual Universal Sentence Encoder) permet une compréhension multilingue et multimodale. Il peut être utilisé pour des tâches telles que la traduction de texte d’une langue à l’autre ou la mise en correspondance d’images avec leurs descriptions.

  • Recherche multimodale à l’aide d’incorporations conjointes : les incorporations conjointes sont apprises pour différentes modalités, telles que les images et le texte. Cela permet une recherche multimodale : une requête dans une modalité peut récupérer des résultats dans une autre.

 

Détection des anomalies

 

  • Détection des anomalies du réseau avec incorporation de graphiques : l’incorporation des nœuds du réseau peut être utilisée pour détecter les anomalies. Les altérations dans l’espace d’incorporation peuvent indiquer un comportement inhabituel.

  • Détection de la fraude grâce à l’incorporation des transactions : l’incorporation des données de transaction peut aider à identifier les schémas associés à des activités frauduleuses. Les incorporations inhabituelles peuvent indiquer des transactions potentiellement frauduleuses.

 

Ces exemples mettent en évidence la polyvalence des incorporations dans divers champs d’application, mettant en valeur leur capacité à saisir des représentations et des relations significatives dans différents types de données.

 

Solutions connexes
IBM Natural Language Understanding

IBM Watson Natural Language Understanding utilise l’apprentissage profond pour extraire la signification et les métadonnées des données texte non structurées. L’analyse de texte permet d’extraire des catégories, des classifications, des entités, des mots-clés, des sentiments, des émotions, des relations et des syntaxes.

Explorer NLU

IBM watsonx

Décuplez la puissance de l’IA avec notre plateforme d’IA et de données nouvelle génération. IBM Watsonx est un portefeuille d’applications, de solutions et d’outils prêts à l’emploi conçus pour réduire les coûts et les obstacles liés à l’adoption de l’IA tout en optimisant les résultats de l’IA et en favorisant son utilisation responsable.

Découvrir watsonx

Solutions d’IA d’IBM

Rendez l’IA opérationnelle dans toute votre entreprise pour offrir des avantages de manière rapide et éthique. Notre vaste portefeuille de produits d’IA et de solutions d’analytique professionnels est conçu pour réduire les obstacles à l’adoption de l’IA et créer le bon socle de données, tout en optimisant les résultats et en favorisant une utilisation responsable.

Découvrir les solutions d’IA
Ressources Qu’est-ce que le machine learning ?

Découvrez comment le ML exploite les données et les algorithmes et parcourez ses cas d’utilisation et les préoccupations qu’il soulève afin de favoriser une utilisation responsable et innovante de la technologie.

Grands modèles de langage open source : avantages, risques et types

Découvrez les différents types de grands modèles de langage (LLM) ainsi que leurs avantages, leurs risques et les cas d’utilisation métier des LLM open source pour l’IA générative.

Guide du débutant sur Python

Découvrez les différents types de grands modèles de langage (LLM) ainsi que leurs avantages, leurs risques et les cas d’utilisation métier des LLM open source pour l’IA générative. Ce guide vous présentera certains concepts de base qu’il est important de connaître pour commencer à utiliser ce langage de programmation simple.

Passez à l’étape suivante

Accélérez l’adoption de l’IA générative avec watsonx.ai, un studio de développement d’IA nouvelle génération destiné aux entreprises pour l’entraînement, la validation, le réglage et le déploiement de modèles IA.

Démonstration de watsonx.ai