Tinh chỉnh siêu tham số bằng thuật toán di truyền với TPOT
Bạn sẽ thực hiện một ví dụ đơn giản về tinh chỉnh siêu tham số bằng thuật toán di truyền. TPOT là một thư viện rất mạnh với nhiều tính năng. Ở bài học này, bạn mới chỉ chạm đến phần bề mặt, nhưng rất khuyến khích bạn tự khám phá thêm khi có thời gian.
Đây là một ví dụ rất nhỏ. Trong thực tế, TPOT thường được chạy trong nhiều giờ để tìm mô hình tốt nhất. Bạn sẽ dùng kích thước quần thể và số con lai lớn hơn nhiều, cũng như hàng trăm thế hệ để tìm được mô hình tốt.
Bạn sẽ tạo estimator, fit estimator vào dữ liệu huấn luyện và sau đó chấm điểm trên dữ liệu kiểm tra.
Trong ví dụ này, chúng ta muốn dùng:
- 3 thế hệ (generations)
- 4 cá thể trong quần thể (population size)
- 3 cá thể con (offspring) ở mỗi thế hệ
- độ chính xác (accuracy) để chấm điểm
random_state bằng 2 đã được đặt để đảm bảo tính nhất quán của kết quả.
Bài tập này là một phần của khóa học
Tinh chỉnh siêu tham số trong Python
Hướng dẫn bài tập
- Gán các giá trị được nêu trong phần ngữ cảnh vào các tham số đầu vào của
tpot_clf. - Tạo bộ phân loại
tpot_clfvới các tham số đúng. - Fit bộ phân loại vào dữ liệu huấn luyện (
X_trainvày_trainđã có sẵn trong không gian làm việc của bạn). - Dùng bộ phân loại đã fit để chấm điểm trên tập kiểm tra (
X_testvày_testđã có sẵn trong không gian làm việc của bạn).
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.
# Assign the values outlined to the inputs
number_generations = ____
population_size = ____
offspring_size = ____
scoring_function = ____
# Create the tpot classifier
tpot_clf = TPOTClassifier(generations=____, population_size=____,
offspring_size=____, scoring=____,
verbosity=2, random_state=2, cv=2)
# Fit the classifier to the training data
____.____(____, ____)
# Score on the test set
print(____.____(____, ____))