Préparation du texte de sortie
Dans cet exercice, vous allez préparer les textes de sortie qui seront utilisés dans le modèle de traduction. Outre la transformation du texte en séquences d'index, il est également nécessaire de coder chaque index en one-hot.
Les textes en anglais sont chargés dans la variable « en_sentences
», le tokenizer adapté dans la variable « output_tokenizer
» et la taille du vocabulaire anglais dans « en_vocab_size
».
De plus, une fonction permettant d'effectuer les premières étapes de la transformation de la langue de sortie (transformation de textes en séquence d'index) a déjà été créée. La fonction est chargée dans l'environnement sous le nom « transform_text_to_sequences()
» et comporte deux paramètres : « sentences
», qui attend une liste de phrases en anglais, et « tokenizer
», qui attend un objet « fitted Tokenizer
» issu du module « keras.preprocessing.text
».
numpy
est chargé en tant qu'np
.
Cet exercice fait partie du cours
Réseaux neuronaux récurrents (RNN) pour la modélisation du langage avec Keras
Instructions
- Transmettez les variables «
en_sentences
» et «output_tokenizer
» à la fonction «transform_text_to_sequences()
» afin d'initialiser la variable «Y
». - Utilisez la fonction «
to_categorical()
» pour encoder les phrases en « one-hot ». Veuillez utiliser la variable «en_vocab_size
» comme nombre de classes. - Transformez la liste temporaire en tableau numpy et remodelez-la pour obtenir une forme identique à celle d'
(num_sentences, sentences_len, en_vocab_size)
. - Veuillez imprimer le texte brut et le texte transformé.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Initialize the variable
Y = transform_text_to_sequences(____, ____)
# Temporary list
ylist = list()
for sequence in Y:
# One-hot encode sentence and append to list
ylist.append(____(sequence, num_classes=____))
# Update the variable
Y = np.array(ylist).reshape(____, Y.shape[1], en_vocab_size)
# Print the raw sentence and its transformed version
print("Raw sentence: {0}\nTransformed: {1}".format(____, Y[0]))