1. Learn
  2. /
  3. Cursuri
  4. /
  5. Traducere automată cu Keras

Connected

exercițiu

Definirea decoderului

În acest exercițiu vei implementa decoderul și vei defini un model end-to-end care pornește de la intrările encoderului și ajunge la rezultatele GRU ale decoderului. Decoderul folosește același tip de model ca encoderul, însă există diferențe în privința intrărilor și stărilor furnizate decoderului față de encoder. De exemplu, decoderul primește ca intrare vectorul de context produs de encoder, precum și starea inițială a decoderului. Reține că vom folosi prefixul en (de ex. en_gru) pentru tot ce ține de encoder și de pentru tot ce ține de decoder (de ex. de_gru).

Pentru a implementa decoderul, vei folosi straturile RepeatVector și GRU.

Pentru acest exercițiu ți-au fost furnizate modelul encoderului și diversele straturi ale acestuia, pe care le-ai implementat deja. De exemplu, intrările encoderului sunt disponibile ca en_inputs, iar vectorul de context ca en_state. Reține, de asemenea, că obiectele GRU și Model au fost deja importate.

Instrucțiuni

100 XP
  • Definește un strat RepeatVector care preia en_state ca intrare și îl repetă de fr_len ori.
  • Definește un strat GRU, decoder_gru, cu un număr de unități ascunse egal cu hsize, care returnează toate rezultatele produse.
  • Obține rezultatul stratului decoder_gru furnizând de_inputs ca intrare și en_state ca stare inițială a decoderului.
  • Definește un model care preia en_inputs ca intrare și gru_outputs ca rezultat.