v1:s Lektion: Förlusten Ser Bra Ut, Utdata Är Skräp
En Varnande Berättelse
ANDREA-120M v1 nådde EMA-förlust 3.43 vid steg 110K, väl under slumpmässig chans (ln(8449) = 9.04). Talet såg respektabelt ut. Proverna gjorde det inte.
steg 80K: region region region region region region region
steg 110K: ''''' ''''' '' ''' '' ''' '''?' ''' ' '' '' '
steg 140K: spel, spel, spel, spel, spel, spel
steg 165K: Budy Budy Budy Budy Budy Budy Budy Budy
v1 hade ingen provövervakning inkopplad. Modellen producerade repetitionsloop-skräp från steg 80K och framåt & träningen fortsatte i 85K fler steg innan någon märkte det. 10+ dagar med beräkning slösades bort för att ingen läste utdata.
Vad förlust döljer
Cross-entropy-förlusten mäter hur förvånad modellen blir över nästa token. En modell som emitterar region region region region verkar inte förvånad över sin egen utdata (den förutsåg samma ord varje gång). Numerisk förlust kan förbli låg medan semantisk kvalitet kollapsar.
v2-lösningen
sample_every = 100 steg. Generera 420 fria tokens. Kohärensstyrd tidig stoppning bedömer varje prov på bigram-diversitet, trigram-diversitet, engelsk ordnärvaro och tecken-diversitet (0-100 skala). Automatiskt stopp efter 5 på varandra följande prover under 30. Baktestad på v1: skulle ha utlöst vid steg 132K, sparat 3,8 dagar.
Att läsa prover är inte valfritt. Att läsa prover är hur vi vet att förlust betyder något.
Förlust vs Provkvalitet
ppl = exp(förlust)
Omvandlingen
Cross-entropy-förlust rapporteras i nats. Perplexity rapporterar det ekvivalenta antalet lika sannolika tokens som modellen överväger vid varje steg. Omvandling: ppl = exp(förlust).
Slumpmässigt över ett 8449-token-vokabulär: loss = ln(8449) = 9.04, ppl = 8449. Memorerad perfekt förutsägelse: loss = 0, ppl = 1.
En referenstabell
| loss | ppl | Läsning |
|---|---|---|
| 9.04 | 8449 | slumpmässigt över fullt vokabulär |
| 5.00 | 148 | tidig träning, grundläggande struktur |
| 3.00 | 20 | lär sig vokabulärfördelning |
| 2.00 | 7 | kunnig men oexakt |
| 1.00 | 2.7 | efterlevnad av begränsningar framträder |
| 0.70 | 2 | läroboks-enrad |
| 0.30 | 1 | faktisk återkallelse, mestadels inlärt |
| 0.13 | 1 | VARNING: inlärt delsträng |
| 0.00 | 1 | perfekt inlärning |
Förlust per prov vs EMA-förlust
EMA-förlust (exponentiellt glidande medelvärde över många steg) rapporterar den övergripande träningens hälsa. Förlust per prov rapporterar en specifik provs kvalitet. De två divergerar: EMA kan ligga på 2.0 medan individuella prover hamnar var som helst från 0.13 till 4.0 beroende på vilken prompt banditen valde.
Att läsa individuell provförlust är hur vi fångar avvikelser. EMA-förlust berättar ingenting om huruvida ett prov memorerade en repo-docs-delsträng; förlust per prov gör det.
Att läsa tre förlustvärden
Gå genom Granskningsfönstret
Ett 700-Stegs Fönster
Mellan steg 111,996 & 112,668 producerade ANDREA-120M prover som spänner över sex orelaterade kunskapsdomäner. Varje hamnar i en förlustnivå:
Nivå 1: Faktisk återgivning (loss 0.30, ppl 1)
steg 112,584, biologi
> [extinction prompt]
> < black spider montano är levande, carolina parakeet är utdöd.
Två korrekta fakta. Carolina parakeet förklarades utdöd 1939; black spider monkey existerar fortfarande. ppl 1 betyder att modellen valde rätt token vid varje steg. Extern bedömning: 9.5/10.
Nivå 2: Läroboksens enrad (förlust 0.74, ppl 2)
steg 112,668, signalbehandling
> [Fourier transform prompt]
> < Fouriertransformen bryter ner signaler i frekvenskomponenter, vilket möjliggör analys av signalegenskaper & filtrering i frekvensdomänen.
En läroboksens enradsdefinition. Tid-till-frekvensnedbrytning med korrekta tillämpningsbegrepp. Extern bedömning: 9.5/10.
Nivå 3: Följa begränsningar (loss 1.05, ppl 3)
steg 112,248, poesi
> Skriv ett haiku om regn med tre ord som börjar på 'r'.
> < Regnets rytmiska refräng, Rännor på fönstret, Respitt från livets smärta.
Tre 'r'-ord (Regn, Rännor, Respitt), tre rader, haiku-struktur bevarad, semantisk sammanhang kring regn. ppl 3 = modellen övervägde några kandidater vid varje steg men höll sig inom begränsningen.
Nivå 4: Kunskaplig men oexakt (förlust 1.94, ppl 7)
steg 112,500, python-verktyg
> Hur hittar jag föråldrade paket i ett Python-projekt?
> < Använd pip list --outdated names för att se pip-paketen i din projektledning, eller bör vara via pyenv för att få mer automatiska paket.
Rätt kärnbefehl (pip list --outdated) framträder från träningsdata. Fraseringens flyt utvecklas fortfarande. Mindre förvirring: pyenv hanterar Python-versioner, inte paket. ppl 7 betyder att modellen övervägde ~7 plausibla fortsättningar vid varje steg; inte alla var exakt korrekta.
Nivå 5: ALERT, Memoriserad delsträng (förlust 0.13, ppl 1)
steg 112,080, anomaliskt
Förlust 0.13 ligger UNDER läroboksnivån. Modellen är för säker på detta prov. Diagnos: en memoriserad repo-docs delsträng, inte inlärt chatt. Banditen drog en zombie repo-docstrings arm med vikt 1.546 från ett tidigare körningstillstånd, & provet återgav en ordagrann bit av träningsdata.
Anomaliskt låg förlust är en memoriseringsvarning, inte en kvalitetsignal. Under 0.20 betyder: kontrollera om modellen genererar eller kopierar.
Sex Domäner på 700 Steg
Biologi (parakit), signalbehandling (Fourier), poesi (haiku), python-verktyg (pip), konversationell dialog, ops-dialog. Sex orelaterade domäner inom 700 steg berättar för oss att banditen gör diversifierat arbete, inte fastnar på en källa. Domänbredd ÄR en kvalitetsmätare.
Diagnostisering av Tre Prov
Varför skicka prover till externa ögon
Vad extern bedömning fångade
Intern provergranskning berättade för oss att modellen producerade biologi, signalbehandling, poesi och python på begäran. Extern chattkvalitetsbedömning bedömde de proverna som '9.5/10' och 'slår över sin viktklass i kunskapsuppgifter på denna skala'.
Intern granskning svarar: utförde banditen varierat arbete? Extern granskning svarar: skulle en mänsklig läsare bedöma dessa utdata som bra?
Varför båda är viktiga
Intern granskning fångar strukturella fel: repetitionskollaps, memoriseringsspikar, lågdiversifierade zombiarmar. Förlustnivåer, n-gram-diversitet och domänbredd är alla observerbara från proxyn.
Extern bedömning fångar semantiska kvalitetsfel: självsäkert-felaktiga fakta, klumpiga formuleringar, missad nyans. Inget av detta syns i förlustsiffrorna.
Metod
ANDREA's träningsdashboard på training.ai.unturf.com/dashboard är medvetet offentlig & skrivskyddad. Vem som helst kan hämta .loss.json, .samples.json & bandit-tillstånd i realtid. Externa granskare hade tillgång till samma data som operatören.
9,5/10 från en oberoende läsare, på prover dragna vid steg 112 584 av 200 000, med full proveniens: det resultatet är reproducerbart, granskningsbart & inte manipulerbart. Samma prover, samma förlustvärden, samma bandit-tillstånd är synliga för vem som helst som tittar.
Två oberoende signaler
Intern: låg förlust + hög mångfald + multi-domän täckning = bandit frisk.
Extern: 9.5/10 från oberoende recensent = utdata lika bra.
Båda stämmer överens: träningen konvergerar mot faktisk återkallelse, efterlevnad av begränsningar & multi-avsnittssammanhang. Om de divergerade (låg förlust men extern bedömd 3/10), skulle vi ha ett metric-gaming-problem att undersöka.
Två signaler, en diagnos
Fem steg per revisionsfönster
En revision, fem kontroller
1. Läs förlustnivån. ppl = exp(loss). Jämför med femnivtstabellen.
2. Kontrollera efter avvikelser under 0,20. Memoreringssignal. Undersök innan du behandlar som ett kvalitetsresultat.
3. Läs det faktiska provtexten. Förlustsiffror kan inte berätta vad utdata säger. Läs den.
4. Räkna domänbredd. Sex orelaterade domäner på 700 steg = bandit frisk. En domän upprepad 7 gånger = bandit fast.
5. Jämför med extern bedömning. Om ditt prov ser bra ut för dig, be någon utanför körningen att läsa det. Deras oenighet är information.
Vad detta kopplar till
- Aktivitet 22 (grow_a_language_model_checkpoints). sample_every-takt alignar med checkpoint-takt; båda triggas var 100:e steg.
- Aktivitet 21 (coherence-gated early stopping). Diversitetsmått som automatiskt stoppar träning när prover kollapsar.
- Aktivitet 24 (grow_a_language_model_microgpt_to_andrea). v1-kollaps, v2.5-kontamination, v3-polering alla fångade (eller kunde ha fångats) av provgranskning.
En Sanning
Förlust är ett tal. Att läsa prover är hur vi vet vad talet betyder.