Embeddings en PyTorch
PyBooks tuvo éxito con un sistema de recomendación de libros. Sin embargo, no tiene en cuenta parte de la semántica presente en el texto. La capa de embedding integrada de PyTorch puede aprender y representar la relación entre palabras directamente a partir de los datos. Tu equipo quiere explorar esta capacidad para mejorar el sistema de recomendación de libros. ¿Puedes ayudar a implementarla?
Se han importado torch y torch.nn como nn por ti.
Este ejercicio forma parte del curso
Deep Learning para texto con PyTorch
Instrucciones del ejercicio
- Asigna un índice único a cada palabra en
wordsy guárdalo enword_to_idx. - Convierte
word_to_idxen un tensor de PyTorch y guárdalo eninputs. - Inicializa una capa de embedding usando el módulo
torchcon diez dimensiones. - Pasa el tensor
inputsa la capa de embedding y revisa la salida.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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)