การวิเคราะห์ความรู้สึก
ในวิดีโอก่อนหน้า คุณได้เห็นภาพรวมของการประยุกต์ใช้โมเดล sequence to sequence หลากหลายรูปแบบ ในแบบฝึกหัดนี้ จะได้เรียนรู้วิธีใช้โมเดลที่ผ่านการฝึกมาแล้ว (pre-trained model) สำหรับการวิเคราะห์ความรู้สึก (sentiment analysis)
โมเดลถูกโหลดไว้ในสภาพแวดล้อมแล้วที่ตัวแปร model นอกจากนี้ยังมีตัวแปรชุดทดสอบที่ผ่านการ tokenize แล้วอย่าง X_test และ y_test รวมถึงข้อมูลข้อความต้นฉบับที่ผ่านการประมวลผลแล้ว sentences จาก IMDb พร้อมใช้งาน คุณจะได้เรียนรู้วิธีประมวลผลข้อมูลข้อความและวิธีสร้างรวมถึงฝึกโมเดลด้วย Keras ในบทต่อๆ ไป
ในแบบฝึกหัดนี้ จะใช้ pre-trained model เพื่อทำนายความรู้สึก โมเดลจะคืนค่าตัวเลขระหว่างศูนย์ถึงหนึ่ง ซึ่งแทนความน่าจะเป็นที่ประโยคนั้นจะมีความรู้สึกเชิงบวก จากนั้นจะกำหนดกฎการตัดสินใจเพื่อจัดประเภทผลการทำนายเป็นเชิงบวกหรือเชิงลบ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Recurrent Neural Networks (RNNs) สำหรับ Language Modeling ด้วย Keras
คำแนะนำการฝึกหัด
- ใช้เมธอด
.predict()เพื่อทำนายผลบนข้อมูลทดสอบ - กำหนดให้ผลการทำนายเป็น
"positive"หากค่ามากกว่า0.5และเป็น"negative"ในกรณีอื่น แล้วเก็บผลลัพธ์ไว้ในตัวแปรpred_sentiment - สร้าง
pd.DataFrameที่ประกอบด้วยข้อความที่ผ่านการประมวลผลแล้ว ผลการทำนายที่ได้จากขั้นตอนก่อนหน้า และค่าจริงที่อยู่ในตัวแปรy_test - แสดงแถวแรกๆ โดยใช้เมธอด
.head()
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Inspect the first sentence on `X_test`
print(X_test[0])
# Get the predicion for all the sentences
pred = model.predict(____)
# Transform the predition into positive (> 0.5) or negative (<= 0.5)
pred_sentiment = ["positive" if x>____ else "negative" for x in pred]
# Create a data frame with sentences, predictions and true values
result = pd.DataFrame({'sentence': sentences, 'y_pred': ____, 'y_true': y_test})
# Print the first lines of the data frame
print(result.____)