Populaire onderwerpen
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Waarom is cross-entropie een goede verliesfunctie voor taalvoortraining?
waarschuwing: dit is allemaal bekend trouwens; interessant is dat, hoewel er veel standpunten en intuïties zijn over "waarom x-ent", ze allemaal vanuit één startpunt kunnen worden bereikt.
Hier is een eenvoudige afleiding vanuit de eerste principes die niets aanneemt over de gegevensverdeling. Het komt voort uit een zeer redelijke operationele vereiste :)
"Ik wil dat mijn model intelligent klinkt"
but we kunnen dat niet meten, dus vragen we
"Ik wil dat mijn model klinkt als een mens"
Hoewel we toegang hebben tot alle teksten die ooit zijn geschreven, kunnen we dat ook niet echt meten, dus vragen we in plaats daarvan
"Ik wil dat mijn model zo waarschijnlijk mogelijk een van de teksten genereert die ooit zijn geschreven"
Of blunt gezegd:
"Ik wil dat mijn model de trainingsgegevens uit het hoofd leert."
Overweeg dit gedachte-experiment:
Gegeven een dataset S van alle teksten die ooit door mensen zijn geschreven, voeren we onafhankelijke proeven uit voor elke "tekst" in S:
Monster: "monster tekst" van ons model Pr( ;W)
Controle: kwam "monster tekst" exact overeen met het origineel? Opmerking: we conditioneren op niets! we vragen gewoon, van al het spul dat het model zou kunnen genereren, kregen we "tekst".
Definieer succes als de gebeurtenis
E = "alle per-monster controles slagen"
De kans op E is, het product van de kansen die aan de juiste grondwaarheid door jouw model W zijn toegewezen
Pr(E) = Π_{tekst in S} Pr(tekst; W)
Het maximaliseren van log Pr(E) over W geeft je de cross-entropie doelstelling.
Hoe optimaliseer je dit met SGD?
monster tekst uit corpus
bereken grad log Pr(token|prefix) voor elke prefix van tekst
update model
Wat elegant is, is dat dit tegelijkertijd:
1) De beschrijvingslengte van de gegevens onder model P( ;W) minimaliseert (compressie perspectief)
2) KL-divergentie naar de ware verdeling minimaliseert—als die bestaat (hoewel we nooit aannamen dat er een was)
3) Maximum likelihood schatting implementeert
De afleiding is eenvoudig en goed bekend, maar het benadrukt iets belangrijks:
cross-entropie komt natuurlijk voort uit de wens naar exacte reproductie van de trainingsgegevens.
P.S. je had in plaats daarvan kunnen vragen om te maximaliseren
Pr(tekst gegenereerd door het model is in de grondwaarheid)
interessant is dat optimalisatie hiervan kan leiden tot mode collapse, aangezien een optimale oplossing is om altijd een enkel stuk tekst uit het corpus te voorspellen. Toch lijken de gradiënten weer op x-entropie maar met een vermenigvuldigingsfactor
i.e., Pr(tekst;W) grad log Pr(tekst;W)
64,23K
Boven
Positie
Favorieten