รีวิวสินค้าด้วย regularization
ในแบบฝึกหัดนี้ จะได้ทำงานกับชุดข้อมูล reviews ซึ่งเป็นรีวิวสินค้าจาก Amazon อีกครั้ง เวกเตอร์ label y เก็บค่าความรู้สึก (sentiment) โดย 1 หมายถึงเชิงบวก และ 0 หมายถึงเชิงลบ ส่วนเมทริกซ์ X ประกอบด้วยฟีเจอร์ตัวเลขทั้งหมดที่สร้างขึ้นด้วยวิธี BOW
จะต้องฝึกโมเดล logistic regression สองโมเดลที่มีระดับ regularization ต่างกัน แล้วเปรียบเทียบประสิทธิภาพบนชุดข้อมูลทดสอบ ขอให้นึกถึงว่า regularization คือวิธีควบคุมความซับซ้อนของโมเดล โมเดลที่มี regularization สูงจะยืดหยุ่นน้อยกว่า แต่สามารถ generalize ได้ดีกว่า อย่างไรก็ตาม โมเดลที่มี regularization สูงมักมีค่าความแม่นยำต่ำกว่าโมเดลที่ไม่มี regularization
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Sentiment Analysis ด้วย Python
คำแนะนำการฝึกหัด
- แบ่งข้อมูลออกเป็นชุดฝึก (train) และชุดทดสอบ (test)
- ฝึก logistic regression โดยกำหนด regularization parameter เป็น
1000และฝึกอีกโมเดลหนึ่งโดยกำหนด regularization parameter เป็น0.001 - แสดงค่าความแม่นยำของทั้งสองโมเดลบนชุดข้อมูลทดสอบ
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Split data into training and testing
____, ____, ____, ____ = train_test_split(____, ____, test_size=0.2, random_state=123)
# Train a logistic regression with regularization of 1000
log_reg1 = ____(____=1000).fit(X_train, y_train)
# Train a logistic regression with regularization of 0.001
log_reg2 = ____(____=0.001).fit(X_train, y_train)
# Print the accuracies
print('Accuracy of model 1: ', log_reg1.____(____, ____))
print('Accuracy of model 2: ', log_reg2.____(____, ____))