Thử nghiệm bagging lần đầu
Bạn đã thấy điều gì xảy ra trong một vòng lặp của một ensemble bagging. Giờ hãy tự xây dựng một mô hình bagging tùy chỉnh!
Hai hàm đã được chuẩn bị sẵn cho bạn:
def build_decision_tree(X_train, y_train, random_state=None):
# Lấy mẫu có hoàn lại,
# xây dựng một cây quyết định "yếu",
# và fit nó vào tập huấn luyện
def predict_voting(classifiers, X_test):
# Tạo các dự đoán riêng lẻ
# rồi kết hợp chúng bằng "Voting"
Về mặt kỹ thuật, hàm build_decision_tree() chính là những gì bạn đã làm ở bài tập trước. Ở đây, bạn sẽ xây dựng nhiều cây như vậy rồi kết hợp chúng. Hãy xem liệu ensemble các mô hình "yếu" này có cải thiện hiệu năng không!
Bài tập này là một phần của khóa học
Ensemble Methods in Python
Hướng dẫn bài tập
- Xây dựng các mô hình riêng lẻ bằng cách gọi
build_decision_tree(), truyền vào tập huấn luyện và chỉ sốilàm random state. - Dự đoán nhãn cho tập kiểm tra bằng
predict_voting(), với danh sách bộ phân loạiclf_listvà các đặc trưng đầu vào của tập kiểm tra.
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.
# Build the list of individual models
clf_list = []
for i in range(21):
weak_dt = ____
clf_list.append(weak_dt)
# Predict on the test set
pred = ____
# Print the F1 score
print('F1 score: {:.3f}'.format(f1_score(y_test, pred)))