ПочатиПочніть безкоштовно

Створення вхідних вкладень

Час почати створювати власну модель трансформера, і перший крок — вбудувати ідентифікатори вхідних токенів!

Ви визначите клас InputEmbeddings з такими параметрами:

  • vocab_size: розмір словника моделі
  • d_model: розмірність вхідних вкладень

Бібліотеки torch і math вже імпортовано, а також torch.nn як nn. Вони будуть доступні впродовж усіх вправ курсу.

Ця вправа є частиною курсу

Моделі Transformer з PyTorch

Переглянути курс

Інструкції до вправи

  • Присвойте розмірність моделі та розмір словника аргументам d_model і vocab_size відповідно.
  • Ініціалізуйте шар вкладень.
  • Поверніть вкладення, помножені на квадратний корінь із self.d_model.
  • Створіть InputEmbeddings з vocab_size 10 000 і d_model 512 та застосуйте його до token_ids.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

class InputEmbeddings(nn.Module):
    def __init__(self, vocab_size: int, d_model: int) -> None:
        super().__init__()
        # Set the model dimensionality and vocabulary size
        self.d_model = ____
        self.vocab_size = ____
        # Instantiate the embedding layer
        self.embedding = ____

    def forward(self, x):
        # Return the embeddings multiplied by the square root of d_model
        return ____

# Instantiate InputEmbeddings and apply it to token_ids
embedding_layer = ____
output = ____
print(output.shape)
Редагувати та запускати код