encoder
decoder
seq2seq
rnn
În paradigma traducerii automate (TA), o rețea neurală codoare citește și codifică o frază din intrare dată în limba sursă într-un vector de lungime fixă, în timp ce decodorul produce în ieșire o traducere în limba țintă din vectorul codat. Perechea codor-decodor sunt antrenate pentru a produce traduceri corecte pentru perechea de limbi sursă-țintă.
Practic, intrarea de lungime variabilă este codată mai întâi într-un vector de lungime fixă, acesta fiind apoi decodat într-o frază, de asemenea de lungime variabilă.
În abordările lui [Cho et al., 2014] și [Sutskever et al., 2014], codorul citește fraza de intrare, o secvență de vectori x = (x1, · · · , xTx), într-un vector c. Astfel, abordarea cea mai cunoscută a rețelelor neuronale recurente este aceea în care o stare ascunsă la momentul t este ht ∈ Rn de forma:
ht = f (xt, ht−1) (1)
iar
c = q ({h1, · · · , hTx }) (2)
este ieșirea, de forma unui vector generat din secvența de stări ascunse, cu f și q funcții nelineare.
În TA, decoderul este antrenat să prezică cuvântul următor yt’ plecând de la vectorul context c și toate cuvintele prezise anterior {y1, · · · , yt’−1}. Cu alte cuvinte, decodorul definește o probabilitate peste traducerea y prin descompunerea probabilității comune în probabilități condiționate ordonate:
p(y) = PRODUS, cu t de la 1 la T, din p(yt | {y1, · · · , yt−1} , c), (3)
unde y = (y1, · · · , yTy). Cu un RNN, fiecare probabilitate condiționată este modelată ca:
p(yt | {y1, · · · , yt−1} , c) = g(yt−1, st, c), (4)
unde g este o funcție neliniară, potențial multistratificată, care emite probabilitatea yt, iar st este starea ascunsă a RNN.