Parte 2: Modello di inversione del testo - Encoder
Ora implementerai il resto dell'encoder del modello di inversione del testo. L'encoder elabora i vettori one-hot prodotti dalla funzione words2onehot() che hai implementato in precedenza.
Qui implementerai la funzione encoder(). La funzione encoder() prende in input un insieme di vettori one-hot e li converte in una lista di ID di parole.
Per questo esercizio, sono già forniti la funzione words2onehot() e il dizionario word2index (che contiene le parole We, like e dogs).
Questo esercizio fa parte del corso
Traduzione automatica con Keras
Istruzioni dell'esercizio
- Converti
onehotin un array di ID parola usando la funzionenp.argmax()e restituisci gli ID. - Definisci una lista di parole con
We,like,dogs. - Converte la lista di parole in vettori one-hot usando la funzione
words2onehot(). Ricorda chewords2onehot()accetta una lista di parole e un dizionario Python come argomenti. - Ottieni il vettore di contesto dei vettori one-hot usando la funzione
encoder().
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
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)