แปลงข้อความใหม่
ในแบบฝึกหัดนี้ คุณจะแปลงข้อความใหม่ให้เป็นลำดับของดัชนีตัวเลขโดยใช้ dictionary ที่สร้างไว้ก่อนหน้า
กระบวนการนี้มีประโยชน์เมื่อมีโมเดลที่เทรนแล้วและต้องการนำไปใช้กับชุดข้อมูลใหม่ ขั้นตอนการเตรียมข้อมูลที่ทำกับข้อมูล training ควรนำมาใช้กับข้อความใหม่ด้วย เพื่อให้โมเดลสามารถทำนาย/จำแนกประเภทได้อย่างถูกต้อง
ที่นี่ จะใช้ token พิเศษ '<UKN/>' เพื่อแทนคำที่ไม่มีอยู่ใน vocabulary โดยทั่วไป token พิเศษเหล่านี้จะอยู่ที่ดัชนีแรกของ dictionary ซึ่งก็คือตำแหน่ง 0
ตัวแปร word_to_index, index_to_word และ vocabulary ถูกโหลดไว้ในสภาพแวดล้อมแล้ว รวมถึงตัวแปรที่เก็บข้อความใหม่ก็ถูกโหลดไว้ในชื่อ new_text และได้แสดงข้อความดังกล่าวให้ดูแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Recurrent Neural Networks (RNNs) สำหรับ Language Modeling ด้วย Keras
คำแนะนำการฝึกหัด
- วนลูปผ่านลิสต์
new_textที่เก็บประโยคต่าง ๆ - กำหนดให้ดัชนีเป็น
0เมื่อไม่พบคำนั้นใน dictionary - เพิ่มประโยคที่เป็นดัชนีเข้าไปในตัวแปร
new_text_split - แปลงดัชนีกลับเป็นข้อความโดยใช้ dictionary
index_to_word
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Loop through the sentences and get indexes
new_text_split = []
for sentence in ____:
sent_split = []
for wd in sentence.split(' '):
index = word_to_index.get(wd, ____)
sent_split.append(index)
new_text_split.append(____)
# Print the first sentence's indexes
print(new_text_split[0])
# Print the sentence converted using the dictionary
print(' '.join([index_to_word[____] for index in new_text_split[0]]))