Aan de slagGa gratis aan de slag

Embedding in PyTorch

PyBooks had succes met een boekaanbevelingssysteem. Maar het houdt geen rekening met sommige semantiek in de tekst. De ingebouwde embeddinglaag van PyTorch kan de relatie tussen woorden rechtstreeks uit data leren en weergeven. Je team is benieuwd naar deze mogelijkheid om het aanbevelingssysteem te verbeteren. Kun jij helpen dit te implementeren?

torch en torch.nn als nn zijn al voor je geïmporteerd.

Deze oefening maakt deel uit van de cursus

Deep Learning voor tekst met PyTorch

Cursus bekijken

Oefeninstructies

  • Koppel een unieke index aan elk woord in words en sla dit op in word_to_idx.
  • Zet word_to_idx om naar een PyTorch-tensor en sla dit op in inputs.
  • InitialiseER een embeddinglaag met het torch-module met tien dimensies.
  • Geef de tensor inputs door aan de embeddinglaag en bekijk de output.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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)
Code bewerken en uitvoeren