Začněte nyníZačněte zdarma

Poolingové vrstvy v Kerasu

Keras implementuje pooling jako vrstvu, kterou lze přidat do CNN mezi ostatní vrstvy. V tomto cvičení sestavíš konvoluční neuronovou síť podobnou té, kterou jsi už budoval/a dříve:

Konvoluce => Konvoluce => Flatten => Dense

Tentokrát ale přidáš také poolingovou vrstvu. Architektura bude obsahovat jednu max-poolingovou vrstvu mezi konvoluční vrstvou a hustou vrstvou s poolingem 2x2:

Konvoluce => Max pooling => Konvoluce => Flatten => Dense

V tvém pracovním prostředí jsou k dispozici objekt model typu Sequential a objekty Dense, Conv2D, Flatten a MaxPool2D.

Toto cvičení je součástí kurzu

Image Modeling with Keras

Zobrazit kurz

Pokyny k cvičení

  • Přidej vstupní konvoluční vrstvu (15 jednotek, velikost kernelu 2, aktivace relu).
  • Přidej operaci max poolingu (pooling přes okna velikosti 2x2).
  • Přidej další konvoluční vrstvu (5 jednotek, velikost kernelu 2, aktivace relu).
  • Převeď výstup druhé konvoluce na jednorozměrný vektor pomocí Flatten a přidej vrstvu Dense pro výstup (3 kategorie, aktivace softmax).

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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()
Upravit a spustit kód