Première partie : Chasse au trésor
Vous avez récemment gagné un voyage tous frais payés vers une île tropicale luxuriante. Pendant que vous vous promeniez, vous avez découvert une ancienne carte au trésor indiquant l'emplacement d'un grand trésor, sur laquelle étaient inscrits quelques messages secrets écrits en utilisant des 1 et des 0. Après avoir suivi ce cours, vous reconnaissez immédiatement qu'il s'agit d'une séquence de vecteurs codés onehot. Vous avez également eu la chance de trouver le mot « index mapping » pour savoir quel mot correspond à quel identifiant.
Vous devez maintenant déchiffrer le message secret et découvrir ce que dit cette carte. Vous avez reçu une matrice d'analyse de la valeur ajoutée ( treasure_map
) qui est une matrice d'analyse de la valeur ajoutée ( number of sentences
) fournie par number of words
par onehot vector length
. Vous disposez également du dictionnaire Python index2word
qui associe un identifiant à un mot.
Cet exercice fait partie du cours
Traduction automatique avec Keras
Instructions
- Obtenez les identifiants des mots pour les vecteurs codés onehot dans l'
treasure_map
(la dimension du vecteur onehot est la dernière dimension). - Obtenez la longueur de la séquence (c'est-à-dire le nombre d'étapes temporelles) à partir de
treasure_map
et attribuez-la àseq_len
. t-th
Veuillez identifier le mot ID dans la phrase suivante : «i-th
» (Les gens qui ont des problèmes de santé mentale sont souvent victimes de violence).- Ajoutez le mot d'
String
(et non le mot ID) correspondant àwid
à la listewords
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Get the word IDs from the treasure map
word_ids = ____.____(____, axis=____)
# Get the sequence length from the treasure map
seq_len = treasure_map.shape[____]
for i in range(treasure_map.shape[0]):
words = []
for t in range(seq_len):
# Get the word ID for the i-th sentence and t-th position
wid = word_ids[i, ____]
if wid != 0:
# Append the word corresponding to wid
words.append(____[____])
print("Instruction ", i+1, ": ", ' '.join(words))