สร้างและประเมินโมเดล: รีวิวภาพยนตร์
ในแบบฝึกหัดนี้ จะได้สร้างโมเดล logistic regression โดยใช้ชุดข้อมูล movies คะแนนถูกเก็บไว้ในคอลัมน์ label ซึ่งมีค่าเป็น 1 เมื่อรีวิวเป็นเชิงบวก และ 0 เมื่อเป็นเชิงลบ ข้อความรีวิวได้ถูกแปลงเป็นคอลัมน์ตัวเลขแล้วโดยใช้ BOW
ก่อนหน้านี้ได้สร้าง classifier ไปแล้ว แต่ประเมินผลโดยใช้ข้อมูลชุดเดียวกับที่ใช้ในขั้นตอน training ครั้งนี้ให้ประเมินโมเดลด้วยชุดข้อมูล test ที่โมเดลไม่เคยเห็นมาก่อน แล้วสังเกตว่าประสิทธิภาพของโมเดลเปลี่ยนแปลงไปอย่างไรเมื่อประเมินบนชุดข้อมูล test
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Sentiment Analysis ด้วย Python
คำแนะนำการฝึกหัด
- import ฟังก์ชันที่ใช้สำหรับแบ่งข้อมูล train/test
- แบ่งข้อมูล train/test โดยกำหนดให้ใช้ข้อมูล 20% เป็นชุด test
- เทรนโมเดล logistic regression
- แสดงค่าความแม่นยำของโมเดลบนข้อมูล training และข้อมูล testing
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Import the required packages
from sklearn.linear_model import LogisticRegression
____
# Define the vector of labels and matrix of features
y = movies.label
X = movies.drop('label', axis=1)
# Perform the train-test split
X_train, X_test, y_train, y_test = ____(X, y, ____=0.2, random_state=42)
# Build a logistic regression model and print out the accuracy
log_reg = ____.____
print('Accuracy on train set: ', log_reg.____(____, ____))
print('Accuracy on test set: ', log_reg.____(____, ____))