ComeçarComece de graça

Adivinhar o próximo caractere

Neste exercício, você vai programar a função para prever o próximo caractere usando um modelo treinado. Você vai usar os últimos 20 caracteres pra adivinhar o próximo. Você vai aprender a treinar o modelo na próxima aula, já que essa etapa é essencial antes do treinamento do modelo.

Esse é o primeiro passo pra criar regras pra gerar frases, parágrafos, textos curtos ou outros blocos de texto, conforme necessário.

As variáveis n_vocab, chars_window e o dicionário index_to_char já estão carregados no ambiente. Além disso, as funções abaixo já estão prontas pra você usar:

  • initialize_X(): Transforma o texto que você digita em uma sequência de números de índice com o formato certo.
  • predict_next_char(): Pega o próximo caractere usando o método “ .predict() ” da classe modelo e o dicionário “ index_to_char ”.

Este exercício faz parte do curso

Redes Neurais Recorrentes (RNNs) para Modelagem de Linguagem com Keras

Ver curso

Instruções do exercício

  • Defina a função get_next_char() e adicione os parâmetros initial_text e chars_window sem valores padrão.
  • Use a funçã initialize_X() e passe a variável char_to_index pra pegar um vetor de zeros que vai ser usado pra previsão.
  • Use a função “ predict_next_char() ” pra pegar a previsão e guardar na variável “ next_char ”.
  • Imprima o caractere previsto aplicando a função definida no initial_text fornecido.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

def ____(model, ____, ____, char_to_index, index_to_char):
  	# Initialize the X vector with zeros
    X = ____(initial_text, chars_window, ____)
    
    # Get next character using the model
    ____ = predict_next_char(model, X, ____)
	
    return next_char

# Define context sentence and print the generated text
initial_text = "I am not insane, "
print("Next character: {0}".format(____(model, ____, 20, char_to_index, index_to_char)))
Editar e executar o código