03 · Repartir fitxes: probabilitat i incertesa
Un LLM no sap quina paraula ve després: n'aposta. Aquest capítol explica què vol dir apostar bé, com es canvia d'opinió quan arriben dades noves i per què, quan algú et diu que un model ha tret dos punts més que un altre, la primera pregunta hauria de ser «amb quantes preguntes?». Sense aquest vocabulari, és molt fàcil confondre el soroll amb el progrés.
1. Repartir cent fitxes#
Tens cent fitxes i has de repartir-les entre les opcions d'una aposta. Si estàs segur d'una, li poses totes; si dubtes entre dues, potser cinquanta i cinquanta. Una probabilitat és això: quina part de les fitxes posaries en cada opció. Les fitxes sempre sumen cent, i per això posar-ne més en una vol dir treure'n d'una altra.
El repartiment canvia segons el que ja saps. No poses les fitxes igual per a «la paraula que ve després» que per a «la paraula que ve després de "el"». Aquesta segona és una probabilitat condicionada: el repartiment un cop saps alguna cosa.
Cent fitxes per a la paraula següent
Un LLM és, literalment, una màquina de repartir fitxes. Li dones un text i, per a cada una de les desenes de milers de peces de text que coneix (els tokens del capítol 1: paraules senceres o trossos de paraula), et diu quantes fitxes hi posa com a peça següent. No fa res més.
Amb això en té prou per a frases senceres. La probabilitat d'una frase es construeix paraula per paraula: la primera paraula es queda amb una part de les fitxes; la segona, amb una part d'aquesta part; i així successivament.
Una frase, paraula per paraula
1/8La frase
Volem saber com de probable troba el model la frase «el gat dorm a la finestra». No la mira sencera: la va construint paraula per paraula.
Aquesta regla (la probabilitat d'una frase és el producte de les probabilitats de cada paraula donades les anteriors) és el cor de tot model de llenguatge. El model només aprèn a fer bé cada un d'aquests repartiments. Tot el que sembla saber fer, raonar, programar o traduir, surt de fer-los molt bé sobre una quantitat enorme de text.
2. Actualitzar una creença#
Abans de veure cap dada ja tens una idea, encara que sigui vaga. Després veus alguna cosa, i la idea canvia. La regla que diu exactament com ha de canviar és el teorema de Bayes, i en paraules diu: la creença nova és la creença d'abans multiplicada per com de bé explica cada possibilitat el que has vist.
L'exemple clàssic és el d'una prova mèdica. Una prova que encerta el 90 % dels malalts, i que només dona una falsa alarma al 9 % dels sans, sembla molt fiable. Però si la malaltia és rara, passa una cosa sorprenent:
Mil persones i una prova que s'equivoca poc
Amb una malaltia que té l'1 % de la gent, de cada cent positius només uns nou estan malalts. No és que la prova sigui dolenta: és que hi ha tanta gent sana que fins i tot un percentatge petit de falses alarmes supera els malalts de debò. La creença de partida (com era de rara la malaltia) pesa tant com la prova.
La mateixa regla serveix per saber com és de bo un model. Abans de mirar cap resposta, tens una creença sobre la seva taxa d'encert; cada resposta que corregeixes l'actualitza.
Actualitzar una creença
Aquesta manera de pensar surt a molts llocs. La preferència per uns pesos petits (els pesos són els números que l'entrenament ajusta, els paràmetres del capítol 2) que fan servir gairebé tots els entrenaments és una creença de partida (ho veuràs a la secció 5). Una de les explicacions de per què un LLM aprèn d'uns quants exemples posats al mateix text (capítol 21) és que fa una mena d'actualització bayesiana sobre «quin tipus de text estic continuant». I saber si un model és ben calibrat, si quan diu «n'estic segur al 80 %» encerta el 80 % de les vegades, també és una qüestió de probabilitats (capítol 4).
3. Formes de repartir#
Alguns repartiments surten tan sovint que tenen nom. El de la sortida d'un LLM és el més senzill: una llista finita d'opcions, cadascuna amb les seves fitxes (en diuen distribució categòrica). El de la campana (la gaussiana) descriu coses que són la suma de moltes petites causes, com el soroll d'una mesura, i es fa servir per triar els valors inicials dels pesos d'un model.
N'hi ha un altre que és clau per al llenguatge. Si comptes les paraules d'un text, poques surten moltíssim i moltíssimes surten molt poc:
Poques paraules molt comunes, moltíssimes de rares
Aquesta cua llarga (la llei de Zipf) explica moltes coses del curs: per què els models parteixen les paraules rares en trossos (capítol 10), per què costa tant cobrir tots els casos rars, i per què sempre hi ha coneixement que el model ha vist massa poques vegades per aprendre'l bé.
Per descriure un repartiment de números n'hi ha prou, sovint, amb dues xifres: on és el centre (la mitjana o esperança) i com d'ample és (la variància, o la seva arrel, la desviació típica). Hi ha una propietat d'aquestes amplades que reapareixerà: si sumes moltes coses a l'atzar que no depenen entre si, l'amplada de la suma no creix com el nombre de coses, sinó com la seva arrel quadrada. Cent sorolls sumats fan un soroll deu vegades més ample, no cent.
Aquest fet explica un detall de l'atenció del capítol 11. Per comparar una paraula amb una altra es fa un producte escalar, que és una suma de molts productes. Amb vectors grans, la suma es fa molt ampla, i quan les puntuacions es converteixen en percentatges, una sola guanya i s'emporta gairebé tota l'atenció.
Per què l'atenció divideix les puntuacions
Dividir les puntuacions per l'arrel quadrada de la llargada dels vectors (amb 512 números, per 22,6) les torna a una amplada de més o menys 1, siguin com siguin de grans els vectors, i l'atenció es torna a repartir. Aquest és tot el misteri de la paraula «escalada» (scaled) del nom tècnic de l'atenció.
4. Per què les mitjanes s'estabilitzen#
Llança una moneda deu vegades i potser surten set cares. Llança-la mil vegades i el percentatge serà molt a prop del 50 %. Aquesta és la llei dels grans nombres: la mitjana de moltes repeticions s'acosta al valor de debò. I el teorema del límit central diu una cosa encara més útil: com es reparteixen els errors de la mitjana (en forma de campana) i com d'amples són.
La mitjana s'estabilitza, i l'embut s'estreny
L'embut s'estreny com l'arrel quadrada del nombre de llançaments. Per tenir la meitat d'error no et calen el doble de llançaments, sinó quatre vegades més.
5. Entrenar és fer probable el text de debò#
Tens una moneda i vols saber quina probabilitat té de fer cara. La manera més directa és triar la probabilitat que fa més versemblant el que has vist: si has vist 7 cares de 10, el 70 %. Aquest criteri es diu màxima versemblança (maximum likelihood), i entrenar un LLM és exactament això: ajustar els paràmetres perquè les paraules que venien de debò al text d'entrenament siguin tan probables com sigui possible. Al capítol 4 veuràs que és el mateix que fer que el model quedi tan poc sorprès com es pugui.
Quan hi ha poques dades, però, aquest criteri pot dir bestieses. Si has vist 3 cares de 3, la màxima versemblança diu que la moneda fa cara el 100 % de les vegades. Una alternativa és afegir-hi una preferència prèvia, com a la secció 2.
Només les dades, o les dades i una mica de sentit comú
En un model, la preferència prèvia més habitual és que els pesos siguin petits, i afegir-la equival exactament a la força petita que estira els paràmetres cap a zero del capítol 2 (el weight decay). Hi ha una tercera opció, que és no triar cap valor i guardar totes les possibilitats amb el seu pes; per a una xarxa gran és inviable, i s'aproxima, per exemple, entrenant uns quants models diferents i fent-los votar.
Qualsevol manera d'estimar una cosa té dos tipus d'error. El biaix és equivocar-se sempre cap al mateix costat, com una diana que tira sistemàticament a l'esquerra. La variància és com canvia el resultat si repeteixes l'experiment amb dades noves, com una diana que encerta de mitjana però escampa els tirs. El compromís entre els dos és el tema de la secció següent.
6. Massa simple, massa flexible#
Un model massa rígid no pot seguir la forma de les dades i s'equivoca sempre igual (biaix alt). Un de massa flexible les segueix tan fidelment que n'aprèn també el soroll, i amb dades noves s'equivoca molt (variància alta). La intuïció clàssica diu que hi ha una mida justa al mig.
Massa simple, just o massa flexible
Aquesta intuïció és bona per a models petits, però l'aprenentatge profund (deep learning, les xarxes neuronals grans que veuràs al capítol 6) la va trencar. Quan el model continua creixent més enllà del punt en què pot passar exactament per totes les dades, l'error amb dades noves, en lloc de continuar pujant, torna a baixar. Se'n diu doble descens (double descent).
El que la intuïció clàssica no esperava
Els LLMs viuen en aquesta segona baixada: tenen moltíssims paràmetres i, a més, sovint veuen cada text d'entrenament menys d'una vegada. Per això, durant el preentrenament (la primera i més llarga fase de l'entrenament, amb quantitats enormes de text), aprendre's de memòria les dades, el sobreajust (overfitting) clàssic, gairebé no és el problema principal. Sí que ho és quan s'ajusta un model amb poques dades (capítol 20).
7. Avaluar amb marge d'error#
Aquesta és la secció que més t'estalviarà de quedar malament. Tot el que has vist fins ara es pot resumir en una frase: una nota sense marge d'error no és una nota.
Quantes preguntes calen per creure-s'ho
Comparar les dues franges és una prova prudent: si no es toquen, la diferència és de debò; si es toquen una mica, encara podria ser-ho, però no ho pots afirmar. Però hi ha una manera més fina de comparar dos models, i és aprofitar que els has passat les mateixes preguntes. Les preguntes que tots dos encerten o tots dos fallen no diuen res sobre quin és millor; tota la informació és a les preguntes on discrepen.
Només compten les preguntes on discrepen
Aquest tipus de comparació (un test aparellat, com el de McNemar) detecta diferències reals amb moltes menys preguntes que comparar dues notes per separat.
Quan la nota és més complicada que un percentatge d'encerts (per exemple, la mitjana de les puntuacions d'un jutge), hi ha un truc molt útil, el bootstrap: fas milers d'exàmens imaginaris traient preguntes a l'atzar del mateix examen, amb repetició, i mires quant varia la nota d'un a l'altre. Aquesta variació és el teu marge d'error.
I hi ha una trampa més. Si proves moltes coses, alguna semblarà millor per pura sort:
Vint intents i un guanyador de casualitat
Si proves vint variants d'una instrucció i acceptes com a «millor» qualsevol diferència que només sortiria per casualitat una de cada vint vegades, has d'esperar una falsa victòria de mitjana. Hi ha correccions estadístiques per a això, però el remei més net és confirmar la guanyadora amb preguntes que no has fet servir per triar-la.
Finalment, el model mateix és una font de soroll. Si genera amb una mica d'atzar (amb temperatura, secció 8), la mateixa pregunta pot tenir respostes diferents, i cal repetir-la i donar la mitjana i la dispersió. I fins i tot sense atzar, en una targeta gràfica el resultat no sempre és idèntic bit a bit d'una execució a l'altra.
8. Treure fitxes#
Un cop el model ha repartit les fitxes, cal triar la paraula. Si tries sempre la que en té més, el text surt avorrit i repetitiu. El que es fa normalment és posar totes les fitxes en una bossa i treure'n una a l'atzar (mostrejar, sampling): les paraules amb més fitxes surten més sovint, però no sempre.
Treure una fitxa de la bossa
La temperatura retoca el repartiment abans de treure'n una: baixa, passa encara més fitxes a la favorita; alta, les reparteix més per igual. Al capítol 15 veuràs altres maneres de retallar la bossa abans de treure'n la fitxa.
Hi ha un parell de trucs relacionats que apareixeran més endavant. Un permet fer la mateixa extracció sumant una mica de soroll a cada opció i quedant-se amb la més alta, i serveix per a les xarxes que han de triar quin «expert» fa cada feina (capítol 13). L'altre consisteix a fer servir fitxes tretes d'una bossa per estimar com seria una altra bossa, corregint el pes de cada fitxa; és exactament el que fan els mètodes amb què s'entrenen els models de raonament (capítol 19).
Què t'has d'endur#
- Una probabilitat és com reparteixes cent fitxes entre les opcions; un LLM reparteix fitxes entre totes les peces possibles per a la paraula següent, mirant el text anterior.
- La probabilitat d'una frase es construeix paraula per paraula, com una fracció d'una fracció.
- El teorema de Bayes diu com s'actualitza una creença: la d'abans, multiplicada per com de bé explica cada possibilitat el que has vist.
- Entrenar un LLM és fer tan probable com es pugui el text de debò; una preferència prèvia pels pesos petits és el weight decay.
- Un model massa flexible aprèn el soroll, però els models enormes tornen a millorar quan creixen més enllà d'aquest punt.
- Tota avaluació necessita un marge d'error, i el marge s'encongeix lentament: per fer-lo la meitat, calen quatre vegades més preguntes.
On tornaràs a trobar aquestes idees
Repartir fitxes i mesurar la sorpresa
La pèrdua amb què s’entrenen tots els LLMs: capítol 4 →
Model massa simple o massa flexible
Aprendre sense memoritzar: capítol 5 →
Dividir les puntuacions
L’atenció, peça a peça: capítol 11 →
Treure fitxes i la temperatura
Com genera text un model, paraula a paraula: capítol 15 →
Actualitzar una creença
Per què un model aprèn d’exemples del mateix prompt: capítol 21 →
Marges d’error i guanyadors de casualitat
Avaluar prompts i sistemes sense enganyar-se: capítol 21 →
Comprova que ho has entès#
0 de 4 resoltes
- Què fa exactament un LLM quan escriu la paraula següent d'una resposta?
- Una prova detecta el 90 % dels malalts d'una malaltia que té l'1 % de la gent. Et surt positiva. Per què la probabilitat que estiguis malalt és només d'un 9 %?
- El model A encerta el 71 % de 200 preguntes i el model B, el 73 %. Què en pots concloure?
- Has provat vint maneres de formular una instrucció, i la millor treu cinc punts més que la que feies servir. Què hauries de fer?
Per anar més lluny
3Blue1Brown, Bayes theorem, the geometry of changing beliefs: un vídeo (en anglès, amb subtítols) que explica el teorema de Bayes amb rectangles i persones, sense fórmules al davant.