ai.vostman.fi
← Tekoälysanasto

Tekoälyn tietosanakirja

Ristientropia: tee havaitusta tokenista vähemmän yllättävä

Ristientropia (cross-entropy) on koulutustavoite, joka vertaa ennustettua jakaumaa tavoitteeseen. Yhden oikean luokan tapauksessa se on kyseisen luokan todennäköisyyden negatiivinen logaritmi. Kielimalli soveltaa sitä havaittuihin seuraaviin tokeneihin.

Sama oikea ennuste voi saada hyvin erilaisen häviön: todennäköisyys 0,9 palkitaan paremmin kuin 0,1. Lähes nollan todennäköisyyden antaminen todelliselle tavoitteelle aiheuttaa suuren rangaistuksen.

Gradientti ulottuu jokaiseen ehdokkaaseen

Tämä NumPy-funktio ottaa logitit muodossa examples × classes ja yhden tavoitetunnisteen kullekin riville. Se palauttaa keskimääräisen häviön ja sen derivaatan logittien suhteen.

import numpy as np

def cross_entropy(logits, targets):
    shifted = logits - logits.max(axis=1, keepdims=True)
    log_probs = shifted - np.log(np.exp(shifted).sum(axis=1, keepdims=True))
    rows = np.arange(len(targets))
    loss = -log_probs[rows, targets].mean()
    gradient = np.exp(log_probs)
    gradient[rows, targets] -= 1
    return loss, gradient / len(targets)

Gradientti on ennustettu todennäköisyys miinus tavoiteluokan indikaattori jaettuna esimerkkien määrällä. Oikeaa luokkaa nostetaan; kilpailevia luokkia lasketaan niiden nykyisten todennäköisyyksien suhteessa. Optimointialgoritmi muuttaa vastavirta-algoritmin kuljettamat derivaatat parametripäivityksiksi.

Suurimman pisteen vähentäminen vakauttaa eksponenttilaskennan. Koulutuskirjastot yhdistävät yleensä log-softmaxin ja häviön sisäisesti; niiden ristientropiarajapinta odottaa tavallisesti raakoja logitteja.

Tavoite määrää, mikä paranee

Seuraavan tokenin esikoulutuksessa havaittu token antaa tavoitteen. Ohjehienosäädössä häviöön voidaan ottaa vain valitut vastaussijainnit. Tavoite opettaa sitä, mitä valitut vastaukset palkitsevat, myös niissä esiintyviä virheitä ja vinoumia.

Perpleksisyys ottaa keskimääräisestä seuraavan tokenin ristientropiasta eksponentin. Se muuttaa mittarin asteikkoa, ei arvioitavia ennusteita.

Lähteet