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

Mình có đang underfitting không?

Bạn đang tạo một mô hình random forest để dự đoán liệu bạn có thắng một ván Tic-Tac-Toe trong tương lai hay không. Với bộ dữ liệu tic_tac_toe, bạn đã tạo ra các tập huấn luyện và kiểm tra: X_train, X_test, y_train, và y_test.

Bạn quyết định tạo một loạt mô hình random forest với số lượng cây khác nhau (1, 2, 3, 4, 5, 10, 20 và 50). Số cây càng nhiều thì mô hình random forest sẽ chạy càng lâu. Tuy nhiên, nếu số cây quá ít, bạn có nguy cơ bị underfitting. Bạn đã tạo một vòng lặp for để kiểm tra mô hình với các số lượng cây khác nhau.

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

Xác thực Mô hình trong Python

Xem khóa học

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

  • Trong mỗi vòng lặp, dự đoán giá trị cho cả hai tập X_trainX_test.
  • Trong mỗi vòng lặp, thêm accuracy_score() của tập y_train và các dự đoán tương ứng vào train_scores.
  • Trong mỗi vòng lặp, thêm accuracy_score() của tập y_test và các dự đoán tương ứng vào test_scores.
  • In điểm số huấn luyện và kiểm tra bằng các câu lệnh print.

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.

from sklearn.metrics import accuracy_score

test_scores, train_scores = [], []
for i in [1, 2, 3, 4, 5, 10, 20, 50]:
    rfc = RandomForestClassifier(n_estimators=i, random_state=1111)
    rfc.fit(X_train, y_train)
    # Create predictions for the X_train and X_test datasets.
    train_predictions = rfc.predict(____)
    test_predictions = rfc.predict(____)
    # Append the accuracy score for the test and train predictions.
    train_scores.append(round(____(____, ____), 2))
    test_scores.append(round(____(____, ____), 2))
# Print the train and test scores.
print("The training scores were: {}".format(____))
print("The testing scores were: {}".format(____))
Chỉnh sửa và Chạy Mã