Miért kell a sorrend
A figyelem mechanizmus minden pozíciót egyformán kezel. Ha felcserélnénk két szót a mondatban, a figyelem önmagában ugyanazokat a súlyokat számolná, mert nem tud a helyükről. A nyelvben viszont a sorrend jelentést hordoz. A kutya megharapta az embert és az ember megharapta a kutyát ugyanazokból a szavakból áll, mégis mást jelent. Ezért a transzformernek külön be kell építenie a pozíció információját. Ezt úgy teszi, hogy minden beágyazás vektorhoz hozzáad egy pozíciófüggő vektort, a pozíciókódolást.
Szinusz és koszinusz alapú kódolás
A tanulmány szinusz és koszinusz függvényekből építi fel a pozíciókódolást. Minden pozícióhoz és a vektor minden dimenziójához egy hullámérték tartozik. A páros indexű dimenziókban szinusz, a páratlanokban koszinusz szerepel, és a hullámok frekvenciája dimenziónként változik, egy 10000 alapú léptékkel. A pos a szó helye a sorozatban, az i a dimenzió indexe, a d_model pedig a vektor teljes hossza.
A kis indexű dimenziók lassan változó, hosszú hullámai a durva helyzetet írják le, a nagy indexűek gyors hullámai a finom helyzetet. Együtt minden pozícióhoz egyedi mintázatot adnak, amelyet a modell fel tud használni. Mivel a kódolás egy szabályos függvény, a modell a relatív távolságokat is meg tudja tanulni belőle.
A mély háló másik gondja
A transzformer nem egyetlen figyelemből áll, hanem sok réteget fűz egymásra. Az alapmodellben az enkóder és a dekóder is N = 6 azonos rétegből épül fel. Ha sok réteget rakunk egymásra, a tanulás jelei, a gradiensek, útközben elgyengülhetnek, és a mély háló nehezen tanul. Erre két kiegészítés ad választ, a maradékkapcsolat (residual connection) és a rétegnormalizálás (layer normalization). Ez a kettő minden alréteg köré beépül, és együtt teszi lehetővé, hogy a mély transzformer stabilan taníthatóvá váljon.
Maradékkapcsolat és rétegnormalizálás
A maradékkapcsolat lényege, hogy egy alréteg bemenetét hozzáadjuk a kimenetéhez. Így a réteg nem a teljes új megjelenítést tanulja meg, csak azt, mennyivel változtat a bemeneten. Ez a hozzáadott út közvetlen utat ad a gradiensnek visszafelé, ezért a mély háló könnyebben tanul. A rétegnormalizálás ezután az összeget egységes eloszlásra hozza, hogy az értékek ne szaladjanak el. A tanulmány minden alréteg köré ezt a mintát építi, amelyet így írhatunk le.
Hat réteg egymáson. Az alapmodell enkódere és dekódere is hat azonos rétegből áll. Ilyen mélységben a maradékkapcsolat és a rétegnormalizálás nélkül a háló nehezen tanulna. Ez a két kiegészítés teszi a mély transzformert stabilan taníthatóvá.
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 →