MulaiMulai sekarang secara gratis

Mendefinisikan encoder

Di sini Anda akan mengambil langkah pertama menuju pembuatan model terjemahan mesin: mengimplementasikan encoder. Encoder yang akan Anda implementasikan adalah model yang sangat sederhana dibandingkan dengan model kompleks yang digunakan pada aplikasi dunia nyata seperti layanan terjemahan mesin Google. Namun jangan khawatir, meskipun modelnya sederhana, konsepnya sama seperti pada model-model kompleks tersebut. Di sini kita akan menggunakan awalan en (misalnya en_gru) untuk menandai apa pun yang terkait dengan encoder dan de untuk menandai hal-hal yang terkait dengan decoder (misalnya de_gru).

Anda akan melihat bahwa kita memilih en_vocab lebih kecil (150) daripada nilai sebenarnya (228) yang kita temukan. Membuat kosakata lebih kecil mengurangi jejak memori model. Sedikit mengurangi kosakata tidak masalah karena kita menghapus kata-kata yang paling jarang saat melakukannya. Untuk tugas terjemahan mesin, kata-kata yang jarang biasanya kurang bernilai dibandingkan kata-kata yang umum.

Latihan ini adalah bagian dari kursus

Penerjemahan Mesin dengan Keras

Lihat Kursus

Petunjuk latihan

  • Definisikan layer Input untuk masukan yang memiliki ukuran kosakata en_vocab dan panjang sekuens en_len, menggunakan argumen shape.
  • Definisikan layer keras.layers.GRU yang memiliki unit tersembunyi hsize dan mengembalikan state-nya.
  • Peroleh keluaran dari layer GRU dengan memasukkan en_inputs dan tetapkan state GRU ke en_state serta keluarannya ke en_out.
  • Definisikan keras.models.Model dengan masukan en_inputs dan keluaran en_state, lalu cetak ringkasan model (model summary).

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

import tensorflow.keras as keras

en_len = 15
en_vocab = 150
hsize = 48

# Define an input layer
en_inputs = keras.layers.____(____=____)
# Define a GRU layer which returns the state
en_gru = ____(____, ____=____)
# Get the output and state from the GRU
____, ____ = ____(____)
# Define and print the model summary
encoder = ____(inputs=____, ____=____)
print(encoder.____)
Edit dan Jalankan Kode