Représentations vectorielles continues: traduction dans un espace de dimensions inférieures

Une intégration est un dans un espace de relativement faible dimension que l'on peut traduire des vecteurs de grande dimension. Pour une discussion entre les grandes dimensions et de données de faible dimension, consultez le document Catégorique Données de ce module.

Les représentations vectorielles continues facilitent l'exécution du machine learning sur de grands vecteurs de caractéristiques, tels que comme les vecteurs creux représentant les éléments du repas abordés dans le section précédente. Dans l'idéal, une représentation vectorielle continue capture une partie la sémantique des entrées en plaçant celles dont la signification est plus proche dans l'espace des représentations vectorielles continues. Par exemple, une bonne représentation vectorielle continue placerait mot "voiture" plus près du "garage" que d'« éléphant ». Une représentation vectorielle continue peut être entraînée et réutilisés d'un modèle à l'autre.

Pour vous faire une idée de la façon dont les vecteurs de représentation vectorielle continue représentent des informations, considérez le en suivant une représentation unidimensionnelle des plats hot dog pizza salade, shawarma bortsch, sur une échelle du "moins comme sandwich" à « plus comme un sandwich ». "Sandwicherie" est la dimension unique.

Figure 3. Le long d'un axe de sandwich, du moins au plus grand:
    bortsch, salade, pizza, hot-dog, shawarma.
Figure 3 : Des aliments selon une dimension imaginaire : la "sandwicherie".

Où, sur cette ligne, il faudrait strudel aux pommes chute ? Il pourrait être placé entre hot dog et shawarma. Mais apple le strudel semble également avoir une dimension supplémentaire de sucréité (comme ou le dessert (comme un dessert) qui rend c'est très différent des autres options. La figure suivante illustre en ajoutant un "dessert" dimension:

Figure 4. Même image que précédemment, mais avec un axe vertical de
    des desserts. Le strudel aux pommes se situe entre un hot dog et un shawarma, mais dans une position très élevée
    l'axe horizontal, mais plus haut sur l'axe des desserts.
Figure 4 : Aliments représentés par la "sandwichité" et "dessert".

Une représentation vectorielle continue représente chaque élément dans un espace à n dimensions avec n Nombres à virgule flottante (généralement compris entre -1 et 1 ou entre 0 et 1). Par exemple, la représentation vectorielle continue de la figure 4 représente chaque plat de dans un espace bidimensionnel avec deux coordonnées. L'article "strudel aux pommes" se trouve dans quadrant supérieur droit du graphique auquel on peut attribuer le point (0,5, 0,3), tandis que le terme "hot dog" se trouve dans le quadrant inférieur droit du graphique et se voit attribuer le point (0,2, -0,5).

Dans une représentation vectorielle continue, la distance entre deux éléments quelconques peut être calculée mathématiquement, et peut être interprétée comme la similitude relative de ces deux éléments. Deux objets proches l'un de l'autre, comme shawarma et hot dog de la figure 4, sont plus étroitement liées que deux éléments plus éloignés l'un de l'autre autres, comme apple strudel et borscht.

Notez également que dans l'espace bidimensionnel de la figure 4, apple strudel est beaucoup plus éloigné. entre shawarma et hot dog que dans l'espace unidimensionnel, ce qui correspond Intuition: apple strudel n'est pas aussi semblable à un hot dog ou shawarma qu'à un hot dog chiens et shawarmas sont l’un par rapport à l’autre.

Prenons maintenant le bortsch, qui est beaucoup plus liquide que les autres articles. Ce suggère une troisième dimension, le liquidité (le niveau de liquide des aliments). Une fois cette dimension ajoutée, les éléments pouvaient s'afficher en 3D comme suit:

Figure 5. Même image que précédemment, mais avec un troisième axe de liquide
    orthogonale aux deux autres, et le bortsch se déplaçait loin le long de cet axe.
Figure 5 : Les aliments représentés par « sandwichité », « dessert », et « liquidité ».

Dans cet espace tridimensionnel, tangyuan ? Il est comme le bortsch, ou un dessert, comme le strudel aux pommes. pas un sandwich. Voici un emplacement possible:

Figure 6. Même image qu'avant, mais avec un tangyuan bien placé
    sucré et liquide, et faible sur la sandwich.
Figure 6 : Ajout de tangyuan à l'image précédente, en haut "dessert" et le "liquidation" et peu de "sandwicherie".

Notez la quantité d'informations exprimées dans ces trois dimensions. Vous pouvez imaginer des dimensions supplémentaires, telles que la pertinence ou la participation.

Espaces de représentation vectorielle continue du monde réel

Comme vous l'avez vu dans les exemples d'aliments ci-dessus, même un petit espace multidimensionnel offre la liberté de regrouper des éléments sémantiquement similaires et de garder des éléments dissemblables éloignés les uns des autres. Position (distance et direction) dans le vecteur peut encoder la sémantique dans une bonne représentation vectorielle continue. Par exemple : les visualisations de représentations vectorielles continues réelles illustrent les relations géométriques entre les mots d’un pays et sa capitale. Vous pouvez voir que la distance dans "Canada" à "Ottawa" est à peu près identique à la distance depuis "Turquie" à "Ankara".

Figure 7. Trois exemples de représentations vectorielles continues de mots représentant des mots
      de façon géométrique: le genre (homme/femme et roi/reine sont à peu près
      (la même longueur), du verbe (marcher/marcher et nage/nage sont à peu près)
      d'une même longueur), et les capitales (Turquie/Ankara et Vietnam/Hanoï sont
      à peu près de la même longueur).
Figure 7 : Les représentations vectorielles continues peuvent produire des analogies remarquables.

Un espace de représentation vectorielle continue utile aide un modèle de machine learning à détecter des schémas pendant l'entraînement.

Exercice

Dans cet exercice, vous allez utiliser la fonction Représentation vectorielle continue Projecteur pour visualiser un mot une représentation vectorielle continue appelée word2vec représente numériquement plus de 70 000 mots anglais dans l'espace vectoriel.

Tâche 1

Effectuez les tâches suivantes, puis répondez à la question ci-dessous.

  1. Ouvrez l'outil Embedding Projector.

  2. Dans le panneau de droite, saisissez atom dans le champ Search (Rechercher). Ensuite, Cliquez sur le mot atom dans les résultats ci-dessous (sous 4 correspondances). Votre l'écran doit ressembler à celui de la figure 8.

    Figure 8 : Capture d'écran de l'outil Embedding Projector, avec "atom"
    saisi dans le champ de recherche (entouré en rouge). La visualisation
    le centre de l'outil annote l'un
des points avec le mot « atom »,
    et ajoute également des annotations de mots pour les points à proximité. Dans l’environnement
    points liste, les mots "atomes", "molécules" et "électrons" sont répertoriés
    comme les mots les plus proches du terme "atome" dans l'espace vectoriel.
    Figure 8 : Outil de projection de représentations vectorielles continues, avec le mot "atome" ajoutée dans le champ de recherche (entouré en rouge).
  3. Là encore, dans le panneau de droite, cliquez sur le bouton Isolate 101 points (Isoler 101 points) au-dessus. le champ Search) pour afficher les 100 mots les plus proches de atom. Votre écran doit ressembler à la figure 9.

    Figure 9. Capture d'écran de l'outil Embedding Projector, désormais avec
    "Isoler 101 points" (bouton entouré en rouge). La visualisation
    de la figure 8 est maintenant mis à jour pour n'afficher que le mot "atom" et
    les 100 mots les plus proches dans l'espace vectoriel, y compris les mots « atomes »,
    « noyau » et « particule ».
    Figure 9 : Outil de projection de représentations vectorielles continues, désormais avec l'option "Isoler 101 points" sur laquelle vous avez cliqué (entouré en rouge).

Passez maintenant en revue les mots répertoriés sous Points les plus proches de l'espace d'origine. Comment décririez-vous ces mots ?

Cliquez ici pour consulter la réponse.

La majorité des mots les plus proches sont des mots couramment associés avec le mot "atome", comme la forme plurielle "atomes", et les mots "électron", « molécule », et « noyau ».

Tâche 2

Effectuez les tâches suivantes, puis répondez à la question ci-dessous:

  1. Cliquez sur le bouton Show All Data (Afficher toutes les données) dans le panneau de droite pour réinitialiser les données. de visualisation de la tâche 1.

  2. Dans le panneau de droite, saisissez uranium dans le champ Rechercher. Votre écran doit ressembler à la figure 10.

    Figure 10 : Capture d'écran de l'outil Embedding Projector, avec "uranium"
    saisi dans le champ de recherche. La visualisation au centre du
    l'outil annote l'un des points avec le mot "uranium", et ajoute également
    des annotations de mots pour les points à proximité. Dans la section "Points les plus proches", la liste, les
    les mots "charbon", "isotope", "nickel", "oxyde", "minerai", "zinc" et
    "manganese" sont répertoriés comme les mots les plus proches dans l'espace vectoriel pour
    "uranium".
    Figure 10 : Outil de projection de représentations vectorielles continues, avec le mot "uranium" dans le champ de recherche.

Passez en revue les mots listés sous Points les plus proches de l'espace d'origine. Comment sont-ils différents des mots atom les plus proches ?

Cliquez ici pour consulter la réponse.

L'uranium est un élément radioactif spécifique élément chimique, et la plupart des mots les plus proches sont d'autres éléments, comme zinc, manganèse, cuivre et aluminium.

Tâche 3

Effectuez les tâches suivantes, puis répondez à la question ci-dessous:

  1. Cliquez sur le bouton Show All Data (Afficher toutes les données) dans le panneau de droite pour réinitialiser les données. de visualisation de la tâche 2.

  2. Dans le panneau de droite, saisissez le mot orange dans le champ Rechercher. Votre doit ressembler à la figure 11.

    Figure 11 : Capture d'écran de l'outil Embedding Projector, avec l'icône « orange »
    saisi dans le champ de recherche. La visualisation au centre de l'outil
    annote l'un des points avec le mot « orange », et ajoute également le mot
    des annotations pour les points à proximité. Dans la section "Points les plus proches", liste,
    les mots "jaune", "vert", "bleu", "violet" et "couleurs" sont répertoriés
    les mots les plus proches de "orange" dans l'espace vectoriel.
    Figure 11 : Outil de projection de représentations vectorielles continues, avec le mot « orange » dans le champ de recherche.

Passez en revue les mots listés sous Points les plus proches de l'espace d'origine. Que remarquez-vous concernant les types de mots affichés ici et les types de mots n'apparaît pas ici ?

Cliquez ici pour consulter la réponse.

Presque tous les mots les plus proches sont d'autres couleurs, comme « jaune », « vert », "bleu", "Violet" et "rouge". Un seul des mots les plus proches ("jus de fruit") se référer à l'autre sens du mot (agrumes). Autres fruits que vous pourriez vous attendre à voir, comme "pomme" et « banane », n'a pas fait la liste des aux conditions les plus proches.

Cet exemple illustre l'une des principales lacunes des représentations vectorielles continues statiques comme word2vec. Toutes les significations possibles d'un mot sont représentées par un seul dans l'espace vectoriel. Ainsi, lorsque vous effectuez une analyse de similarité pour "orange", il fait impossible d'isoler les points les plus proches pour une désignation spécifique du mot, comme "orange" (fruit), mais pas "orange" (couleur).