Préparer le texte d’entrée
Vous avez vu dans la vidéo comment préparer les textes d’entrée et de sortie. Cet exercice illustre une pratique courante : utiliser la longueur maximale des phrases pour les compléter, afin de ne perdre aucune information.
Comme les modèles RNN exigent des entrées de même taille, on complète ainsi toutes les phrases en ajoutant des zéros aux plus courtes, sans tronquer les plus longues.
Vous utiliserez également des mots plutôt que des caractères pour représenter les tokens ; c’est une approche fréquente pour les modèles de NMT.
Les textes portugais sont chargés dans la variable pt_sentences et un tokenizer déjà ajusté dans la variable input_tokenizer.
Cet exercice fait partie du cours
Réseaux de neurones récurrents (RNN) pour la modélisation du langage avec Keras
Instructions
- Utilisez la méthode
.split()sur chaque phrase pour la découper par espaces et obtenir le nombre de mots de la phrase. - Utilisez la méthode
.texts_to_sequences()pour transformer le texte en séquence d’index. - Utilisez la longueur maximale obtenue des phrases pour les compléter (padding).
- Affichez la première phrase transformée.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Get maximum length of the sentences
pt_length = max([len(sentence.____) for sentence in pt_sentences])
# Transform text to sequence of numerical indexes
X = input_tokenizer.____(pt_sentences)
# Pad the sequences
X = pad_sequences(X, maxlen=____, padding='post')
# Print first sentence
print(pt_sentences[0])
# Print transformed sentence
print(____)