ผลของการลบตัวอย่างข้อมูลออก
Support vector คือตัวอย่างข้อมูลในชุด training ที่มีอิทธิพลต่อ decision boundary ในแบบฝึกหัดนี้ จะได้สังเกตพฤติกรรมดังกล่าวโดยการลบตัวอย่างที่ไม่ใช่ support vector ออกจากชุด training
ชุดข้อมูลคุณภาพไวน์ถูกโหลดไว้ใน X และ y แล้ว (ใช้เฉพาะสองฟีเจอร์แรก) (หมายเหตุ: มีการระบุ lims ใน plot_classifier() เพื่อบังคับให้ทั้งสองกราฟใช้ขอบเขตแกนเดียวกัน ทำให้เปรียบเทียบกันได้โดยตรง)
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Linear Classifiers ใน Python
คำแนะนำการฝึกหัด
- Train linear SVM บนชุดข้อมูลทั้งหมด
- สร้างชุดข้อมูลใหม่ที่มีเฉพาะ support vector
- Train linear SVM ใหม่บนชุดข้อมูลที่เล็กลง
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Train a linear SVM
svm = SVC(kernel="linear")
svm.fit(____)
plot_classifier(X, y, svm, lims=(11,15,0,6))
# Make a new data set keeping only the support vectors
print("Number of original examples", len(X))
print("Number of support vectors", len(svm.support_))
X_small = X[____]
y_small = y[____]
# Train a new SVM using only the support vectors
svm_small = SVC(kernel="linear")
svm_small.fit(____)
plot_classifier(X_small, y_small, svm_small, lims=(11,15,0,6))