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

Decoder'ı tanımlama

Bu egzersizde, decoder'ı uygulayacak ve encoder girdilerinden decoder GRU çıktısına giden uçtan uca bir model tanımlayacaksın. Decoder, encoder ile aynı modeli kullanır. Ancak, encoder'a kıyasla decoder'a verilen girdiler ve durumlarda farklılıklar vardır. Örneğin, decoder hem encoder tarafından üretilen bağlam vektörünü (context vector) girdi olarak tüketir hem de decoder için başlangıç durumu olarak kullanır. Encoder ile ilgili her şeyi belirtmek için en önekini (ör. en_gru), decoder ile ilgili şeyler için de önekini (ör. de_gru) kullanacağımızı unutma.

Decoder'ı uygulamak için RepeatVector ve GRU katmanlarını kullanacaksın.

Bu egzersiz için, encoder modeli ve daha önce uyguladığın çeşitli encoder katmanları sağlanmıştır. Örneğin, encoder girdileri en_inputs ve bağlam vektörü en_state olarak verilmiştir. Ayrıca, GRU ve Model nesnelerinin zaten içe aktarılmış olduğunu unutma.

Bu egzersiz

Keras ile Machine Translation

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

Egzersiz talimatları

  • en_state'i girdi olarak alan ve onu fr_len kadar tekrar eden bir RepeatVector katmanı tanımla.
  • Gizli birimleri hsize olan ve üretilen tüm çıktıları döndüren bir GRU katmanı decoder_gru tanımla.
  • decoder_gru katmanının çıktısını, girdi olarak de_inputs ve decoder'ın başlangıç durumu olarak en_state vererek al.
  • Girdi olarak en_inputs ve çıktı olarak gru_outputs alan bir model tanımla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

from tensorflow.keras.layers import RepeatVector

hsize = 48
fr_len = 20
# Define a RepeatVector layer
de_inputs = ____(____)(____)
# Define a GRU model that returns all outputs
decoder_gru = ____(____, ____=____)
# Get the outputs of the decoder
gru_outputs = ____(____, initial_state=____)
# Define a model with the correct inputs and outputs
enc_dec = ____(inputs=____, outputs=____)
enc_dec.summary()
Kodu Düzenle ve Çalıştır