การเพิ่ม Special Tokens
ในขั้นตอนนี้ เราจะฝึกเพิ่ม token sos (ระบุจุดเริ่มต้น) และ eos (ระบุจุดสิ้นสุด) ลงในแต่ละประโยค ดังที่ได้กล่าวไปแล้ว ขั้นตอนนี้เป็นทางเลือกสำหรับโมเดลปัจจุบัน แต่จะเป็นสิ่งจำเป็นสำหรับโมเดลที่จะนำไปใช้ในบทถัดไป
ในการเพิ่ม special tokens เหล่านี้ จะใช้ฟังก์ชัน string.join() ของ Python ซึ่งทำหน้าที่รวมรายการสตริงหลายรายการให้เป็นสตริงเดียวโดยใช้ตัวคั่น (delimiter) ตัวอย่างเช่น หากต้องการแปลง ['datacamp', 'is', 'awesome'] ให้เป็น 'datacamp is awesome' สามารถใช้ " ".join(['datacamp', 'is', 'awesome']) โดยที่ " " (อักขระเว้นวรรค) คือตัวคั่น
สำหรับแบบฝึกหัดนี้ ได้นำเข้าตัวอย่างประโยคภาษาฝรั่งเศส 10 ประโยคไว้ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Machine Translation ด้วย Keras
คำแนะนำการฝึกหัด
- วนลูปผ่านรายการประโยคภาษาฝรั่งเศส (
fr_text) - เพิ่ม token
"sos"เพื่อระบุจุดเริ่มต้น และ token"eos"เพื่อระบุจุดสิ้นสุดของแต่ละประโยค โดยใช้ฟังก์ชันstring.join() - เพิ่มประโยคที่แก้ไขแล้วต่อท้าย
fr_text_new - แสดงผลประโยคที่แก้ไขแล้ว
sent_new
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
fr_text_new = []
# Loop through all sentences in fr_text
for sent in ____:
print("Before adding tokens: ", sent)
# Add sos and eos tokens using string.join
sent_new = " ".____([____, sent, ____])
# Append the modified sentence to fr_text_new
____.____(____)
# Print sentence after adding tokens
print("After adding tokens: ", ____, '\n')