Ефекти пакетної нормалізації
Пакетна нормалізація зазвичай пришвидшує навчання моделей і робить їхні криві навчання стабільнішими. Подивімося, як порівнюються дві однакові моделі — з пакетною нормалізацією та без неї.
Побудована вами модель batchnorm_model уже завантажена й готова до використання. Також доступна її точна копія без пакетної нормалізації: standard_model. Ви можете переглянути їхній summary() у консолі. X_train, y_train, X_test і y_test теж завантажені, тож ви можете навчити обидві моделі.
Ви порівняєте криві навчання за точністю для обох моделей, візуалізувавши їх за допомогою compare_histories_acc().
Ви можете переглянути функцію, вставивши в консоль show_code(compare_histories_acc).
Ця вправа є частиною курсу
Вступ до Deep Learning з Keras
Інструкції до вправи
- Навчіть
standard_modelпротягом 10 епох, передавши тренувальні та валідаційні дані, і збережіть історію вh1_callback. - Навчіть
batchnorm_modelпротягом 10 епох, передавши тренувальні та валідаційні дані, і збережіть історію вh2_callback. - Викличте
compare_histories_acc, передавшиh1_callbackіh2_callback.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Train your standard model, storing its history callback
h1_callback = standard_model.fit(____, ____, validation_data=(____,____), epochs=____, verbose=0)
# Train the batch normalized model you recently built, store its history callback
h2_callback = batchnorm_model.fit(____, ____, validation_data=____, epochs=____, verbose=0)
# Call compare_histories_acc passing in both model histories
compare_histories_acc(____, ____)