ComeçarComece de graça

Invertendo frases

Aqui você vai aprender a inverter frases para o modelo codificador. Como falamos, inverter as frases de origem ajuda a criar uma conexão inicial forte entre o codificador e o decodificador, o que melhora o desempenho do modelo. Mas, lembre-se sempre que a vantagem depende dos dois idiomas que você está traduzindo. Desde que tenham o mesmo sujeito, verbo e ordem dos objetos, isso vai ajudar o modelo.

Neste exercício, você vai modificar a função “ sents2seqs() ” para poder inverter frases, se necessário. O usuário pode especificar um argumento de palavra-chave booleano reverse que inverte o texto.

Este exercício faz parte do curso

Tradução automática com Keras

Ver curso

Instruções do exercício

  • Escreva a assinatura da função ` sents2seqs() adicionando um novo argumento de palavra-chave reverse `, cujo valor padrão é ` `False``.
  • Inverta os IDs de sequência retornados na dimensão de tempo (usando a sintaxe ::-1 ), de modo que o primeiro ID de palavra se torne o último.
  • Chame o sents2seqs() e inverta o sentences e mantenha todos os outros valores dos parâmetros padrão inalterados.

Exercício interativo prático

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

sentences = ["california is never rainy during july ."]
# Add new keyword parameter reverse which defaults to False
def ____(input_type, sentences, onehot=False, pad_type='post', ____=____):     
    encoded_text = en_tok.texts_to_sequences(sentences)
    preproc_text = pad_sequences(encoded_text, padding=pad_type, truncating='post', maxlen=en_len)
    if reverse:
      # Reverse the text using numpy axis reversing
      preproc_text = preproc_text[:, ____]
    if onehot:
        preproc_text = to_categorical(preproc_text, num_classes=en_vocab)
    return preproc_text
# Call sents2seqs to get the padded and reversed sequence of IDs
pad_seq = ____('source', ____, ____=____)
rev_sent = [en_tok.index_word[wid] for wid in pad_seq[0][-6:]] 
print('\tReversed: ',' '.join(rev_sent))
Editar e executar o código