Dự đoán xếp hạng của một ứng dụng
Sau khi đã khám phá bộ dữ liệu Google apps ở bài trước, giờ hãy xây dựng một mô hình dự đoán xếp hạng (rating) của ứng dụng dựa trên một tập con các đặc trưng của nó.
Để làm điều này, bạn sẽ dùng DecisionTreeRegressor của scikit-learn. Vì cây quyết định là nền tảng của nhiều mô hình ensemble, ôn lại cách chúng hoạt động sẽ rất hữu ích cho bạn trong suốt khóa học này.
Chúng ta sẽ dùng MAE (mean absolute error) làm thước đo đánh giá. Chỉ số này rất dễ diễn giải, vì nó biểu thị độ lệch tuyệt đối trung bình giữa xếp hạng thực tế và xếp hạng dự đoán.
Tất cả các mô-đun cần thiết đã được nhập sẵn. Các đặc trưng và mục tiêu lần lượt có trong biến X và y.
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
- Dùng
train_test_split()để chiaXvàythành tập huấn luyện và kiểm tra. Dùng 20%, tức0.2, làm kích thước tập kiểm tra. - Khởi tạo
DecisionTreeRegressor(),reg_dt, với các siêu tham số:min_samples_leaf = 3vàmin_samples_split = 9. - Huấn luyện mô hình trên tập huấn luyện bằng
.fit(). - Dự đoán nhãn của tập kiểm tra bằng
.predict().
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.
# Split into train (80%) and test (20%) sets
X_train, X_test, y_train, y_test = ____(____, ____, ____, random_state=42)
# Instantiate the regressor
reg_dt = ____(____, ____, random_state=500)
# Fit to the training set
____
# Evaluate the performance of the model on the test set
y_pred = ____
print('MAE: {:.3f}'.format(mean_absolute_error(y_test, y_pred)))