เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ปรับแต่ง gamma และ C พร้อมกันด้วย GridSearchCV

ในแบบฝึกหัดก่อนหน้า ค่าที่ดีที่สุดของ gamma คือ 0.001 โดยใช้ค่าดีฟอลต์ของ C ซึ่งเท่ากับ 1 ในแบบฝึกหัดนี้ คุณจะค้นหาค่าผสมที่ดีที่สุดของ C และ gamma โดยใช้ GridSearchCV

เช่นเดียวกับแบบฝึกหัดก่อนหน้า ชุดข้อมูลตัวเลข 2-vs-not-2 โหลดไว้แล้ว แต่คราวนี้แบ่งออกเป็นตัวแปร X_train, y_train, X_test และ y_test แม้ว่า cross-validation จะแบ่งชุดข้อมูลฝึกออกเป็นส่วน ๆ อยู่แล้ว แต่การแยกชุดทดสอบไว้ต่างหากก็เป็นแนวทางที่ดี เพื่อตรวจสอบว่าผลลัพธ์ของ cross-validation นั้นสมเหตุสมผล

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Linear Classifiers ใน Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • รัน GridSearchCV เพื่อค้นหาไฮเปอร์พารามิเตอร์ที่ดีที่สุดโดยใช้ชุดข้อมูลฝึก
  • พิมพ์ค่าที่ดีที่สุดของพารามิเตอร์แต่ละตัว
  • พิมพ์ค่าความแม่นยำบนชุดทดสอบ ซึ่งไม่ได้ถูกใช้ในขั้นตอน cross-validation

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Instantiate an RBF SVM
svm = SVC()

# Instantiate the GridSearchCV object and run the search
parameters = {'C':[0.1, 1, 10], 'gamma':[0.00001, 0.0001, 0.001, 0.01, 0.1]}
searcher = GridSearchCV(svm, ____)
____.fit(____)

# Report the best parameters and the corresponding score
print("Best CV params", searcher.best_params_)
print("Best CV accuracy", searcher.best_score_)

# Report the test accuracy using these best parameters
print("Test accuracy of best grid search hypers:", searcher.score(____))
แก้ไขและรันโค้ด