Previsão de texto com LSTMs
Nos exercícios a seguir, você criará um modelo LSTM de brinquedo capaz de prever a próxima palavra usando um pequeno conjunto de dados de texto.
Esse conjunto de dados consiste em citações limpas dos filmes O Senhor dos Anéis. Você pode encontrá-los na variável text
.
Você transformará este text
em sequences
de comprimento 4 e usará o Keras Tokenizer
para preparar os recursos e rótulos para o seu modelo!
O Keras Tokenizer
já está importado para você usar. Ele atribui um número exclusivo a cada palavra exclusiva e armazena os mapeamentos em um dicionário. Isso é importante, pois o modelo lida com números, mas mais tarde você vai querer decodificar os números de saída de volta para palavras.
Este exercício faz parte do curso
Introdução à aprendizagem profunda com o Keras
Instruções do exercício
- Divida o texto em uma matriz de palavras usando
.split()
. - Faça frases de 4 palavras cada, movendo uma palavra de cada vez.
- Instanciar um
Tokenizer()
e, em seguida, encaixá-lo nas sentenças com.fit_on_texts()
. - Transforme o site
sentences
em uma sequência de números chamada.texts_to_sequences()
.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Split text into an array of words
words = ____.____
# Make sentences of 4 words each, moving one word at a time
sentences = []
for i in range(4, len(words)):
sentences.append(' '.join(words[i-____:i]))
# Instantiate a Tokenizer, then fit it on the sentences
tokenizer = ____
tokenizer.____(____)
# Turn sentences into a sequence of numbers
sequences = tokenizer.____(____)
print("Sentences: \n {} \n Sequences: \n {}".format(sentences[:5],sequences[:5]))