Mô hình hóa mà không chuẩn hóa
Hãy xem điều gì có thể xảy ra với độ chính xác của mô hình nếu bạn cố gắng huấn luyện mà không chuẩn hóa dữ liệu trước.
Ở đây, chúng ta có một tập con của bộ dữ liệu wine. Một trong các cột, Proline, có phương sai rất lớn so với các cột khác. Đây là ví dụ điển hình cho tình huống mà một kỹ thuật như log normalization sẽ rất hữu ích, bạn sẽ học ở phần tiếp theo.
Quy trình huấn luyện mô hình trong scikit-learn hẳn giờ đã quen thuộc với bạn, nên chúng ta sẽ không đi quá sâu. Bạn đã có sẵn một mô hình k-nearest neighbors (knn) cũng như các tập X và y cần để fit và đánh giá.
Bài tập này là một phần của khóa học
Tiền xử lý cho Machine Learning bằng Python
Hướng dẫn bài tập
- Chia
Xvàythành các tập huấn luyện và kiểm tra, đảm bảo nhãn lớp được phân bố đều ở cả hai tập. - Fit mô hình
knnvới đặc trưng và nhãn của tập huấn luyện. - In ra độ chính xác trên tập kiểm tra của mô hình
knnbằng phương thức.score().
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 the dataset into training and test sets
X_train, X_test, y_train, y_test = ____(____, ____, stratify=____, random_state=42)
knn = KNeighborsClassifier()
# Fit the knn model to the training data
knn.____(____, ____)
# Score the model on the test data
print(knn.____(____))