Chuẩn hóa theo batch cho mô hình quen thuộc
Bạn còn nhớ tập dữ liệu digits mà bạn đã huấn luyện ở bài tập đầu của chương này chứ?
Đây là một bài toán phân loại đa lớp mà bạn đã giải bằng softmax và 10 neuron ở tầng đầu ra.
Bây giờ, bạn sẽ xây dựng một mô hình sâu hơn gồm 3 tầng ẩn, mỗi tầng 50 neuron, có chèn batch normalization giữa các tầng. Tham số kernel_initializer được dùng để khởi tạo trọng số theo cách tương tự.
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
- Import
BatchNormalizationtừ các layers củatensorflow.keras. - Xây dựng mô hình mạng sâu của bạn, dùng 50 neuron cho mỗi tầng ẩn và thêm batch normalization giữa các tầng.
- Biên dịch mô hình với bộ tối ưu stochastic gradient descent,
sgd.
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.
# Import batch normalization from keras layers
from tensorflow.____.____ import ____
# Build your deep network
batchnorm_model = ____
batchnorm_model.add(Dense(____, input_shape=(64,), activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(____, activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(____, activation='relu', kernel_initializer='normal'))
batchnorm_model.add(____)
batchnorm_model.add(Dense(10, activation='softmax', kernel_initializer='normal'))
# Compile your model with sgd
batchnorm_model.compile(optimizer=____, loss='categorical_crossentropy', metrics=['accuracy'])