Översätt portugisiska till engelska
Det här är kursens sista övning – grattis till att du tagit dig hit!
Du kommer att lära dig hur man använder NMT-modeller för att göra översättningar.
En modell som kodar korta portugisiska fraser och avkodar dem till korta engelska fraser har förtrainats och finns inläst i variabeln model.
Funktionen predict_one() är också redan inläst – använd help() för mer information. Datamängden finns tillgänglig i variablerna test (råtext) och X_test (tokeniserad).
Du ska definiera en funktion för att översätta en lista med meningar. I parametrarna är sentences en lista med fraser som ska översättas, och index_to_word är en dict med numeriska index som nycklar och engelska ord som värden – inläst i variabeln en_index_to_word.
Modellsammanfattningen har skrivits ut för din referens.
Den här övningen är en del av kursen
Återkommande neurala nätverk (RNN) för språkmodellering med Keras
Övningsinstruktioner
- Loopa över den enumererade iteratorn av fraserna.
- Använd den förinstallerade funktionen
predict_one()för att översätta en fras. - Skriv ut översättningsresultatet.
- Anropa den definierade funktionen för att översätta de första 10 fraserna i variabeln
X_test.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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)