Traduci dal portoghese all'inglese
Questo è l’ultimo esercizio del corso, complimenti per essere arrivato fin qui!
Imparerai come usare i modelli di NMT per effettuare traduzioni.
Un modello che codifica brevi frasi in portoghese e le decodifica in brevi frasi in inglese è stato pre-addestrato ed è caricato nella variabile model.
Inoltre, la funzione predict_one() è già disponibile: usa help() per i dettagli. Il dataset è disponibile nelle variabili test (testo grezzo) e X_test (tokenizzato).
Definirai una funzione per tradurre un elenco di frasi. Nei parametri, sentences è una lista di frasi da tradurre, index_to_word è un dict che contiene come chiavi indici numerici e come valori parole in inglese, caricato nella variabile en_index_to_word.
Il riepilogo del modello è stato stampato per tua informazione.
Questo esercizio fa parte del corso
Reti Neurali Ricorrenti (RNN) per il Language Modeling con Keras
Istruzioni dell'esercizio
- Itera sull’iteratore enumerato delle frasi.
- Usa la funzione già caricata
predict_one()per tradurre una frase. - Stampa il risultato della traduzione.
- Chiama la funzione definita per tradurre le prime 10 frasi della variabile
X_test.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# Function to predict many phrases
def predict_many(model, sentences, index_to_word, raw_dataset):
for i, sentence in ____(sentences):
# Translate the Portuguese sentence
translation = ____(model, sentence, index_to_word)
# Get the raw Portuguese and English sentences
raw_target, raw_src = raw_dataset[i]
# Print the correct Portuguese and English sentences and the predicted
print('src=[%s], target=[%s], predicted=[%s]' % (raw_src, raw_target, ____))
____(model, X_test[____], en_index_to_word, test)