Self-attention: Query, Key ja Value
Antakaa jokaisen tokenin tarkastella jokaista muuta tokenia
Self-attention: Query, Key ja Value on ilmainen Deep Learning Academy-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Deep Learning Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Deep Learning Academy-kurssilla on yhteensä 4 oppituntia.
Tokenit keskustelevat
Sarjassa yhden sanan merkitys riippuu muista sanoista. Itsehuomio antaa jokaisen tokenin tarkastella kaikkia muita tokeneita tarvitsemansa kontekstin keräämiseksi.
Kolme roolia tokenia kohden
Jokaisella tokenilla on kolme roolia: kysymyksen esittävä query, vastaava key ja sisältöä välittävä value. Ne tulevat samasta sanasta, jota käytetään kolmella eri tavalla.
Query
Tokenin query kuvaa sitä, mitä se etsii. Voit ajatella sitä kysymyksenä, jonka tämä sana esittää lauseen muusta osasta.
Key
Jokainen token tarjoaa myös key-avaimen, joka kertoo, mitä se tarjoaa. Queryä verrataan kaikkiin key-avaimiin hyvien osumien löytämiseksi.
Value
Kun osuma löytyy, value on varsinainen eteenpäin välitettävä tieto. Key-avaimet päättävät määrän ja valuet sisällön.
Muodosta Q, K ja V
Muodostat queryt, keyt ja valut projisoimalla syötteen kolmen opitun lineaarisen kerroksen läpi. Sama syöte, kolme erilaista painomatriisia.
q = self.W_q(x)
k = self.W_k(x)
v = self.W_v(x)Pisteytä samankaltaisuuden perusteella
Voit selvittää queryn ja keyn yhteensopivuuden laskemalla niiden pistetulon. Suurempi pistemäärä tarkoittaa, että tokenit ovat toisilleen merkityksellisempiä.
scores = q @ k.transpose(-2, -1)Pistemääristä painoiksi
Raakapistemäärät muuttuvat huomio-painoiksi softmax-funktion avulla, joten kunkin queryn painot ovat positiivisia ja niiden summa on yksi kaikkien key-avainten yli.
weights = scores.softmax(dim=-1)Yhdistä valut
Kunkin tokenin tuloste on kaikkien value-arvojen painotettu summa, joka muodostetaan huomio-painojen avulla. Merkitykselliset tokenit vaikuttavat enemmän.
out = weights @ vMiksi se voittaa RNN:t
Itsehuomio yhdistää mitkä tahansa kaksi tokenia yhdellä askeleella, joten etäisyydellä ei ole merkitystä. Tämä rinnakkainen näkökulma auttaa transformereita käsittelemään pitkää kontekstia tehokkaasti.
Opittu, ei kiinteä
Q-, K- ja V-projektiot koulutetaan gradienttilaskulla. Verkko oppii datasta, mitä kysyä, mitä tarjota ja mitä jakaa.
Pikakertaus
Testataan, miten huomio yhdistää osansa.
Kertaus
Opit, että itsehuomio muuttaa jokaisen tokenin queryksi, keyksi ja valueksi, pisteyttää query-key-osumat ja yhdistää valut softmax-painojen avulla. Hienoa työtä!
Opi Python tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 30
- Oppitunnit
- 120
Usein kysytyt kysymykset
Onko oppitunti ”Self-attention: Query, Key ja Value” ilmainen?
Kyllä – oppitunnin ”Self-attention: Query, Key ja Value” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Deep Learning Academy-kurssin, päivitä CoddyKit PROhon. Deep Learning Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Self-attention: Query, Key ja Value”?
Antakaa jokaisen tokenin tarkastella jokaista muuta tokenia Harjoittelet Deep Learning Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Deep Learning Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Deep Learning Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.
Kuinka kauan ”Self-attention: Query, Key ja Value”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Deep Learning Academy-oppitunnilla?
Kyllä. Jokainen Deep Learning Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Self-attention: Query, Key ja Value
- Skaalattu pistetulo ja multi-head
- Paikkakoodaus järjestystä varten
- Kootkaa transformer-enkooderin lohko