Back to archive
#ai#llm#glossary#aigen

Cross-entropy

Dwa modele wskazują to samo słowo jako najlepszą kontynuację, ale pierwszy daje mu 80% szans, a drugi tylko 20%. Samo sprawdzenie zwycięzcy pomija tę różnicę. Przy uczeniu potrzebujemy oceny mówiącej, jak mocno model popiera właściwy wynik.

Cross-entropy mierzy dopasowanie przewidywanych prawdopodobieństw do wyniku docelowego. Przy jednym poprawnym tokenie — kawałku tekstu z danych — karą jest minus logarytm przypisanej mu szansy. Logarytm sprawia, że bardzo mała szansa właściwej odpowiedzi oznacza dużą karę.

Dla 0,8 kara wynosi około 0,223, a dla 0,2 około 1,609, przy logarytmie naturalnym. Trening może więc poprawiać pewność właściwych przewidywań nawet wtedy, gdy zwycięzca już jest poprawny.

Softmax wyznacza prawdopodobieństwa; Cross-entropy ocenia je względem celu. Mały błąd na danych nie jest dowodem, że model mówi prawdę w dowolnej rozmowie. Poniższy eksperyment pokazuje wpływ przypisanej szansy na karę.

Mechanizm i szczegóły

H(q,p)=−∑i=1nqiln⁡piH(q,p)=-\sum_{i=1}^{n}q_i\ln p_i

qiq_i oznacza docelowe prawdopodobieństwo kandydata ii, a pip_i prawdopodobieństwo przewidywane. Gdy etykieta wskazuje jeden poprawny token yy, cały wzór upraszcza się do −ln⁡py-\ln p_y. Softmax może wyznaczyć rozkład z logitów; Cross-entropy ocenia go względem celu. Dokumentacja PyTorch: CrossEntropyLoss opisuje oba rodzaje etykiet. Ta konkretna funkcja przyjmuje bezpośrednio logity, więc nie należy wcześniej przepuszczać ich przez Softmax.

Co oznacza wartość straty

Własny przykład: model przypisuje poprawnemu tokenowi prawdopodobieństwo 0,8. Strata wynosi około 0,223. Przy prawdopodobieństwie 0,2 rośnie do około 1,609. Używamy logarytmu naturalnego. Dwa modele mogą wskazać ten sam token jako najbardziej prawdopodobny, a mimo to uzyskać różną stratę, ponieważ liczy się także przypisana mu wartość.

Przy Autoregressive Language Modeling celem jest kolejny token z tekstu. Minimalizowanie średniej takiej straty odpowiada maksymalizowaniu log-likelihood danych, bez uwzględnienia dodatkowych składników regularyzacji. Taką postać celu opisują Bengio et al., A Neural Probabilistic Language Model, §2.

Średnia musi dotyczyć właściwych pozycji: padding oraz tokeny wyłączone z oceny nie powinny jej zmieniać. Przy miękkich etykietach celu nie wolno zastępować pełnej sumy pojedynczym −ln⁡py-\ln p_y. Z uśrednioną stratą dla pojedynczych tokenów wiąże się Perplexity.