Biên dịch một mô hình tuần tự
Trong bài tập này, bạn sẽ tiến tới phân loại các chữ cái từ bộ dữ liệu Sign Language MNIST; tuy nhiên, bạn sẽ sử dụng một kiến trúc mạng khác so với bài trước. Số lớp sẽ ít hơn, nhưng số nút nhiều hơn. Bạn cũng sẽ áp dụng dropout để tránh overfitting. Cuối cùng, bạn sẽ biên dịch mô hình để dùng optimizer adam và hàm mất mát categorical_crossentropy. Bạn cũng sẽ dùng một phương thức trong keras để tóm tắt kiến trúc mô hình. Lưu ý rằng keras đã được import từ tensorflow cho bạn và một mô hình tuần tự keras đã được định nghĩa là model.
Bài tập này là một phần của khóa học
Nhập môn TensorFlow bằng Python
Hướng dẫn bài tập
- Ở lớp dense đầu tiên, đặt số nút là 16, hàm kích hoạt là
sigmoid, vàinput_shapelà (784,). - Áp dụng dropout với tỷ lệ 25% cho đầu ra của lớp đầu tiên.
- Đặt lớp đầu ra là dense, có 4 nút và dùng hàm kích hoạt
softmax. - Biên dịch mô hình với optimizer
adamvà hàm mất mátcategorical_crossentropy.
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.
# Define the first dense layer
model.add(keras.layers.Dense(____, ____, ____))
# Apply dropout to the first layer's output
model.add(keras.layers.____(0.25))
# Define the output layer
____
# Compile the model
model.compile('____', loss='____')
# Print a model summary
print(model.summary())