Salta al contingut
Entendre els LLMs
🧭 Camí intuïtiuBloc 135-45 min
IntuïtiuMatemàtic

La versió sense fórmules de 03 · Probabilitat i estadística. Cada secció diu on és la seva part matemàtica.

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

dorm22caça9és9menja9no8de49 paraules més39
Paraula anterior
Al corpus de prova del curs (unes 10.000 paraules de català senzill), «gat» surt 23 vegades, seguida de 15 paraules diferents. Si repartim cent fitxes segons el que hi ve després, queden així. Un LLM fa aquest mateix repartiment, però entre desenes de milers d'opcions i mirant tot el text anterior, no només una paraula.

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

el5,0 %gat3,7 %dorm19,6 %a10,4 %la25,1 %finestra0,64 %

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.

Cada barra és una ampliació de la part de color de la barra de sobre. Probabilitats calculades amb un model de joguina que només mira la paraula anterior, fet comptant parelles de paraules al corpus de prova del curs.

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

malalt i positiumalalt però negatiusa però positiusa i negatiu
Quanta gent està malalta
De 1.000 persones, 10 estan malaltes. La prova en detecta 9 (cercles plens) i dona falsa alarma a 89 persones sanes (cercles amb vora). Si et surt positiu, ets un dels 98 positius, i només 9 % d'aquests estan malalts de debò. El resultat depèn tant de la prova com de com era de rara la malaltia d'entrada.

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

0 %25 %50 %75 %100 %taxa d'encert del model
Creença de partida
Vols saber quin percentatge de preguntes encerta un model. Encara no has vist cap resposta: només tens la creença de partida. Ara creus que la taxa d'encert és probablement entre el 5 % i el 95 % (nou cops de cada deu). La corba puntejada és la creença de partida; la plena, l'actual. Com més respostes veus, més estreta es fa, i menys importa d'on venies.

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

laeliadelalelsésdelvaqueleshiespobleambhaunanocadaunnensgent
Les 24 paraules més freqüents del corpus de prova, comptades. Les deu primeres sumen el 34 % de les 10.130 paraules del text; a l'altra punta, 578 de les 1.354 paraules diferents surten una sola vegada. Aquesta forma, una caiguda ràpida i una cua que no s'acaba mai, és la llei de Zipf. En col·leccions grans de text, la paraula que fa el lloc 10 surt unes deu vegades menys que la primera; en un corpus tan petit com aquest, la forma només s'hi assembla.

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

clau 10 %clau 20 %clau 30 %clau 40 %clau 5100 %clau 60 %clau 70 %clau 80 %
Números per vector
Abans de repartir
Una pregunta es compara amb vuit claus triades a l'atzar, i les puntuacions es converteixen en percentatges d'atenció. Amb 512 números per vector, les puntuacions solen tenir una mida de ±23,1. Una sola clau s'emporta el 100 % de l'atenció: les altres queden a zero i el model deixa d'aprendre res d'elles.

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

25 %50 %75 %1101001.000llançaments
Cinc tandes de 1.000 llançaments d'una moneda, amb el percentatge de cares acumulat. Al principi cada tanda va per on vol; després totes s'acosten al 50 %. L'embut és on cau la mitjana 95 de cada 100 vegades, i s'estreny com l'arrel quadrada del nombre de llançaments: per fer-lo la meitat d'ample, en calen quatre vegades més. A l'eix horitzontal, cada marca val deu vegades l'anterior.

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ú

0 %25 %50 %75 %100 %només dadesdades + preferència
Has vist
Mirant només les dades, la moneda fa cara el 100 % de les vegades. Afegint-hi una preferència prèvia (com si abans ja haguessis vist 4 cares i 4 creus), l'estimació és del 64 %. Amb tres llançaments, dir que la moneda sempre fa cara és agosarat; la preferència prèvia ho modera.

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

entrenament
Model
Punts nous
Error amb els punts d'entrenament: 0,000. Error amb punts nous de la mateixa font: 0,518. La corba flexible no s’equivoca gens amb els punts que ha vist, però per fer-ho ha après el soroll i fa ziga-zagues entre ells (variància alta).

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

just passa per totes les dadesmida del model →error amb dades noves
Corba
El que es veu quan es continua: l'error puja fins al punt en què el model just pot passar per totes les dades, i torna a baixar si el model creix encara més. Els LLMs viuen en aquesta segona baixada. Dibuix esquemàtic.

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

model A: 71 %model B: 73 %50 %60 %70 %80 %90 %
Amb 200 preguntes, la taxa real del model A és probablement entre el 64 % i el 77 %, i la del B entre el 66 % i el 79 %. Les franges es trepitgen molt: amb aquestes dades, no pots dir quin dels dos és millor. Per fer una franja la meitat d'ampla, calen quatre vegades més preguntes.

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

només l'encerta Anomés l'encerta Bcoincideixen
Avaluació
El model A n'encerta el 70 % i el B el 80 %. Però en 23 de les 30 preguntes tots dos fan el mateix, i aquestes no diuen res sobre quin és millor. La comparació de debò és entre les 7 on discrepen: 5 per a B i 2 per a A. Si tots dos fossin igual de bons, un desequilibri com aquest sortiria per pura casualitat 45 de cada 100 vegades. Recomptes inventats per a l'exemple.

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

línia discontínua: la taxa real de totes, 70 %★60 %70 %80 %variants (el cercle buit és la guanyadora avaluada de nou)
Vint maneres diferents de demanar el mateix, totes igual de bones (encerten el 70 % de les preguntes), avaluades amb 200 preguntes cadascuna. La que sembla millor treu un 78,0 %. Avaluada de nou amb 200 preguntes que no havia vist, treu un 71,0 %. Si proves prou coses, alguna sempre sembla millor per pura sort; per això el guanyador s'ha de confirmar amb dades noves.

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

la56 %l’16 %barcelona7 %setmana6 %parís5 %fusta4 %fa3 %les3 %
Les vuit paraules que més sovint segueixen «de» al corpus de prova (només aquestes vuit, per simplificar), amb les fitxes repartides en proporció. Amb temperatura baixa, la favorita s'ho emporta gairebé tot i el text surt previsible; amb temperatura alta, el repartiment s'aplana i surten més sorpreses. Treu alguna fitxa per veure què surt.

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 →

La probabilitat és la llengua materna d'un LLM: tot el que diu, ho diu repartint fitxes.

Comprova que ho has entès#

0 de 4 resoltes

  1. Què fa exactament un LLM quan escriu la paraula següent d'una resposta?
  2. 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 %?
  3. El model A encerta el 71 % de 200 preguntes i el model B, el 73 %. Què en pots concloure?
  4. 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

Marca els que hagis llegit
  • 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.