Traduire du portugais vers l'anglais
C'est le dernier exercice du cours, félicitations d'être arrivé jusqu'ici !
Vous apprendrez à utiliser les modèles NMT pour effectuer des traductions.
Un modèle qui encode de petites phrases en portugais et les décode en petites phrases en anglais a été pré-entraîné et est chargé dans la variable model
.
De plus, la fonction predict_one()
est déjà chargée. Veuillez utiliser help()
pour plus de détails. L'ensemble de données est disponible dans les variables test
(texte brut) et X_test
(tokenisé).
Vous allez définir une fonction permettant de traduire une liste de phrases. Dans les paramètres, « sentences
» est une liste de phrases à traduire, « index_to_word
» est une base de données ( dict
) contenant des index numériques comme clés et des mots comme valeurs pour la langue anglaise, chargée dans la variable « en_index_to_word
».
Le résumé du modèle a été imprimé pour votre information.
Cet exercice fait partie du cours
Réseaux neuronaux récurrents (RNN) pour la modélisation du langage avec Keras
Instructions
- Boucle sur l'itérateur énuméré des phrases.
- Veuillez utiliser la fonction préchargée «
predict_one()
» (Traduire une phrase) pour traduire une phrase. - Veuillez imprimer le résultat de la traduction.
- Appelez la fonction définie pour traduire les 10 premières phrases de la variable d'
X_test
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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)