Добавление dropout в нейронную сеть
Dropout — это метод регуляризации, при котором на каждом шаге обучения случайным образом отключается различное подмножество нейронов в слое. В этом упражнении мы добавим dropout в свёрточную нейронную сеть, которую использовали в предыдущих упражнениях:
- Свёртка (15 нейронов, размер ядра 2, активация 'relu')
- Dropout (20%)
- Свёртка (5 нейронов, размер ядра 2, активация 'relu')
- Выравнивание (Flatten)
- Полносвязный слой (3 нейрона, активация 'softmax')
В вашем рабочем пространстве доступны: последовательная модель model, а также объекты Dense, Conv2D, Flatten и Dropout.
Это упражнение является частью курса
Моделирование изображений с помощью Keras
Инструкции к упражнению
- Добавьте слой dropout после первого слоя с долей отключения 20%.
- Добавьте слой выравнивания.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# 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'))