Terjemahkan Portugis ke Inggris
Ini adalah latihan terakhir dalam kursus ini, selamat telah sampai di sini!
Anda akan mempelajari cara menggunakan model NMT untuk melakukan penerjemahan.
Sebuah model yang melakukan encoding frasa pendek dalam bahasa Portugis dan decoding menjadi frasa pendek dalam bahasa Inggris telah dilatih sebelumnya dan dimuat ke dalam variabel model.
Selain itu, fungsi predict_one() sudah dimuat; gunakan help() untuk detailnya, dan himpunan data tersedia pada variabel test (teks mentah) dan X_test (tertokenisasi).
Anda akan mendefinisikan sebuah fungsi untuk menerjemahkan daftar kalimat. Pada parameternya, sentences adalah daftar frasa yang akan diterjemahkan, index_to_word adalah dict yang berisi indeks numerik sebagai kunci dan kata sebagai nilai untuk bahasa Inggris, yang dimuat ke dalam variabel en_index_to_word.
Ringkasan model telah dicetak untuk pertimbangan Anda.
Latihan ini merupakan bagian dari kursus
Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras
Instruksi latihan
- Lakukan loop pada iterator hasil
enumerate()dari frasa-frasa. - Gunakan fungsi
predict_one()yang sudah dimuat untuk menerjemahkan satu frasa. - Cetak hasil terjemahannya.
- Panggil fungsi yang telah didefinisikan untuk menerjemahkan 10 frasa awal dari variabel
X_test.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# Function to predict many phrases
def predict_many(model, sentences, index_to_word, raw_dataset):
for i, sentence in ____(sentences):
# Translate the Portuguese sentence
translation = ____(model, sentence, index_to_word)
# Get the raw Portuguese and English sentences
raw_target, raw_src = raw_dataset[i]
# Print the correct Portuguese and English sentences and the predicted
print('src=[%s], target=[%s], predicted=[%s]' % (raw_src, raw_target, ____))
____(model, X_test[____], en_index_to_word, test)