Argomenti di tendenza
#
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.
Un'altra osservazione interessante
eseguire SGD sulla perdita di entropia incrociata sul tuo corpus di testo
è equivalente a
REINFORCE, cioè, il gradiente della politica on-policy, con ricompensa binaria "Il mio modello ha generato testo dal corpus"

12 ago, 00:20
Perché la cross-entropia è una buona funzione di perdita per il pre-addestramento del linguaggio?
avvertenza: tutto ciò è noto, tra l'altro; curiosamente, anche se ci sono molti punti di vista e intuizioni su "perché x-ent", tutti possono essere raggiunti a partire da un unico punto di partenza.
Ecco una semplice derivazione dai primi principi che non assume nulla sulla distribuzione dei dati. Deriva da un requisito operativo molto ragionevole :)
"Voglio che il mio modello suoni intelligente"
ma non possiamo misurarlo, quindi chiediamo
"Voglio che il mio modello suoni come un umano"
Anche se abbiamo accesso a tutti i testi mai scritti, non possiamo misurarlo nemmeno, quindi chiediamo invece
"Voglio che il mio modello sia il più probabile possibile per generare uno dei testi mai scritti"
O più brutalmente:
"Voglio che il mio modello memorizzi i dati di addestramento."
Considera questo esperimento mentale:
Data un dataset S di tutto il testo mai scritto dagli esseri umani, eseguiamo prove indipendenti per ogni "testo" in S:
Campiona: "testo campione" dal nostro modello Pr( ;W)
Controlla: il "testo campione" corrisponde esattamente all'originale? Nota: non ci conditioniamo su nulla! chiediamo solo, di tutte le cose che il modello potrebbe generare, abbiamo ottenuto "testo".
Definisci il successo come l'evento
E = "tutti i controlli per campione hanno successo"
La probabilità di E è, il prodotto delle probabilità assegnate alla verità di base corretta dal tuo modello W
Pr(E) = Π_{testo in S} Pr(testo; W)
Massimizzare log Pr(E) su W ti dà l'obiettivo della cross-entropia.
Come ottimizzi questo con SGD?
testo campione dal corpus
calcola grad log Pr(token|prefix) per ogni prefisso di testo
aggiorna il modello
Ciò che è elegante è che questo stesso simultaneamente:
1) Minimizza la lunghezza della descrizione dei dati sotto il modello P( ;W) (prospettiva di compressione)
2) Minimizza la divergenza KL dalla vera distribuzione—se esiste (anche se non abbiamo mai assunto che esista)
3) Implementa la stima della massima verosimiglianza
La derivazione è diretta e ben nota, ma evidenzia qualcosa di importante:
la cross-entropia emerge naturalmente dal desiderio di riproduzione esatta dei dati di addestramento.
P.S. avresti potuto invece chiedere di massimizzare
Pr(testo generato dal modello è nella verità di base)
curiosamente, ottimizzare questo può portare al collasso della modalità, poiché una soluzione ottimale è prevedere sempre un singolo pezzo di testo dal corpus. Eppure i gradienti sembrano di nuovo come x-ent ma con un fattore moltiplicativo
i.e., Pr(testo;W) grad log Pr(testo;W)
69,14K
Principali
Ranking
Preferiti