ขั้นตอนที่ 3: สร้าง Classifier
นี่คือขั้นตอนสุดท้ายในการพยากรณ์ sentiment เราได้สำรวจและเพิ่ม feature ที่เกี่ยวข้องกับ sentiment ลงในชุดข้อมูล และแปลงข้อมูลเป็นเวกเตอร์ตัวเลขเรียบร้อยแล้ว
คุณจะใช้ชุดข้อมูลที่สร้างขึ้นในขั้นตอนก่อนหน้า ซึ่งประกอบด้วย feature สำหรับความยาวของรีวิว และอีก 200 feature ที่สร้างด้วย Tfidf vectorizer
งานของคุณคือฝึก logistic regression เพื่อพยากรณ์ sentiment โดยข้อมูลถูกนำเข้าให้แล้วในชื่อ reviews_transformed ส่วน target มีชื่อว่า score และเป็นค่าแบบ binary: 1 เมื่อรีวิวเป็นเชิงบวก และ 0 ในกรณีอื่น
ฝึกโมเดล logistic regression แล้วประเมินประสิทธิภาพบนข้อมูลชุด test โมเดลทำงานได้ดีแค่ไหน?
แพ็กเกจที่จำเป็นทั้งหมดได้ถูก import ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Sentiment Analysis ด้วย Python
คำแนะนำการฝึกหัด
- แบ่งข้อมูลเป็นชุด train และ test โดยจัดสรร 20% ให้กับการทดสอบ และกำหนด random seed เป็น
456 - ฝึกโมเดล logistic regression
- พยากรณ์ class
- แสดง accuracy score และ confusion matrix บนชุดข้อมูล test
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Define X and y
y = reviews_transformed.score
X = reviews_transformed.drop('score', axis=1)
# Train/test split
X_train, X_test, y_train, y_test = ____(____, ____, ____=0.2, ____=456)
# Train a logistic regression
log_reg = ____.____(____, ____)
# Predict the labels
y_predicted = log_reg.____(____)
# Print accuracy score and confusion matrix on test set
print('Accuracy on the test set: ', ____(____, ____))
print(____(____, ____)/len(y_test))