Ordinea cuvintelor
În mecanismul pur de atenție nu există noțiunea de timp sau spațiu: fără un ghid suplimentar, modelul consideră identice frazele „câinele a mușcat omul” și „omul a mușcat câinele”. Pentru a deosebi ordinea firească a gândurilor, fiecare cuvânt primește un număr de loc sau o amprentă temporală — de la acele unui ceasornic sinusoidal până la rotația geometrică modernă a vectorilor.
Termeni: invarianță la permutare codificare pozițională unde sinusoidale (ceasornic cu frecvențe) distanță relativă codificare rotativă (RoPE)
Marea slăbiciune a atenției: sacul de cuvinte dezordonate
Atenția calculează potrivirea dintre o întrebare și toate cheile disponibile, convertește scorurile în ponderi și adună valorile rezultate. Observați însă un detaliu surprinzător: în toată această înlănțuire de operații nu apare nicăieri poziția fizică a cuvântului în frază! Întrucât adunarea este o operație comutativă (2 + 3 este egal cu 3 + 2), suma valorilor dă exact același rezultat, indiferent de ordinea în care au sosit termenii.
Consecința este radicală: dacă amestecăm cuvintele unei propoziții ca pe niște zaruri într-un pahar, ieșirea atenției rămâne neschimbată. Nu aproape aceeași, ci identică până la ultima zecimală!
Este ca o grămadă de cărți vărsate de-a valma pe o masă: recunoști titlul fiecăreia, dar fără numerele de pagină tipărite pe colț nu ai nicio cale să știi ce capitol vine după ce.
În experimentul interactiv de mai sus, ponderile sunt alese aleatoriu pentru a demonstra că această orbire nu ține de calitatea antrenării, ci este o proprietate matematică intrinsecă a formulei de atenție.
Testul cronologic: când ordinea este totul
Pentru limba umană, ordinea este vitală: una este să spui „pisica vânează șoarecele” și cu totul altceva „șoarecele vânează pisica”.
Putem ilustra acest impas printr-un experiment simplu: generăm un șir care începe cu literele A și B într-o ordine aleasă la întâmplare (AB sau BA), urmate de caractere neutre, iar la final întrebăm rețeaua care literă a apărut prima. Vocabularul este identic în ambele situații; doar cronologia diferă.
Fără un marcaj explicit al ordinii, precizia modelului este de exact 50%, la fel ca aruncarea la noroc a unei monede. Modelul produce exact același vector matematic pentru ambele variante, așa că este silit să ghicească orbește. Nu este o slăbiciune de optimizare: informația despre ordine pur și simplu nu există în datele primite!
Biletul cu numărul de loc: marcajul de poziție
Soluția este simplă și ingenioasă: înainte de a intra în primul etaj Transformer, fiecare cuvânt primește un mic supliment numeric — un vector special care reflectă exclusiv poziția sa în frază (locul 1, locul 2, locul 3 etc.). Acest pachet poartă numele de marcaj de poziție, iar procedura de atribuire se numește codificare pozițională.
Odată adăugat acest timbru, două apariții ale aceluiași substantiv în locuri diferite vor avea vectori de start ușor diferiți, generând chei și întrebări distincte. Atenția recapătă astfel capacitatea de a diferenția ordinea fără ca formula ei internă să sufere vreo modificare.
De ce marcajul se adună prin sumă în loc să fie atașat la coada vectorului? Deoarece banda transportoare are o lățime fixă calibrată în avans; adăugarea unei extensii ar fi mărit inutil toate matricile din toate straturile. Prin adunare, nuanța de sens a cuvântului și coordonata poziției sale se întrepătrund armonios în același vector.
Soluția tabelară: etichete învățate din practică
Cea mai directă metodă de a atribui aceste marcaje este crearea unui tabel de vectori învățați: rezervăm un vector ajustabil pentru poziția 0, altul pentru poziția 1 și așa mai departe, lăsând rețeaua să le descopere valorile optime în timpul antrenamentului, la fel ca pentru cuvintele din vocabular.
Deși funcționează bine, această abordare se lovește de o barieră rigidă: dimensiunea tabelului este fixată de la bun început. Dacă modelul a fost instruit cu un catalog de 512 poziții, el nu va ști absolut deloc ce să facă dacă îi dăm un text de 513 cuvinte! Pentru poziția 513 nu există niciun rând în tabel, iar rețeaua rămâne blocată.
Ceasornicul armonic: codificarea sinusoidală
Pentru a depăși această limitare, autorii arhitecturii Transformer originale (2017) au apelat la o formulă matematică universală: codificarea sinusoidală. În loc să stocheze valori statice într-un catalog, fiecare poziție își calculează marcajul folosind funcțiile trigonometrice sinus și cosinus la frecvențe diferite.
Imaginați-vă mecanismul unui orologiu cu multe ace: primele componente ale vectorului oscilează rapid, ca un secundar agil, diferențiind limpede cuvintele imediat învecinate; componentele următoare se mișcă precum minutarul, iar ultimele se deplasează extrem de lent, ca acul orelor, ajutând rețeaua să distingă începutul unui capitol de deznodământul său.
Magia relativă: de ce contează distanța, nu adresa
Genialitatea sinusoidelor nu constă doar în eleganță, ci într-o proprietate geometrică esențială: produsul scalar dintre marcajele a două poziții depinde exclusiv de distanța relativă dintre ele, nu de amplasarea lor absolută în document.
Fiecare linie din tabel este uniformă: apropierea dintre poziția 0 și 5 este matematic identică cu cea dintre pozițiile 16 și 21! În limbajul uman, acesta este lucrul care contează: expresia „cuvântul precedent” are aceeași semnificație gramaticală fie că ne aflăm în prima frază a romanului, fie pe ultima pagină.
Deplasarea cu un număr fix de poziții se traduce geometric printr-o rotație cu un unghi fix pe cerc. O rețea neuronală poate astfel să învețe relații relative stabile (precum acordul adjectivului cu substantivul de lângă el), fără să fie afectată de locul unde apare construcția în text.
Standardul modern: codificarea rotativă (RoPE)
Modelele de ultimă generație (precum LLaMA sau Mistral) folosesc o tehnică și mai rafinată: codificarea rotativă (sau Rotary Position Embedding - RoPE). În loc să adune un vector suplimentar pe banda transportoare chiar de la început, ele rotesc vectorii de întrebare (Query) și cheie (Key) cu un unghi proporțional cu indexul poziției lor, exact în clipa în care atenția își calculează produsele scalare.
Această abordare este mult mai curată: banda reziduală rămâne pură și nu este poluată cu zgomot de poziție, iar efectul de distanță relativă este injectat precis acolo unde este consumat — în evaluarea potrivirii dintre două cuvinte.
Cu această ultimă piesă, arhitectura Transformer este pe deplin conturată: textul este segmentat în jetoane, transformat în vectori semantici, îmbogățit cu simțul ordinii și procesat de o stivă de blocuri adânci pentru a prezice următorul simbol. Însă ce anume transformă acest schelet matematic într-un gigant capabil de conversații captivante? Răspunsul stă în antrenarea la scară uriașă. În ultima lecție a acestei secțiuni, vom explora legile scalării: cum interacționează volumul de date, puterea de calcul și numărul de parametri pentru a genera inteligența modernă.