Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
L'algorithme Amazon SageMaker AI Object2Vec est un algorithme d'intégration neuronale à usage général hautement personnalisable. Il peut apprendre les intégrations denses à faible dimension des objets à haute dimension. Les intégrations sont apprises de manière à ce que la sémantique de la relation entre les paires d'objets de l'espace d'origine soit conservée dans le script d'intégration. Vous pouvez utiliser les intégrations apprises pour, par exemple, calculer efficacement les voisins les plus proches d'objets et visualiser les clusters naturels d'objets connexes dans l'espace à faible dimension. Vous pouvez également utiliser les intégrations comme caractéristiques des objets correspondants des tâches supervisées en aval, telles que la classification ou la régression.
Object2Vec généralise la célèbre technique d'intégration Word2Vec pour les mots optimisés dans l'IA. SageMaker BlazingText algorithme Pour un article de blog expliquant comment appliquer Object2Vec à certains cas d'utilisation pratiques, consultez Introduction à Amazon SageMaker
Rubriques
Interface d'entrée/sortie pour l'algorithme Object2Vec
Vous pouvez utiliser Object2Vec sur différents types de données d'entrée, y compris les éléments suivants :
Type de données d'entrée | exemple |
---|---|
Paires phrase-phrase |
« Un match de foot avec plusieurs hommes qui jouent. » et « Certains hommes font du sport. » |
Paire étiquettes-séquence |
Les balises de genre du film « Titanic », par exemple « ROMANCE » et « Drame » et sa brève description : « Titanic de James Cameron est un film d'action romantique et épique qui raconte l'histoire tragique du navire Titanic. Ce navire de croisière était le plus luxueux de son époque, un bateau de rêve, qui a mené plus de 1 500 personnes à la mort dans les eaux glacées de l'Atlantique Nord aux premières heures du jour du 15 avril 1912. » |
Paires client-client |
L'ID client Jane et ID client Jackie. |
Paires produit-produit |
L'ID produit football et l'ID produit basket-ball |
Paires utilisateur-élément de révision d'élément |
Un ID d'utilisateur et les éléments qu'elle a achetés, tels que des pommes, des poires et des oranges. |
Pour transformer les données d'entrée dans les formats pris en charge, vous devez les prétraiter. De façon native, Object2Vec prend actuellement en charge deux types d'entrée :
-
Un jeton discret, qui est représenté sous la forme d'une liste d'un seul
integer-id
. Par exemple,[10]
. -
Une séquence de jetons discrets, qui est représentée sous la forme d'une liste de
integer-ids
. Par exemple,[0,12,10,13]
.
L'objet de chaque paire peut être asymétrique. Par exemple, les paires peuvent être (jeton, séquence) ou (jeton, jeton) ou (séquence, séquence). Pour les entrées de jeton, l'algorithme prend en charge les intégrations simples comme encodeurs compatibles. Pour les séquences de vecteurs de jetons, l'algorithme prend en charge les éléments suivants comme encodeurs :
-
Moyenne des intégrations de pools
-
réseaux neuronaux convolutifs hiérarchiques ()CNNs,
-
Mémoire bidirectionnelle multicouche à long terme (Bi) LSTMs
L'étiquette d'entrée pour chaque paire peut être l'une des actions suivantes :
-
Une étiquette de catégorie qui exprime la relation entre les objets dans la paire
-
Un score qui exprime la puissance de la similarité entre les deux objets
Pour les étiquettes de catégorie utilisées dans la classification, l'algorithme prend en charge la fonction perte entropie croisée. Pour les étiquettes basées sur les évaluations/scores utilisées dans la régression, l'algorithme prend en charge la fonction d'erreur quadratique moyenne. Spécifiez ces fonctions de perte avec l'hyperparamètre output_layer
lorsque vous créez la tâche d'entraînement du modèle.
EC2 Recommandation d'instance pour l'algorithme Object2Vec
Le type d'instance Amazon Elastic Compute Cloud (Amazon EC2) que vous utilisez varie selon que vous vous entraînez ou que vous exécutez une inférence.
Lors de l'entraînement d'un modèle à l'aide de l'algorithme Object2Vec sur une UC, commencez par une instance ml.m5.2xlarge. Pour les entraînements sur un GPU, commencez par une instance ml.p2.xlarge. Si l'entraînement prend trop de temps sur cette instance, vous pouvez utiliser une instance plus grande. Actuellement, l'algorithme Object2Vec permet d'entraîner sur une seule machine. Cependant, il offre un support pour plusieurs GPUs. Object2Vec prend en charge les familles d'instances de GPU P2, P3, G4dn et G5 pour l'entraînement et l'inférence.
Pour une inférence dotée d'un modèle Object2Vec entraîné qui comporte un réseau de neurones profond, nous vous recommandons d'utiliser l'instance GPU ml.p3.2xlarge. La mémoire GPU étant faible, la variable d'environnement INFERENCE_PREFERRED_MODE
peut être spécifiée pour déterminer si le réseau d'inférence Optimisation du GPU : classification ou régression ou Optimisation du GPU : intégrations de l'encodeur doit être chargé dans le GPU.
Exemples de blocs-notes Object2Vec
Note
Pour exécuter les blocs-notes sur une instance de bloc-notes, consultez Accédez à des exemples de blocs-notes. Pour exécuter les blocs-notes sous Studio, consultez Création ou ouverture d'un bloc-notes Amazon SageMaker Studio Classic.