Inbäddning i PyTorch
PyBooks har nått framgång med ett bokrekommendationssystem, men det tar inte hänsyn till en del av den semantik som finns i texten. PyTorchs inbyggda inbäddningslager (embedding layer) kan lära sig och representera relationer mellan ord direkt från data. Ditt team vill undersöka den här möjligheten för att förbättra rekommendationssystemet. Kan du hjälpa till att implementera det?
torch och torch.nn som nn har redan importerats.
Den här övningen är en del av kursen
Djupinlärning för text med PyTorch
Övningsinstruktioner
- Mappa ett unikt index till varje ord i
wordsoch spara resultatet iword_to_idx. - Konvertera
word_to_idxtill en PyTorch-tensor och spara den iinputs. - Initiera ett inbäddningslager med
torch-modulen och tio dimensioner. - Skicka
inputs-tensorn till inbäddningslagret och granska utdata.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)