Deep Learning Academy · Pelajaran

Perhatian Kendiri: Query, Key dan Value

Benarkan setiap token melihat semua token lain.

Pelajaran 1 daripada 413 langkah

Perhatian Kendiri: Query, Key dan Value ialah pelajaran Deep Learning Academy percuma di CoddyKit. Ini ialah pelajaran 1 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.

Token yang Berkomunikasi

Dalam sesuatu jujukan, makna satu perkataan bergantung pada perkataan lain. Perhatian kendiri membolehkan setiap token melihat setiap token lain untuk mengumpulkan konteks yang diperlukannya.

Tiga Peranan bagi Setiap Token

Setiap token memainkan tiga peranan: pertanyaan yang bertanya, kunci yang menjawab dan nilai yang membawa kandungan. Semua ini berasal daripada perkataan yang sama, tetapi digunakan dalam tiga cara.

Pertanyaan

Pertanyaan sesuatu token menerangkan perkara yang sedang dicari olehnya. Anggaplah ia sebagai soalan yang ditanyakan oleh perkataan ini tentang bahagian ayat yang lain.

Kunci

Setiap token turut mendedahkan kunci, iaitu label yang mengiklankan perkara yang ditawarkannya. Pertanyaan dibandingkan dengan semua kunci untuk mencari padanan yang baik.

Nilai

Apabila padanan ditemui, nilai ialah maklumat sebenar yang dihantar. Kunci menentukan jumlahnya, manakala nilai menentukan kandungannya.

Bina Q, K, V

Anda membina pertanyaan, kunci dan nilai dengan mengunjurkan input melalui tiga lapisan linear yang dipelajari. Input sama, tetapi tiga matriks pemberat yang berbeza.

q = self.W_q(x)
k = self.W_k(x)
v = self.W_v(x)

Skor berdasarkan Keserupaan

Untuk melihat sejauh mana pertanyaan sepadan dengan kunci, ambil hasil darab titik kedua-duanya. Skor yang lebih besar bermaksud kedua-dua token lebih berkaitan antara satu sama lain.

scores = q @ k.transpose(-2, -1)

Daripada Skor kepada Pemberat

Skor mentah menjadi pemberat perhatian dengan softmax, jadi pemberat bagi setiap pertanyaan adalah positif dan jumlahnya menjadi satu merentas semua kunci.

weights = scores.softmax(dim=-1)

Gabungkan Nilai

Output bagi setiap token ialah jumlah berwajaran semua nilai yang digabungkan mengikut pemberat perhatian. Token yang berkaitan menyumbang lebih banyak.

out = weights @ v

Mengapa Mengatasi RNN

Perhatian kendiri menghubungkan mana-mana dua token dalam satu langkah, jadi jarak tidak penting. Pandangan selari inilah sebab transformer mengendalikan konteks panjang dengan begitu baik.

Dipelajari, Bukan Tetap

Unjuran Q, K, V dilatih melalui penurunan kecerunan. Rangkaian belajar perkara yang perlu ditanya, diiklankan dan dikongsi, semuanya daripada data.

Semakan Ringkas

Mari uji cara perhatian menggabungkan bahagian-bahagiannya.

Rumusan

Anda telah belajar bahawa perhatian kendiri menukar setiap token menjadi pertanyaan, kunci dan nilai, memberikan skor pada padanan pertanyaan-kunci, serta menggabungkan nilai menggunakan pemberat softmax. Syabas!

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 “Perhatian Kendiri: Query, Key dan Value” percuma?

Ya — teks penuh “Perhatian Kendiri: Query, Key dan Value” 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 “Perhatian Kendiri: Query, Key dan Value”?

Benarkan setiap token melihat semua token lain. 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 1 daripada 4.

Berapa lamakah pelajaran “Perhatian Kendiri: Query, Key dan Value” 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