НачатьНачать бесплатно

Эмбеддинг в PyTorch

Компания PyBooks добилась успеха с системой рекомендации книг. Однако она не учитывает семантику текста. Встроенный слой эмбеддинга (векторного представления) PyTorch позволяет обучаться и отражать связи между словами непосредственно на основе данных. Ваша команда хочет изучить эту возможность, чтобы улучшить систему рекомендаций. Попробуете реализовать её?

torch и torch.nn под псевдонимом nn уже импортированы.

Это упражнение является частью курса

Глубокое обучение для работы с текстом на PyTorch

Посмотреть курс

Инструкции к упражнению

  • Сопоставьте каждому слову из words уникальный индекс и сохраните результат в word_to_idx.
  • Преобразуйте word_to_idx в тензор PyTorch и сохраните в inputs.
  • Инициализируйте слой эмбеддинга с помощью модуля torch, используя десять измерений.
  • Передайте тензор inputs в слой эмбеддинга и изучите полученный результат.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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)
Редактировать и запускать код