การปรับค่าสัมประสิทธิ์ของโมเดล
เมื่อเรียกใช้ fit ใน scikit-learn ค่าสัมประสิทธิ์ของ logistic regression จะถูกเรียนรู้จากชุดข้อมูลโดยอัตโนมัติ ในแบบฝึกหัดนี้ เราจะมาสำรวจว่าเส้นแบ่งการตัดสินใจ (decision boundary) ถูกแทนด้วยค่าสัมประสิทธิ์อย่างไร โดยจะปรับค่าสัมประสิทธิ์เองด้วยตนเอง (แทนที่จะใช้ fit) แล้วสังเกตผลลัพธ์ของตัวจำแนกที่ได้
ชุดข้อมูล 2 มิติถูกโหลดไว้ในสภาพแวดล้อมแล้วในชื่อ X และ y พร้อมกับออบเจกต์ตัวจำแนกเชิงเส้นชื่อ model
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Linear Classifiers ใน Python
คำแนะนำการฝึกหัด
- ลองกำหนดค่าสัมประสิทธิ์ทั้งสองและค่า intercept เป็นค่าต่าง ๆ แล้วสังเกตเส้นแบ่งการตัดสินใจที่เกิดขึ้น
- พยายามทำความเข้าใจว่าค่าสัมประสิทธิ์ส่งผลต่อเส้นแบ่งการตัดสินใจอย่างไร
- กำหนดค่าสัมประสิทธิ์และ intercept ให้โมเดลไม่เกิดข้อผิดพลาดใด ๆ บนข้อมูล training ที่กำหนดให้
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Set the coefficients
model.coef_ = np.array([[0,1]])
model.intercept_ = np.array([0])
# Plot the data and decision boundary
plot_classifier(X,y,model)
# Print the number of errors
num_err = np.sum(y != model.predict(X))
print("Number of errors:", num_err)