Warstwy poolingu w Keras
Keras implementuje operację poolingu jako warstwę, którą można dodać do sieci CNN między innymi warstwami. W tym ćwiczeniu zbudujesz splotową sieć neuronową podobną do tej, którą tworzyłeś wcześniej:
Splot => Splot => Spłaszczenie => Gęsta
Tym razem dodasz jednak warstwę poolingu. Architektura uwzględnia pojedynczą warstwę max-poolingu umieszczoną między warstwą splotową a warstwą gęstą, z oknem poolingu 2x2:
Splot => Max pooling => Splot => Spłaszczenie => Gęsta
W obszarze roboczym dostępne są: sekwencyjny model oraz obiekty Dense, Conv2D, Flatten i MaxPool2D.
To ćwiczenie jest częścią kursu
Modelowanie obrazów z Keras
Instrukcje do ćwiczenia
- Dodaj wejściową warstwę splotową (15 jednostek, rozmiar jądra 2, aktywacja
relu). - Dodaj operację max poolingu (okno poolingu o rozmiarze 2x2).
- Dodaj kolejną warstwę splotową (5 jednostek, rozmiar jądra 2, aktywacja
relu). - Spłaszcz wynik drugiej warstwy splotowej i dodaj warstwę
Densejako wyjście (3 kategorie, aktywacjasoftmax).
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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()