Embedding avec PyTorch
PyBooks a connu du succès avec un système de recommandation de livres. Cependant, celui-ci ne tient pas compte de certaines informations sémantiques présentes dans le texte. La couche d'embedding intégrée de PyTorch peut apprendre et représenter les relations entre les mots directement à partir des données. Votre équipe souhaite explorer cette capacité pour améliorer le système de recommandation. Pouvez-vous aider à l'implanter?
torch et torch.nn sous le nom nn ont été importés pour vous.
Cette activité fait partie du cours
Apprentissage profond pour le texte avec PyTorch
Instructions de l’exercice
- Associez un indice unique à chaque mot dans
wordset enregistrez le tout dansword_to_idx. - Convertissez
word_to_idxen tenseur PyTorch et enregistrez-le dansinputs. - Initialisez une couche d'embedding en utilisant le module
torchavec dix dimensions. - Transmettez le tenseur
inputsà la couche d'embedding et examinez le résultat.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Map a unique index to each word
words = ["This", "book", "was", "fantastic", "I", "really", "love", "science", "fiction", "but", "the", "protagonist", "was", "rude", "sometimes"]
word_to_idx = {word: ____ for i, word in enumerate(____)}
# Convert word_to_idx to a tensor
inputs = ____.____([word_to_idx[w] for w in words])
# Initialize embedding layer with ten dimensions
embedding = nn.____(num_embeddings=len(words), embedding_dim=____)
# Pass the tensor to the embedding layer
output = embedding(____)
print(output)