Derivata della perdita di entropia crociata in word2vec


10

Sto cercando di superare la prima serie di problemi del materiale del corso di classe Stanford cs224d online e sto riscontrando alcuni problemi con il problema 3A: quando si utilizza il modello skip gram word2vec con la funzione di previsione softmax e la funzione di perdita incrociata dell'entropia, noi desidera calcolare i gradienti rispetto ai vettori di parole previsti. Quindi data la funzione softmax:

wio^=Pr(wordio|r^,w)=exp(wioTr^)Σj|V|eXp(wjTr^)

e funzione entropia incrociata:

CE(w,w^)=-ΣKwKlog(wK^)

dobbiamo calcolare CEr^

I miei passi sono i seguenti:

CE(w,w^)=k|V|wklog(exp(wkTr^)j|V|exp(wjTr^))

=k|V|wklog(exp(wkTr^)wklog(j|V|exp(wjTr^))

ora dato wk è un vettore caldo ed io sono la classe corretta:

CE(w,w^)=wiTr^+log(j|V|exp(wjTr^))

CEr^=wi+1j|V|eXp(wjTr^)Σj|V|eXp(wjTr^)wj

È corretto o potrebbe essere ulteriormente semplificato? Voglio provare ad assicurarmi di essere sulla strada giusta poiché le soluzioni del set di problemi non sono pubblicate online. Inoltre, ottenere correttamente i compiti scritti è importante per poter svolgere correttamente i compiti di programmazione.


Aggiungi il tag di
autoapprendimento

Il 2 ° segno meno nell'identità del primo registro dovrebbe essere un vantaggio. Ho provato a risolverlo per te ma le modifiche devono essere almeno 6 caratteri: \
FatalMojo

Risposte:


7

CEr^=-wio+1Σj|V|eXp(wjTr^)Σj|V|eXp(wjTr^)wj
può essere riscritto come nota, le somme sono entrambe indicizzate da j ma in realtà dovrebbero essere 2 variabili diverse. Questo sarebbe più appropriato che si traduce in
CEr^=-wio+Σj|V|(exp(wjr^)Σj|V|eXp(wjTr^)wj)
CEr^=-wio+ΣX|V|(exp(wXr^)Σj|V|eXp(wjTr^)wX)
CEr^=-wio+ΣX|V|Pr(wordX|r^,w)wX

1
Rilevante, analizza la derivazione in dettaglio nella lezione 2 @ 38:00
FatalMojo,

Perché le somme dovrebbero essere indicizzate da variabili diverse?
Yamaneko,

1
Solo per evitare confusione. Matematicamente significa la stessa cosa, ma è buona norma cambiare l'etichetta dell'indice quando si aggiunge una nuova somma.
FatalMojo,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.