nn.Embedding: Vektor Perkataan yang Boleh Dipelajari
Jadual carian yang dilatih melalui penurunan kecerunan.
nn.Embedding: Vektor Perkataan yang Boleh Dipelajari ialah pelajaran Deep Learning Academy percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Deep Learning Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Deep Learning Academy merangkumi sejumlah 4 pelajaran.
Id Sahaja Tidak Mencukupi
Id token hanyalah label. Id 5 tidak lebih besar daripada 2 dalam apa-apa makna yang berguna, jadi memasukkan id mentah ke dalam rangkaian boleh mengelirukannya.
One-Hot Membazirkan Ruang
Satu cara untuk mewakili id ialah vektor one-hot yang sangat besar, tetapi dengan ribuan perkataan, vektor itu besar, berselerak dan tidak membawa sebarang persamaan.
Memperkenalkan Embedding
Embedding memetakan setiap id kepada vektor padat pendek yang terdiri daripada nombor perpuluhan. Beberapa nombor ini boleh mengekod makna yang kaya tentang perkataan tersebut.
Ia Ialah Jadual Carian
Anggap nn.Embedding sebagai jadual carian: baris i menyimpan vektor untuk id token i. Pengindeksan jadual akan mendapatkan baris itu.
import torch.nn as nn
emb = nn.Embedding(num_embeddings=1000, embedding_dim=16)Dua Argumen Utama
Tetapkan num_embeddings kepada saiz kosa kata anda dan embedding_dim kepada bilangan nombor yang disimpan oleh setiap vektor perkataan.
Cari Satu Perkataan
Hantar tensor id dan lapisan itu mengembalikan vektor yang sepadan. Sekumpulan id terus menjadi sekumpulan vektor padat.
ids = torch.tensor([1, 5, 2])
vecs = emb(ids) # shape (3, 16)Bentuk Output Menambah Satu Dimensi
Embedding menambah satu dimensi tambahan. Input berbentuk (batch, length) menjadi (batch, length, embedding_dim).
Vektor Bermula Secara Rawak
Pada awalnya, baris embedding adalah rawak. Baris-baris itu belum mempunyai makna, sebaliknya hanyalah hingar yang menunggu untuk dibentuk melalui latihan.
Vektor Itu Boleh Dilatih
Pemberat embedding ialah parameter. Penurunan kecerunan mengubah sedikit setiap vektor perkataan semasa latihan, lalu jadual itu belajar mengikut masa.
Memilih Dimensi
embedding_dim yang lebih besar boleh menangkap nuansa yang lebih banyak tetapi menggunakan lebih banyak memori. Tugasan kecil menggunakan 16 hingga 100; model bahasa besar menggunakan jauh lebih banyak.
Masukkannya ke dalam Model
Embedding biasanya merupakan lapisan pertama. Lapisan ini menukarkan id kepada vektor, kemudian lapisan seterusnya memproses vektor tersebut seperti biasa.
Semakan Pantas
Bagaimanakah nn.Embedding menukarkan id token kepada vektor?
Imbas Kembali
nn.Embedding ialah jadual carian boleh latih yang memetakan id kepada vektor padat. Ia bermula secara rawak dan mempelajari makna melalui latihan. ✅
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Soalan Lazim
Adakah pelajaran “nn.Embedding: Vektor Perkataan yang Boleh Dipelajari” percuma?
Ya — teks penuh “nn.Embedding: Vektor Perkataan yang Boleh Dipelajari” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Deep Learning Academy, tingkat taraf kepada CoddyKit PRO. Kursus Deep Learning Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “nn.Embedding: Vektor Perkataan yang Boleh Dipelajari”?
Jadual carian yang dilatih melalui penurunan kecerunan. Anda berlatih Deep Learning Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Deep Learning Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Deep Learning Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “nn.Embedding: Vektor Perkataan yang Boleh Dipelajari” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Deep Learning Academy ini?
Ya. Setiap pelajaran Deep Learning Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Tokenkan dan Bina Perbendaharaan Kata
- nn.Embedding: Vektor Perkataan yang Boleh Dipelajari
- Mengapa Embedding Menangkap Makna
- Latih Pengelas Teks