KNN บนข้อมูลที่ผ่านการ scaling
คะแนน accuracy บนชุดข้อมูล wine ที่ยังไม่ได้ scaling นั้นอยู่ในเกณฑ์ดี แต่ลองมาดูกันว่าการใช้ standardization จะช่วยให้ผลลัพธ์ดีขึ้นแค่ไหน โมเดล knn รวมถึงข้อมูล X, y และ labels ถูกสร้างไว้ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การเตรียมข้อมูลสำหรับ Machine Learning ด้วย Python
คำแนะนำการฝึกหัด
- สร้าง
StandardScaler()แล้วเก็บไว้ในตัวแปรชื่อscaler - Scale ฟีเจอร์ชุด training และ test โดยระวังไม่ให้เกิด data leakage
- Fit โมเดล
knnกับข้อมูล training ที่ผ่านการ scaling แล้ว - ประเมินประสิทธิภาพของโมเดลด้วยการคำนวณค่า accuracy บนชุดข้อมูล test
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
X_train, X_test, y_train, y_test = train_test_split(X, y, stratify=y, random_state=42)
# Instantiate a StandardScaler
scaler = ____
# Scale the training and test features
X_train_scaled = ____.____(____)
X_test_scaled = ____.____(____)
# Fit the k-nearest neighbors model to the training data
____.____(____, ____)
# Score the model on the test data
print(____.____(____, ____))