Deep Learning Academy · Pelajaran

Tindan Blok Pengekod Transformer

Perhatian bersama rangkaian suapan hadapan dan norm.

Pelajaran 4 daripada 413 langkah

Tindan Blok Pengekod Transformer ialah pelajaran Deep Learning Academy percuma di CoddyKit. Ini ialah pelajaran 4 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.

Blok Binaan

Transformer hanyalah satu blok pengekod yang diulang. Pelajari blok ini dan anda akan memahami keseluruhan menara, daripada model kecil hingga model gergasi.

Dua Sublapisan

Setiap blok mempunyai dua bahagian: sublapisan perhatian berbilang kepala, kemudian rangkaian suapan hadapan yang kecil. Kedua-duanya dibalut dengan sambungan baki dan penormalan.

Perhatian Dahulu

Blok bermula dengan perhatian kendiri, yang membolehkan setiap token mencampurkan konteks daripada seluruh jujukan sebelum sebarang pemprosesan lanjut.

attn_out, _ = self.attn(x, x, x)

Sambungan Baki

Baki menambah input sublapisan kembali kepada outputnya. Jalan pintas ini membolehkan kecerunan mengalir dan memastikan susunan mendalam boleh dilatih.

x = x + attn_out

Penormalan Lapisan

Selepas baki ditambah, norm lapisan menskalakan semula ciri setiap token kepada taburan yang stabil, lalu menstabilkan latihan merentas lapisan.

x = self.norm1(x)

Rangkaian Suapan Hadapan

Seterusnya ialah rangkaian suapan hadapan mengikut kedudukan: kembangkan kepada saiz tersembunyi yang lebih lebar, gunakan bukan lineariti, kemudian unjurkan kembali ke bawah.

ff = nn.Sequential(nn.Linear(d, 4*d), nn.GELU(), nn.Linear(4*d, d))

Pemprosesan Setiap Token

Lapisan suapan hadapan mengendalikan setiap token secara berasingan. Perhatian berkongsi maklumat; langkah ini memperhalus setiap token secara tersendiri.

Baki dan Norm Kedua

Output suapan hadapan menerima layanan yang sama: penambahan baki serta satu lagi norm lapisan, yang melengkapkan blok.

x = self.norm2(x + ff(x))

Susun secara Mendalam

Susun banyak blok yang serupa dan model membina perwakilan yang lebih kaya lapisan demi lapisan. Kedalamanlah yang menghasilkan kuasa transformer.

layers = nn.ModuleList([Block(d) for _ in range(N)])

Norm Sebelum berbanding Norm Selepas

Banyak model moden menggunakan norm lapisan sebelum setiap sublapisan dan bukannya selepasnya. Pra-norm menjadikan latihan lebih stabil dalam susunan yang sangat dalam.

Gunakan Terbina Dalam

PyTorch menyediakan nn.TransformerEncoderLayer dan nn.TransformerEncoder, jadi anda boleh menyusun keseluruhan susunan hanya dengan beberapa baris.

layer = nn.TransformerEncoderLayer(d_model, nhead)
enc = nn.TransformerEncoder(layer, num_layers=6)

Semakan Pantas

Mari kita ulang kaji bahagian-bahagian blok pengekod.

Imbas Kembali

Anda telah membina blok pengekod: perhatian, baki, normalisasi, suapan ke hadapan, baki, normalisasi. Susun blok ini secara mendalam dan anda mempunyai transformer. Kerja yang mengagumkan!

Percuma untuk bermula

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 “Tindan Blok Pengekod Transformer” percuma?

Ya — teks penuh “Tindan Blok Pengekod Transformer” 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 “Tindan Blok Pengekod Transformer”?

Perhatian bersama rangkaian suapan hadapan dan norm. 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 4 daripada 4.

Berapa lamakah pelajaran “Tindan Blok Pengekod Transformer” 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

  1. Perhatian Kendiri: Query, Key dan Value
  2. Hasil Darab Titik Berskala dan Berbilang Kepala
  3. Pengekodan Kedudukan untuk Susunan
  4. Tindan Blok Pengekod Transformer
← Kembali ke Deep Learning Academy