Deuxième partie : Modèle d'inversion de texte - Encodeur
Vous allez maintenant implémenter le reste de l'encodeur du modèle d'inversion de texte. L'encodeur se nourrit des vecteurs one-hot produits par la fonction d'words2onehot() que vous avez implémentée précédemment.
Ici, vous allez implémenter la fonction d'encoder(). La fonction « encoder() » prend un ensemble de vecteurs one-hot et les convertit en une liste d'identifiants de mots.
Pour cet exercice, la fonction « words2onehot() » et le dictionnaire « word2index » (contenant les mots « We », « like » et « dogs ») ont été fournis.
Cet exercice fait partie du cours
Traduction automatique avec Keras
Instructions
- Convertissez
onehoten un tableau d'identifiants de mots à l'aide de la fonctionnp.argmax()et renvoyez les identifiants de mots. - Définissez une liste de mots contenant les mots «
We», «like» et «dogs». - Convertissez la liste de mots en vecteurs onehot à l'aide de la fonction «
words2onehot()». Veuillez noter que la commande «words2onehot()» prend une liste de mots et un dictionnaire Python comme arguments. - Obtenez le vecteur de contexte des vecteurs onehot à l'aide de la fonction
encoder().
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
def encoder(onehot):
# Get word IDs from onehot vectors and return the IDs
word_ids = np.____(____, axis=____)
return ____
# Define "We like dogs" as words
words = ____
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Get the context vector by using the encoder function
context = encoder(____)
print(context)