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
word2indexna 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, ____)])