Deel 2: Tekst-omkeerdermodel - Encoder
Je gaat nu de rest van de encoder van het tekst-omkeerdermodel implementeren. De encoder werkt op de one-hotvectoren die worden gemaakt door de functie words2onehot() die je eerder hebt geïmplementeerd.
Hier implementeer je de functie encoder(). De functie encoder() neemt een reeks one-hotvectoren en zet die om naar een lijst met woord-ID's.
Voor deze oefening zijn de functie words2onehot() en het woordenboek word2index (met de woorden We, like en dogs) beschikbaar gesteld.
Deze oefening maakt deel uit van de cursus
Machine Translation met Keras
Oefeninstructies
- Zet
onehotom naar een array met woord-ID's met de functienp.argmax()en retourneer de woord-ID's. - Definieer een lijst met de woorden
We,like,dogs. - Zet de woordenlijst om naar onehot-vectoren met de functie
words2onehot(). Onthoud datwords2onehot()een lijst met woorden en een Python-woordenboek als argumenten krijgt. - Haal de contextvector van de onehot-vectoren op met de functie
encoder().
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
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)