Hồi quy với đặc trưng phân loại (categorical)
Giờ bạn đã tạo music_dummies với các đặc trưng nhị phân cho từng thể loại bài hát, hãy xây dựng mô hình ridge regression để dự đoán độ phổ biến của bài hát.
music_dummies đã được nạp sẵn cho bạn, cùng với Ridge, cross_val_score, numpy là np, và một đối tượng KFold lưu trong kf.
Mô hình sẽ được đánh giá bằng cách tính RMSE trung bình, nhưng trước hết, bạn cần chuyển đổi điểm số của mỗi fold về giá trị dương và lấy căn bậc hai. Thước đo này cho thấy sai số trung bình của dự đoán, vì vậy có thể so sánh với độ lệch chuẩn của biến mục tiêu — "popularity".
Bài tập này là một phần của khóa học
Học có giám sát với scikit-learn
Hướng dẫn bài tập
- Tạo
Xchứa toàn bộ đặc trưng trongmusic_dummies, vàylà cột"popularity"tương ứng. - Khởi tạo mô hình ridge regression, đặt
alphabằng 0.2. - Thực hiện cross-validation trên
Xvàyvới mô hình ridge, đặtcvbằngkf, và dùng negative mean squared error làm thước đo chấm điểm. - In các giá trị RMSE bằng cách đổi
scoresâm thành dương và lấy căn bậc hai.
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.
# Create X and y
X = ____
y = ____
# Instantiate a ridge model
ridge = ____
# Perform cross-validation
scores = ____(____, ____, ____, cv=____, scoring="____")
# Calculate RMSE
rmse = np.____(____)
print("Average RMSE: {}".format(np.mean(rmse)))
print("Standard Deviation of the target array: {}".format(np.std(y)))