Parte 1: Modelo de inversão de texto - Codificador
Criar um modelo simples de reversão de texto é uma ótima maneira de entender como funcionam os modelos de codificador-decodificador e como eles se conectam. Agora você vai implementar a parte do codificador de um modelo de reversão de texto.
A implementação do codificador foi dividida em dois exercícios. Neste exercício, você vai definir a função auxiliar “ words2onehot()
”. A função “ words2onehot()
” deve receber uma lista de palavras e um dicionário “ word2index
” e converter a lista de palavras em uma matriz de vetores one-hot. O dicionário word2index
está disponível na área de trabalho.

Este exercício faz parte do curso
Tradução automática com Keras
Instruções do exercício
- Converta palavras em IDs usando o dicionário
word2index
na funçãowords2onehot()
- Converte os IDs das palavras em vetores onehot com comprimento
3
(usando o argumentonum_classes
) e devolve a matriz resultante. - Chame a função “
words2onehot()
” com as palavras “I
”, “like
” e “cats
” e coloque o resultado em “onehot
”. - Imprima as palavras e seus vetores onehot correspondentes usando as funções
print()
ezip()
. A função `zip()
` permite iterar várias listas ao mesmo tempo.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
import numpy as np
def words2onehot(word_list, word2index):
# Convert words to word IDs
word_ids = [____[w] for w in ____]
# Convert word IDs to onehot vectors and return the onehot array
onehot = ____(____, num_classes=3)
return ____
words = ["I", "like", "cats"]
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Print the result as (, ) tuples
print([(w,ohe.tolist()) for ____,____ in zip(words, ____)])