ตัวอย่าง NMT
แบบฝึกหัดนี้ต่อยอดจากตัวอย่างเบื้องต้นของ NMT ที่เคยเห็นในช่วงต้นของคอร์ส โดยจะแปลประโยคสั้น ๆ ภาษาโปรตุเกสเป็นภาษาอังกฤษต่อไป
มีประโยคตัวอย่างให้ในตัวแปร sentences และแสดงผลไว้บน console แล้ว
นอกจากนี้ยังมีโมเดลที่ผ่านการฝึกมาแล้วในตัวแปร model พร้อมฟังก์ชันสำเร็จรูป 2 ตัวเพื่อช่วยให้ขั้นตอนต่าง ๆ ง่ายขึ้น:
encode_sequences(): แปลงข้อความเป็นลำดับของดัชนีตัวเลขและเติม paddingtranslate_many(): ใช้โมเดลที่ผ่านการฝึกมาแล้วแปลรายการประโยคจากภาษาโปรตุเกสเป็นภาษาอังกฤษ ซึ่งในภายหลังจะได้เขียนฟังก์ชันนี้เอง
หากต้องการรายละเอียดเพิ่มเติมเกี่ยวกับฟังก์ชัน ให้ใช้ help() โดย pandas โหลดไว้แล้วในชื่อ pd
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Recurrent Neural Networks (RNNs) สำหรับ Language Modeling ด้วย Keras
คำแนะนำการฝึกหัด
- ใช้ฟังก์ชัน
encode_sequences()เพื่อเตรียมข้อความ แล้วบันทึกผลลัพธ์ไว้ในตัวแปรX - แปลประโยคใน
sentencesด้วยฟังก์ชันtranslate_many()โดยส่งXเป็นพารามิเตอร์ - สร้าง
pd.DataFrame()โดยใช้รายการประโยคต้นฉบับและรายการที่แปลแล้วเป็นคอลัมน์ - แสดงผล data frame
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Transform text into sequence of indexes and pad
X = ____(sentences)
# Print the sequences of indexes
print(X)
# Translate the sentences
translated = translate_many(model, ____)
# Create pandas DataFrame with original and translated
df = pd.DataFrame({'Original': ____, 'Translated': ____})
# Print the DataFrame
print(____)