BaşlayınÜcretsiz Başlayın

Cümleleri tersine çevirme

Burada, kodlayıcı (encoder) model için cümleleri nasıl tersine çevireceğini öğreneceksin. Konuştuğumuz gibi, kaynak cümleleri tersine çevirmek, kodlayıcı ile kod çözücü (decoder) arasında güçlü bir başlangıç bağlantısı kurmaya yardımcı olur ve modelin performansını artırır. Ancak, faydanın çevirdiğin iki dile bağlı olduğunu her zaman aklında tut. Özne, fiil ve nesne sıraları aynı olduğu sürece, bu yaklaşım modele fayda sağlar.

Bu egzersizde, gerektiğinde cümleleri tersine çevirebilecek şekilde sents2seqs() fonksiyonunu değiştireceksin. Kullanıcı, metni tersine çevirmeyi sağlayan reverse adlı bir boolean anahtar argüman belirtebilir.

Bu egzersiz

Keras ile Machine Translation

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Varsayılanı False olan yeni bir anahtar argüman reverse ekleyerek sents2seqs() fonksiyon imzasını yaz.
  • Döndürülen dizi kimliklerini zaman boyutunda ( ::-1 sözdizimini kullanarak) tersine çevir; böylece ilk kelime kimliği sonuncu olur.
  • sents2seqs() fonksiyonunu çağır ve verilen sentences dizisini tersine çevir; diğer tüm varsayılan parametre değerlerini değiştirme.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

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))
Kodu Düzenle ve Çalıştır