Lapisan pooling Keras
Keras mengimplementasikan operasi pooling sebagai sebuah lapisan yang dapat ditambahkan ke CNN di antara lapisan lainnya. Pada latihan ini, Anda akan membangun convolutional neural network yang mirip dengan yang telah Anda buat sebelumnya:
Convolution => Convolution => Flatten => Dense
Namun, Anda juga akan menambahkan sebuah lapisan pooling. Arsitektur akan menambahkan satu max-pooling layer di antara lapisan convolutional dan lapisan dense dengan pooling 2x2:
Convolution => Max pooling => Convolution => Flatten => Dense
Sebuah model Sequential beserta objek Dense, Conv2D, Flatten, dan MaxPool2D tersedia di workspace Anda.
Latihan ini adalah bagian dari kursus
Pemodelan Citra dengan Keras
Petunjuk latihan
- Tambahkan lapisan convolutional input (15 unit, ukuran kernel 2, aktivasi
relu). - Tambahkan operasi maximum pooling (pooling pada jendela berukuran 2x2).
- Tambahkan satu lagi lapisan convolution (5 unit, ukuran kernel 2, aktivasi
relu). - Flatten keluaran dari convolution kedua dan tambahkan lapisan
Denseuntuk output (3 kategori, aktivasisoftmax).
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Add a convolutional layer
____(____(15, kernel_size=2, activation='relu',
input_shape=(img_rows, img_cols, 1)))
# Add a pooling operation
____
# Add another convolutional layer
____
# Flatten and feed to output layer
model.add(____)
model.add(____(3, activation='softmax'))
model.summary()