Dodawanie dropout do sieci
Dropout to forma regularyzacji, która w każdej rundzie treningu losowo usuwa inny podzbiór jednostek z warstwy. W tym ćwiczeniu dodamy dropout do splotowej sieci neuronowej, której używaliśmy w poprzednich ćwiczeniach:
- Warstwa splotowa (15 jednostek, rozmiar jądra 2, aktywacja 'relu')
- Dropout (20%)
- Warstwa splotowa (5 jednostek, rozmiar jądra 2, aktywacja 'relu')
- Flatten
- Warstwa gęsta (3 jednostki, aktywacja 'softmax')
W przestrzeni roboczej dostępne są: sekwencyjny model oraz obiekty Dense, Conv2D, Flatten i Dropout.
To ćwiczenie jest częścią kursu
Modelowanie obrazów z Keras
Instrukcje do ćwiczenia
- Dodaj warstwę dropout z wartością 20% po pierwszej warstwie splotowej.
- Dodaj warstwę spłaszczającą (Flatten).
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Add a convolutional layer
model.add(Conv2D(15, kernel_size=2, activation='relu',
input_shape=(img_rows, img_cols, 1)))
# Add a dropout layer
____
# Add another convolutional layer
model.add(Conv2D(5, kernel_size=2, activation='relu'))
# Flatten and feed to output layer
____
model.add(Dense(3, activation='softmax'))