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

Tinh chỉnh đồng thời gamma và C với GridSearchCV

Trong bài trước, giá trị gamma tốt nhất là 0.001 khi dùng giá trị mặc định của C là 1. Trong bài này, bạn sẽ tìm tổ hợp tốt nhất của Cgamma bằng GridSearchCV.

Giống như bài trước, bộ dữ liệu chữ số 2-vs-không-phải-2 đã được nạp sẵn, nhưng lần này đã được chia vào các biến X_train, y_train, X_testy_test. Mặc dù cross-validation đã tự chia tập huấn luyện thành nhiều phần, thường vẫn nên giữ riêng một tập kiểm tra để đảm bảo kết quả cross-validation là hợp lý.

Bài tập này là một phần của khóa học

Bộ phân loại tuyến tính với Python

Xem khóa học

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

  • Chạy GridSearchCV để tìm siêu tham số tốt nhất bằng tập huấn luyện.
  • In ra các giá trị tham số tốt nhất.
  • In độ chính xác trên tập kiểm tra, tập này không được dùng trong quy trình cross-validation.

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 an RBF SVM
svm = SVC()

# Instantiate the GridSearchCV object and run the search
parameters = {'C':[0.1, 1, 10], 'gamma':[0.00001, 0.0001, 0.001, 0.01, 0.1]}
searcher = GridSearchCV(svm, ____)
____.fit(____)

# Report the best parameters and the corresponding score
print("Best CV params", searcher.best_params_)
print("Best CV accuracy", searcher.best_score_)

# Report the test accuracy using these best parameters
print("Test accuracy of best grid search hypers:", searcher.score(____))
Chỉnh sửa và Chạy Mã