Pozornosťové mechanizmy: ako AI určuje, čo je dôležité

Attention zmenilo AI. Ale čo to vlastne je? Tu je návod, ako mechanizmy pozornosti fungujú a prečo zmenili všetko.

Pozornosťové mechanizmy: ako AI určuje, čo je dôležité

Vývoj, ktorý nikto nečakal

V roku 2017 zmenil AI zásadným spôsobom článok s názvom „Attention Is All You Need". Nie vďaka nejakej exotickej matematike. Vďaka jednoduchej myšlienke: nech sa model rozhodne, čo je dôležité.

Mechanizmy pozornosti. Znejú abstraktne. V skutočnosti sú priamočiare. A umožnili vznik ChatGPT, generátorov obrázkov, všetkej modernej AI, ktorú používate.

Pochopenie pozornosti vám pomôže pochopiť modernú AI. Poďme si to rozobrať.

Problém, ktorý pozornosť rieši

Stará AI (rekurentné siete) spracúvala vstupy sekvenčne. Slovo za slovom. Udržiavala skrytý stav. Informácie prúdili lineárne.

Problém: dlhé sekvencie degradovali. Informácie zo začiatku sa ku koncu vytrácali. Model „zabudol" skorší kontext. To obmedzovalo, čo AI dokázala.

Pozornosť to vyriešila. Jednoduchý koncept: pozrieť sa na všetky vstupy súčasne. Určiť, ktoré časti sú dôležité pre ktoré výstupy. Následne ich príslušne vážiť.

Žiadne sekvenčné spracovanie. Žiadna degradácia informácií. Plný kontext vždy k dispozícii. Revolučné.

Pozornosť odstraňuje rekurentné úzke miesto: aktuálny token môže preskúmať celú vetu namiesto toho, aby zdedil vyblednutý súhrn.

Čo pozornosť v skutočnosti robí

Pozornosť je vážený priemer. To je všetko.

Máte vstupy. Chcete spracovať jeden z nich. Ale správny spôsob spracovania závisí od všetkých ostatných vstupov. Pozornosť zistí, nakoľko každý vstup prispieva k spracovaniu aktuálneho.

Príklad: Preklad

Preklad vety „The cat sat on the mat" do francúzštiny. Pri preklade slova „sat", ktoré anglické slová sú najdôležitejšie?

„The" je dôležité trochu (rod). „Cat" je dôležité veľmi (podmet). „Sat" je najdôležitejšie (samotné slovo). „On" je dôležité čiastočne (kontext). Ostatné menej.

Pozornosť vypočíta tieto váhy. Potom skombinuje vstupy podľa týchto váh. Vážený priemer vám dá najlepšiu reprezentáciu na preklad slova „sat".

Urobte to pre každé slovo. V každej vrstve. To je pozornosť.

Pre jeden cieľový token je pozornosť váženou zmesou hodnôt: „cat" a „sat" dominujú, zatiaľ čo okolité slová stále prispievajú kontextom.

Ako pozornosť v skutočnosti funguje

Tri kroky: Query, Key, Value. Znie to zložito. Nie je.

Krok 1: Vytvorenie Query, Key, Value

Pre každý vstup vytvorte tri vektory:

- Query: „Čo hľadám?"

- Key: „Čo ponúkam?"

- Value: „Tu sú moje skutočné informácie"

Sú to len lineárne transformácie vstupu. Maticové násobenia. Nič zložité.

Krok 2: Výpočet váh pozornosti

Pre každý query ho porovnajte so všetkými key. Skalárny súčin meria podobnosť. Podobný query a key = vysoké skóre. Odlišné = nízke skóre.

Aplikujte softmax. Prevedie skóre na pravdepodobnosti. Teraz máte váhy pozornosti. Ich súčet je 1.

Krok 3: Vážený priemer hodnôt

Použite váhy pozornosti na spriemerovanie hodnôt. Vysoká váha = väčší vplyv. Nízka váha = menší vplyv.

Výsledok: nová reprezentácia pre každý vstup, ovplyvnená všetkými ostatnými vstupmi, vážená podľa relevantnosti.

To je pozornosť. Podobnosť dopytu a kľúča určuje váhy. Váhy kombinujú hodnoty. Hotovo.

Self-pozornosť vs. krížová pozornosť

Dva typy pozornosti slúžia na rôzne účely:

Self-pozornosť:

Vstupy si všímajú samy seba. Každé slovo sa pozerá na všetky ostatné slová v tej istej vete. Určuje, ktoré slová sú dôležité na pochopenie každého slova.

Príklad: „Zviera neprešlo cez cestu, pretože bolo príliš unavené.“ Na čo odkazuje „bolo“? Self-pozornosť to zistí tak, že sa silne zameria na „zviera“.

Krížová pozornosť:

Jedna sekvencia si všíma inú. Preklad: francúzske slová si všímajú anglické slová. Popis obrázkov: slová popisu si všímajú oblasti obrázka.

Rôzne sekvencie. Dopyty z jednej, kľúče a hodnoty z druhej. Spája rôzne modality alebo jazyky.

Viachlavová pozornosť (viacero perspektív)

Jedna hlava pozornosti = jedna perspektíva. Viac hláv = viacero perspektív súčasne.

Namiesto jednej sady dopytov, kľúčov a hodnôt vytvoríte viacero sád. Každá hlava sa učí iné vzory.

Hlava 1 sa môže naučiť syntaktické vzťahy (podmet a prísudok). Hlava 2 sa môže naučiť sémantické vzťahy (významy slov). Hlava 3 sa môže naučiť pozičné vzory.

Spojte všetky hlavy. Teraz máte viacero perspektív na tie isté vstupy. Bohatšia reprezentácia. Lepšie pochopenie.

Transformery zvyčajne používajú 8 až 16 hláv. Každá hlava má 1/8 alebo 1/16 veľkosti plnej dimenzie modelu. Výpočtové náklady zostávajú zvládnuteľné.

Výpočtové náklady

Pozornosť je výkonná. Tiež drahá.

Zložitosť: O(n²)

Každý vstup si všíma každý iný vstup. Pre n vstupov to je n² porovnaní. Kvadratická zložitosť.

Zdvojnásobte dĺžku sekvencie a výpočet sa zoštvornásobí. Preto sú kontextové okná obmedzené. Nejde len o pamäť. Výpočet exploduje.

Príklad:

1 000 tokenov: 1 milión operácií

10 000 tokenov: 100 miliónov operácií

100 000 tokenov: 10 miliárd operácií

Pozornosť je úzke miesto pre dlhé kontexty. Rôzne techniky (riedka pozornosť, lineárna pozornosť) sa to snažia riešiť. Nanajvýš čiastočné riešenia.

Prečo pozornosť zmenila všetko

Pred pozornosťou: sekvenčné spracovanie, obmedzený kontext, degradácia informácií.

Po pozornosti: paralelné spracovanie, plný kontext, žiadna degradácia.

To umožnilo:

  • Lepšie jazykové modely: Dokážu pochopiť dlhé dokumenty. Žiadne obmedzenie kontextu zo sekvenčného spracovania. BERT, GPT, všetky používajú pozornosť.
  • Lepší preklad: Dokážu sa zamerať na relevantné slová zdrojového jazyka. Bez ohľadu na to, ako ďaleko sú od seba. Kvalita sa výrazne zlepšila.
  • Vision Transformery: Pozornosť funguje na častiach obrázkov. Konkurencieschopné s CNN v mnohých úlohách. Jednotná architektúra pre víziu a jazyk.
  • Multimodálne modely: Text si všíma obrázky. Obrázky si všímajú text. Krížové chápanie modalít. CLIP, DALL-E, všetky používajú pozornosť.

Pozornosť je základ moderného AI. Všetko na nej stavia.

Prelomom bolo architektonické znovupoužitie: keď bol plný kontext paralelný, jazykové, prekladové, vizuálne a multimodálne systémy mohli zdieľať rovnakú dráhu.

Pozornosť v architektúre Dweve

Tradičná pozornosť je založená na pohyblivej rádovej čiarke. Drahá. Ale koncept sa vzťahuje aj na systémy založené na obmedzeniach.

PAP (Permuted Agreement Popcount):

Naša verzia pozornosti pre binárne vzory. Namiesto skalárnych súčinov používame XNOR a popcount. Namiesto softmaxu používame štatistické hranice.

Rovnaký koncept: určiť, ktoré vzory sú dôležité. Iná implementácia: binárne operácie namiesto pohyblivej rádovej čiarky.

Výsledok: výber podobný pozornosti za zlomok výpočtových nákladov. Ktorí experti sú relevantní? PAP to určí. Efektívne.

Čo Si Potrebujete Zapamätať

  • 1. Pozornosť je vážené priemerovanie. Určte relevantnosť, podľa toho vážte vstupy, skombinujte. Jednoduchý koncept, silné výsledky.
  • 2. Mechanizmus Query-Key-Value. Query sa pýta, Keys odpovedajú, Values poskytujú informácie. Podobnosť určuje váhy.
  • 3. Sebapozornosť vs. krížová pozornosť. Sebapozornosť: vstupy venujú pozornosť samy sebe. Krížová: jedna sekvencia venuje pozornosť druhej.
  • 4. Multi-head zachytáva viacero perspektív. Rôzne hlavy sa učia rôzne vzory. V kombinácii poskytujú bohaté porozumenie.
  • 5. Výpočtové náklady sú O(n²). Kvadratická zložitosť obmedzuje dĺžku kontextu. Úzke hrdlo pre dlhé sekvencie.
  • 6. Pozornosť umožnila modernú AI. Transformers, GPT, BERT, vision transformers. Všetko postavené na pozornosti.
  • 7. Existujú binárne alternatívy. PAP poskytuje výber podobný pozornosti pomocou binárnych operácií. Rovnaký koncept, iná implementácia.
PAP si zachováva myšlienku výberu podľa relevantnosti z pozornosti, ale namiesto skalárnych súčinov a softmaxu používa binárnu zhodu a štatistické hranice.

Zrátané a podčiarknuté

Pozornosť je najdôležitejšia inovácia v AI za posledné desaťročie. Jednoduchá myšlienka: nechajte model rozhodnúť, čo je dôležité. Hlboký vplyv: umožnila každý moderný AI systém, ktorý používate.

Nie je to mágia. Je to vážené priemerovanie založené na naučenej podobnosti. Zhoda query a kľúča určuje váhy. Váhy kombinujú hodnoty. Opakujte pre každý vstup, každú vrstvu.

Výpočtové náklady sú reálne. O(n²) obmedzuje, aké dlhé môžu byť sekvencie. Ale v rámci týchto limitov poskytuje pozornosť bezprecedentnú schopnosť porozumieť kontextu.

Porozumieť pozornosti znamená porozumieť modernej architektúre AI. Všetko ostatné je postavené na tomto základe. Zvládnite toto a zvyšok bude dávať zmysel.

Chcete efektívny výber podobný pozornosti? Preskúmajte mechanizmus PAP od Dweve. Binárne porovnávanie vzorov so štatistickými hranicami. Výber expertov za zlomok nákladov tradičnej pozornosti. Taký druh určovania relevantnosti, ktorý funguje vo veľkom meradle.