Bagian 2: Memahami model GRU
Sekarang Anda akan melihat bagaimana menggunakan model Keras untuk menerima batch input dengan ukuran sebarang. Kemampuan menerima batch berukuran sebarang penting karena berbagai alasan. Misalnya, ini memungkinkan Anda mendefinisikan satu model Keras dan mencoba berbagai ukuran batch selama tahap pelatihan model tanpa perlu mengubah apa pun pada model.
Untuk latihan ini, keras dan numpy (sebagai np) sudah diimpor.
Latihan ini adalah bagian dari kursus
Penerjemahan Mesin dengan Keras
Petunjuk latihan
- Definisikan lapisan input yang menerima batch data berukuran sebarang dengan panjang urutan 3 dan ukuran input 4.
- Definisikan lapisan GRU dengan 10 unit tersembunyi yang mengonsumsi input sebelumnya dan menghasilkan sebuah output.
- Definisikan sebuah Model bernama
modelyang menggunakan lapisan input sebagai masukan dan menghasilkan keluaran dari lapisan GRU sebagai output. Ingat bahwa Anda dapat menggunakan sintakskeras.models.Model(<argument>=<value>)untuk mendefinisikan sebuah model. - Prediksi keluaran model untuk
x1danx2.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Define an input layer
inp = keras.layers.____(____=(____))
# Define a GRU layer that takes in the input
gru_out = keras.layers.____(____)(____)
# Define a model that outputs the GRU output
____ = keras.models.____(inputs=____, outputs=____)
x1 = np.random.normal(size=(2,3,4))
x2 = np.random.normal(size=(5,3,4))
# Get the output of the model and print the result
y1 = ____.____(____)
y2 = ____.____(____)
print("shape (y1) = ", y1.shape, " shape (y2) = ", y2.shape)