Transzformerek és a figyelem mechanizmus · Lecke 03

A figyelem alapötlete (query, key, value)

A figyelem mechanizmus lényege egy egyszerű, hétköznapi kép. Egy szó megkérdezi a többit, hogy melyikük fontos most számára, és a válaszaikból építi fel a saját új megjelenítését. Ez a kérdezés és válasz három szerepre bomlik, ezek a query, a key és a value. Ebben a leckében ezt a hármat járjuk körül, még képlet nélkül.

Vissza a tananyaghoz


Egy keresés, minden szón belül

Képzeljünk el egy keresést. Van egy kérdésünk, és egy csomó címkézett doboz. Minden dobozon van egy címke, amiről el lehet dönteni, mennyire illik a kérdéshez, és minden dobozban van egy tartalom, amit elviszünk, ha a doboz fontosnak bizonyul. A figyelem mechanizmus pontosan így működik, csak nem egy külső keresésnél, hanem magán a mondaton belül. Minden szó feltesz egy kérdést, minden szónak van egy címkéje, és minden szónak van egy tartalma. A kérdés és a címkék illeszkedéséből dől el, melyik szó tartalmából mennyit viszünk tovább.


A keresés képe. Kérdés, címkék és tartalmak Query a kérdés illeszt Key 1 gyenge Key 2 erős Key 3 közepes Value keverék főleg a 2. tartalma
A query illeszkedik a kulcsokhoz. Amelyik kulcs jobban illik, annak a value tartalmából többet viszünk tovább. A kimenet ezek súlyozott keveréke.

A három szerep

A figyelemben minden token három vektort kap, mindegyiket a saját beágyazásából, egy tanult átalakítással. A query az a vektor, amellyel a token kérdez, tehát azt fejezi ki, mire figyel most oda. A key az a vektor, amellyel a token kínálja magát, tehát azt írja le, milyen kérdésekre releváns válasz. A value az a vektor, amelyet a token átad, ha valaki odafigyel rá, tehát a tényleges tartalom, amit tovább viszünk. Ugyanaz a token egyszerre mindhárom szerepben jelen van, mert kérdez is, kínálja is magát, és tartalmat is ad.


  1. QueryA kérdés vektora. Azt fejezi ki, mire figyel most oda az adott token.
  2. KeyA címke vektora. Azt írja le, milyen kérdésre jó válasz ez a token.
  3. ValueA tartalom vektora. Ezt viszi tovább a token, ha figyelmet kap.
  4. Súlyozott keverékA kimenet a value vektorok súlyozott összege, a query és key illeszkedése szerint.

Honnan jön a három vektor

A query, a key és a value nem külön adat, hanem ugyanabból a beágyazás vektorból származik. Minden tokenhez tartozik három tanult súlymátrix, ezek jelölése W-vel a query, key és value irányra. A token beágyazását ezekkel a mátrixokkal megszorozva kapjuk a három vektort. Mivel a súlymátrixok tanult értékek, a modell a tanítás során maga alakítja ki, mire kérdezzen rá egy token, hogyan címkézze magát, és mit adjon tovább. Ez a rugalmasság teszi lehetővé, hogy a figyelem sokféle nyelvi összefüggést megtanuljon.


Egy beágyazásból három vektor, három tanult mátrixszal token beágyazás vektor × W query × W key × W value Query (Q) Key (K) Value (V) A W mátrixok tanult értékek.
A query, a key és a value ugyanabból a beágyazásból jön, három tanult súlymátrixszal. A modell maga alakítja ki, mit jelentsen a három szerep.

Miért erős ez az ötlet

A figyelem ereje abban áll, hogy egy szó a saját új jelentését a többi szó tartalmából állítja össze, méghozzá súlyozva, aszerint hogy melyik mennyire fontos most. Egy névmás így közvetlenül fel tudja venni annak a főnévnek a tartalmát, amelyre utal, akármilyen távol áll is tőle a mondatban. Nincs lánc, nincs sok lépésen át tovább vitt állapot, csak egy közvetlen, súlyozott kapcsolat. A következő leckében ezt a súlyozást pontosan is kiszámoljuk, és megnézzük az önfigyelem képletét lépésről lépésre.


3

Három szerep, egy tokenben. Minden token egyszerre kérdez a query vektorával, kínálja magát a key vektorával, és tartalmat ad a value vektorával. A figyelem ebből a három szerepből építi fel a szavak új, összefüggésbe helyezett megjelenítését.


← Előző lecke Következő lecke →

Workshop

AI Transformation Day

Egésznapos, vezetőknek szóló program. Feltérképezzük, hol tart a szervezet, mi az első reális lépés, és milyen belső feltételek szükségesek a sikerhez. A nap végén konkrét, prioritizált cselekvési lista.

Érdekel a program →