Bắt đầu ngayBắt đầu miễn phí

Học nhận diện chữ số

Bạn sẽ xây dựng một mô hình trên bộ dữ liệu digits, một bộ dữ liệu mẫu đi kèm sẵn với scikit-learn. Bộ dữ liệu digits gồm các chữ số viết tay 8x8 pixel từ 0 đến 9:

Bạn muốn phân biệt giữa 10 chữ số có thể có dựa trên một hình ảnh, nên đây là bài toán phân loại đa lớp.

Bộ dữ liệu đã được chia sẵn thành X_train, y_train, X_testy_test, với 30% dữ liệu dành cho tập kiểm tra. Nhãn đã được mã hóa one-hot, nên bạn không cần dùng hàm to_categorical() của Keras.

Hãy xây dựng model mới này!

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

Xem khóa học

Hướng dẫn bài tập

  • Thêm một lớp Dense với 16 neuron, relu activation và input_shape nhận tổng số pixel của ảnh chữ số 8x8.
  • Thêm một lớp Dense với 10 đầu ra và softmax activation.
  • Biên dịch mô hình bằng adam, categorical_crossentropy và metric accuracy.
  • Đảm bảo mô hình chạy được bằng cách dự đoán trên X_train.

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.

# Instantiate a Sequential model
model = Sequential()

# Input and hidden layer with input_shape, 16 neurons, and relu 
model.add(Dense(____, input_shape = (____,), activation = ____))

# Output layer with 10 neurons (one per digit) and softmax
model.____(____)

# Compile your model
model.____(optimizer = ____, loss = ____, metrics = [____])

# Test if your model is well assembled by predicting before training
print(model.predict(____))
Chỉnh sửa và Chạy Mã