Perbandingan jumlah parameter
Anda telah melihat bahwa representasi one-hot bukan representasi kata yang baik karena sangat jarang (sparse). Menggunakan lapisan Embedding menghasilkan representasi vektor yang rapat (dense), tetapi juga membutuhkan banyak parameter untuk dipelajari.
Pada latihan ini Anda akan membandingkan jumlah parameter dari dua model yang menggunakan embeddings dan pengodean one-hot untuk melihat perbedaannya.
Model model_onehot sudah dimuat di lingkungan, begitu pula Sequential, Dense, dan GRU dari keras. Terakhir, parameter vocabulary_size=80000 dan sentence_len=200 juga sudah dimuat.
Latihan ini merupakan bagian dari kursus
Recurrent Neural Networks (RNN) untuk Pemodelan Bahasa dengan Keras
Instruksi latihan
- Impor lapisan
Embeddingdarikeras.layers. - Pada lapisan embedding, gunakan ukuran kosakata ditambah satu sebagai dimensi masukan dan ukuran kalimat sebagai panjang masukan.
- Kompilasi model.
- Tampilkan ringkasan model dengan embedding.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# Import the embedding layer
from tensorflow.keras.layers import ____
# Create a model with embeddings
model = Sequential(name="emb_model")
model.add(Embedding(input_dim=____, output_dim=wordvec_dim, input_length=____, trainable=True))
model.add(GRU(128))
model.add(Dense(1))
model.____(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# Print the summaries of the one-hot model
model_onehot.summary()
# Print the summaries of the model with embeddings
model.____