MulaiMulai sekarang secara gratis

Membuat input embedding

Saatnya mulai membangun model transformer Anda sendiri, dan langkah pertama adalah melakukan embedding pada ID token masukan!

Anda akan mendefinisikan kelas InputEmbeddings dengan parameter berikut:

  • vocab_size: ukuran kosakata model
  • d_model: dimensi embedding masukan

Pustaka torch dan math telah diimpor untuk Anda, begitu juga torch.nn sebagai nn. Pustaka ini akan digunakan sepanjang latihan kursus.

Latihan ini adalah bagian dari kursus

Model Transformer dengan PyTorch

Lihat Kursus

Petunjuk latihan

  • Setel dimensi model dan ukuran kosakata ke argumen d_model dan vocab_size masing-masing.
  • Buat instance layer embedding.
  • Kembalikan embedding yang dikalikan dengan akar kuadrat dari self.d_model.
  • Buat instance InputEmbeddings dengan vocab_size 10.000 dan d_model 512, lalu terapkan pada token_ids.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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)
Edit dan Jalankan Kode