Tác động của batch normalization
Batch normalization thường giúp mô hình học nhanh hơn và làm cho đường cong học ổn định hơn. Hãy xem hai mô hình giống hệt nhau — có và không có batch normalization — khác nhau thế nào.
Mô hình bạn vừa xây batchnorm_model đã được nạp sẵn để bạn dùng. Một bản sao y hệt nhưng không có batch normalization: standard_model, cũng đã sẵn sàng. Bạn có thể xem summary() của chúng trong bảng điều khiển. X_train, y_train, X_test và y_test cũng đã được nạp để bạn huấn luyện cả hai mô hình.
Bạn sẽ so sánh đường cong độ chính xác (accuracy) của cả hai mô hình bằng cách vẽ chúng với compare_histories_acc().
Bạn có thể xem hàm này bằng cách dán show_code(compare_histories_acc) vào bảng điều khiển.
Bài tập này là một phần của khóa học
Nhập môn Deep Learning với Keras
Hướng dẫn bài tập
- Huấn luyện
standard_modeltrong 10 epoch, truyền dữ liệu train và validation, lưu history vàoh1_callback. - Huấn luyện
batchnorm_modeltrong 10 epoch, truyền dữ liệu train và validation, lưu history vàoh2_callback. - Gọi
compare_histories_accvà truyền vàoh1_callbackcùngh2_callback.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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(____, ____)