banner

Nouvelles

Jul 09, 2023

Modèle de sac de mots en PNL expliqué

Le modèle du sac de mots est un moyen particulièrement simple de représenter un document sous forme numérique avant de pouvoir l'introduire dans un algorithme d'apprentissage automatique. Pour toute tâche de traitement du langage naturel, nous avons besoin d’un moyen d’y parvenir avant tout traitement ultérieur. Les algorithmes d’apprentissage automatique ne peuvent pas fonctionner sur du texte brut ; nous devons convertir le texte en une sorte de représentation numérique. Ce processus est également appelé intégration du texte.

Il existe deux approches de base pour intégrer un texte : les vecteurs de mots et les vecteurs de documents. Avec les vecteurs de mots, nous représentons chaque mot individuel du texte comme un vecteur (c'est-à-dire une séquence de nombres). Nous convertissons ensuite l'ensemble du document en une séquence de ces vecteurs de mots. Les vecteurs de document, quant à eux, intègrent l’intégralité du document en un seul vecteur. C’est en réalité beaucoup plus simple que d’intégrer chaque mot individuellement. Cela permet également d'intégrer tous nos documents dans la même taille, ce qui est pratique puisque de nombreux algorithmes d'apprentissage automatique nécessitent une entrée de taille fixe.

Le modèle du sac de mots est un moyen simple de convertir des mots en représentation numérique dans le traitement du langage naturel. Ce modèle est une technique simple d'intégration de documents basée sur la fréquence des mots. Conceptuellement, nous considérons l’ensemble du document comme un « sac » de mots plutôt que comme une séquence. Nous représentons le document simplement par la fréquence de chaque mot. Grâce à cette technique, nous pouvons intégrer tout un ensemble de documents et les alimenter dans une variété d’algorithmes d’apprentissage automatique différents.

Le modèle du sac de mots est une technique simple d’intégration de documents basée sur la fréquence des mots. Conceptuellement, nous considérons l’ensemble du document comme un « sac » de mots plutôt que comme une séquence. Nous représentons le document simplement par la fréquence de chaque mot. Par exemple, si nous avons un vocabulaire de 1 000 mots, alors l'ensemble du document sera représenté par un vecteur à 1 000 dimensions, où la ième entrée du vecteur représente la fréquence du ième mot de vocabulaire dans le document.

Grâce à cette technique, nous pouvons intégrer tout un ensemble de documents et les alimenter dans une variété d’algorithmes d’apprentissage automatique différents. Cette intégration étant si basique, elle ne fonctionne pas très bien pour les tâches complexes. Mais c’est le cas pour des problèmes de classification simples, et sa simplicité et sa facilité d’utilisation en font un choix attrayant. Examinons les détails.

Plus de Noah TopperFonction d'activation sigmoïde : une introduction

À titre d'exemple de jouet, supposons que nos documents aient un petit vocabulaire. Par exemple, le livre du Dr Seuss, Green Eggs and Ham, ne contient que cinquante mots uniques. Par ordre alphabétique, ce sont : a, suis et, n'importe où, sont, être, bateau, boîte, voiture, pourrait, sombre, faire, manger, œufs, renard, chèvre, bon, vert, jambon, ici, maison, je , si, dans, laisse, comme, peut, moi, souris, pas, sur ou, pluie, Sam, dis, vois, alors, merci, que, les, eux, là, ils, s'entraînent, arbre, essaient, vont , avec, serait, et toi.

Si nous traitons chaque page du livre comme un document unique, nous pouvons intégrer chacune d’elles sous forme de vecteur à 50 dimensions. Considérez la page qui dit :

Je ne les voudrais pas ici ou là.

Je ne les voudrais nulle part.

Je n'aime pas les œufs verts et le jambon.

Je ne les aime pas, Sam-je-le suis.

La première étape consiste à compter la fréquence de chaque mot de vocabulaire. « suis » apparaît une fois, « et » une fois, « n'importe où » une fois, « faire » deux fois, « œufs » une fois, « vert » une fois, « jambon » une fois, « ici » une fois, « Je "cinq fois", "j'aime" quatre fois, "pas" quatre fois, "ou" une fois, "Sam" une fois, "eux" trois fois, "là" une fois et "je le ferais" deux fois. Un mot de vocabulaire sur deux apparaît zéro fois.

Pour transformer cela en un vecteur à 50 dimensions, nous définissons la ième entrée égale à la fréquence du ième mot de vocabulaire. Par exemple, « am » est le deuxième mot de vocabulaire et apparaît une fois dans le document, la deuxième entrée en sera donc une. Par contre, « a » est le premier mot du vocabulaire, et il n'apparaît pas du tout ici, donc la première entrée sera zéro. La page entière sous forme vectorielle devient : [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 0, 0, 0, 1, 1, 1, 0 , 5, 0, 0, 0, 4, 0, 0, 0, 4, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0 , 0, 0, 2, 0].

PARTAGER