Bagian 1: Model pembalik teks - Encoder
Membuat model sederhana untuk membalik teks adalah cara yang sangat baik untuk memahami mekanisme model encoder-decoder dan bagaimana keduanya terhubung. Sekarang Anda akan mengimplementasikan bagian encoder dari model pembalik teks.
Implementasi encoder dibagi menjadi dua latihan. Pada latihan ini, Anda akan mendefinisikan fungsi pembantu words2onehot(). Fungsi words2onehot() menerima sebuah list kata dan sebuah dictionary word2index, lalu mengonversi list kata tersebut menjadi array vektor one-hot. Dictionary word2index tersedia di workspace.
Latihan ini adalah bagian dari kursus
Penerjemahan Mesin dengan Keras
Petunjuk latihan
- Konversikan kata menjadi ID menggunakan dictionary
word2indexdi dalam fungsiwords2onehot() - Konversikan ID kata menjadi vektor one-hot dengan panjang
3(menggunakan argumennum_classes) dan kembalikan array hasilnya. - Panggil fungsi
words2onehot()dengan kataI,like, dancats, lalu simpan hasilnya keonehot. - Cetak kata-kata beserta vektor one-hot yang sesuai menggunakan fungsi
print()danzip(). Fungsizip()memungkinkan Anda untuk melakukan iterasi beberapa list sekaligus.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
import numpy as np
def words2onehot(word_list, word2index):
# Convert words to word IDs
word_ids = [____[w] for w in ____]
# Convert word IDs to onehot vectors and return the onehot array
onehot = ____(____, num_classes=3)
return ____
words = ["I", "like", "cats"]
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Print the result as (, ) tuples
print([(w,ohe.tolist()) for ____,____ in zip(words, ____)])