30 KiB
รองรับหลายภาษา
สเก็ตโน้ตโดย Nitya Narasimhan คลิกที่ภาพเพื่อดูเวอร์ชันขนาดใหญ่
วิดีโอนี้ให้ภาพรวมเกี่ยวกับบริการเสียงของ Azure ครอบคลุมการแปลงเสียงเป็นข้อความและข้อความเป็นเสียงจากบทเรียนก่อนหน้า รวมถึงการแปลเสียง ซึ่งเป็นหัวข้อที่ครอบคลุมในบทเรียนนี้:
🎥 คลิกที่ภาพด้านบนเพื่อดูวิดีโอ
แบบทดสอบก่อนเรียน
บทนำ
ใน 3 บทเรียนที่ผ่านมา คุณได้เรียนรู้เกี่ยวกับการแปลงเสียงเป็นข้อความ การทำความเข้าใจภาษา และการแปลงข้อความเป็นเสียง ซึ่งทั้งหมดนี้ขับเคลื่อนด้วย AI อีกหนึ่งด้านของการสื่อสารมนุษย์ที่ AI สามารถช่วยได้คือการแปลภาษา - การแปลงจากภาษาหนึ่งไปยังอีกภาษาหนึ่ง เช่น จากภาษาอังกฤษเป็นภาษาฝรั่งเศส
ในบทเรียนนี้ คุณจะได้เรียนรู้เกี่ยวกับการใช้ AI เพื่อแปลข้อความ ทำให้ตัวจับเวลาที่ชาญฉลาดของคุณสามารถโต้ตอบกับผู้ใช้ในหลายภาษาได้
ในบทเรียนนี้เราจะครอบคลุม:
- แปลข้อความ
- บริการแปลภาษา
- สร้างทรัพยากรสำหรับการแปล
- รองรับหลายภาษาในแอปพลิเคชันด้วยการแปล
- แปลข้อความโดยใช้บริการ AI
🗑 นี่คือบทเรียนสุดท้ายในโครงการนี้ ดังนั้นหลังจากที่คุณทำบทเรียนนี้และงานที่มอบหมายเสร็จแล้ว อย่าลืมล้างบริการคลาวด์ของคุณ คุณจะต้องใช้บริการเหล่านี้เพื่อทำงานที่มอบหมายให้เสร็จ ดังนั้นอย่าลืมทำงานนั้นก่อน
ดูคำแนะนำ การล้างโครงการของคุณ หากจำเป็นสำหรับคำแนะนำเกี่ยวกับวิธีการทำสิ่งนี้
แปลข้อความ
การแปลข้อความเป็นปัญหาด้านวิทยาการคอมพิวเตอร์ที่มีการวิจัยมานานกว่า 70 ปี และเพิ่งจะใกล้เคียงกับการแก้ไขปัญหาได้อย่างสมบูรณ์แบบด้วยความก้าวหน้าของ AI และพลังการประมวลผลของคอมพิวเตอร์
💁 จุดเริ่มต้นสามารถย้อนกลับไปได้ไกลกว่านั้นอีก ถึง อัล-คินดี นักเข้ารหัสภาษาอาหรับในศตวรรษที่ 9 ที่พัฒนาเทคนิคสำหรับการแปลภาษา
การแปลด้วยเครื่อง
การแปลข้อความเริ่มต้นจากเทคโนโลยีที่เรียกว่า Machine Translation (MT) ซึ่งสามารถแปลระหว่างคู่ภาษาต่างๆ MT ทำงานโดยการแทนที่คำในภาษาหนึ่งด้วยอีกภาษา และเพิ่มเทคนิคเพื่อเลือกวิธีการแปลวลีหรือส่วนของประโยคที่เหมาะสมเมื่อการแปลคำต่อคำไม่สมเหตุสมผล
🎓 เมื่อโปรแกรมแปลรองรับการแปลระหว่างภาษาหนึ่งไปยังอีกภาษา สิ่งเหล่านี้เรียกว่า คู่ภาษา เครื่องมือที่แตกต่างกันรองรับคู่ภาษาที่แตกต่างกัน และอาจไม่สมบูรณ์ ตัวอย่างเช่น โปรแกรมแปลอาจรองรับภาษาอังกฤษเป็นภาษาสเปนเป็นคู่ภาษา และภาษาสเปนเป็นภาษาอิตาลีเป็นคู่ภาษา แต่ไม่รองรับภาษาอังกฤษเป็นภาษาอิตาลี
ตัวอย่างเช่น การแปล "Hello world" จากภาษาอังกฤษเป็นภาษาฝรั่งเศสสามารถทำได้ด้วยการแทนที่ - "Bonjour" สำหรับ "Hello" และ "le monde" สำหรับ "world" ซึ่งนำไปสู่การแปลที่ถูกต้องว่า "Bonjour le monde"
การแทนที่ไม่สามารถใช้ได้เมื่อภาษาต่างๆ ใช้วิธีการพูดที่แตกต่างกันเพื่อสื่อความหมายเดียวกัน ตัวอย่างเช่น ประโยคภาษาอังกฤษ "My name is Jim" แปลเป็นภาษาฝรั่งเศสว่า "Je m'appelle Jim" ซึ่งแปลตรงตัวว่า "ฉันเรียกตัวเองว่า Jim" "Je" คือ "ฉัน" ในภาษาฝรั่งเศส "moi" คือ "ฉัน" แต่จะรวมกับคำกริยาเมื่อเริ่มต้นด้วยสระ จึงกลายเป็น "m'" "appelle" คือ "เรียก" และ "Jim" ไม่ได้แปลเพราะเป็นชื่อ และไม่ใช่คำที่สามารถแปลได้ การเรียงลำดับคำก็เป็นปัญหาเช่นกัน - การแทนที่ง่ายๆ ของ "Je m'appelle Jim" กลายเป็น "I myself call Jim" ซึ่งมีการเรียงลำดับคำที่แตกต่างจากภาษาอังกฤษ
💁 บางคำไม่เคยถูกแปล - ชื่อของฉันคือ Jim ไม่ว่าจะใช้ภาษาใดในการแนะนำตัว เมื่อแปลเป็นภาษาที่ใช้ตัวอักษรต่างกัน หรือใช้ตัวอักษรต่างกันสำหรับเสียงต่างๆ คำสามารถ ถอดเสียง ได้ โดยเลือกตัวอักษรหรือสัญลักษณ์ที่ให้เสียงเหมาะสมเพื่อให้ฟังเหมือนคำที่กำหนด
สำนวนก็เป็นปัญหาสำหรับการแปลเช่นกัน สำนวนเหล่านี้คือวลีที่มีความหมายที่เข้าใจได้ซึ่งแตกต่างจากการตีความคำโดยตรง ตัวอย่างเช่น ในภาษาอังกฤษ สำนวน "I've got ants in my pants" ไม่ได้หมายถึงการมีมดในเสื้อผ้า แต่หมายถึงการกระสับกระส่าย หากคุณแปลสิ่งนี้เป็นภาษาเยอรมัน คุณจะทำให้ผู้ฟังสับสน เนื่องจากเวอร์ชันภาษาเยอรมันคือ "ฉันมีผึ้งในก้น"
💁 ภูมิภาคต่างๆ เพิ่มความซับซ้อนที่แตกต่างกันไป ด้วยสำนวน "ants in your pants" ในภาษาอังกฤษแบบอเมริกัน "pants" หมายถึงเสื้อผ้าชั้นนอก ในภาษาอังกฤษแบบอังกฤษ "pants" หมายถึงชุดชั้นใน
✅ หากคุณพูดได้หลายภาษา ลองคิดถึงวลีบางวลีที่ไม่สามารถแปลได้โดยตรง
ระบบการแปลด้วยเครื่องอาศัยฐานข้อมูลขนาดใหญ่ของกฎที่อธิบายวิธีการแปลวลีและสำนวนบางอย่าง พร้อมกับวิธีการทางสถิติเพื่อเลือกการแปลที่เหมาะสมที่สุดจากตัวเลือกที่เป็นไปได้ วิธีการทางสถิติเหล่านี้ใช้ฐานข้อมูลขนาดใหญ่ของงานที่มนุษย์แปลเป็นหลายภาษาเพื่อเลือกการแปลที่มีแนวโน้มมากที่สุด เทคนิคนี้เรียกว่า การแปลด้วยเครื่องทางสถิติ หลายระบบใช้การแสดงผลภาษาระหว่างกลาง ทำให้ภาษาหนึ่งสามารถแปลเป็นภาษาระหว่างกลาง แล้วจากภาษาระหว่างกลางไปยังอีกภาษา วิธีนี้การเพิ่มภาษาใหม่จะเกี่ยวข้องกับการแปลไปและกลับจากภาษาระหว่างกลาง ไม่ใช่ไปและกลับจากทุกภาษา
การแปลด้วยระบบประสาท
การแปลด้วยระบบประสาทเกี่ยวข้องกับการใช้พลังของ AI ในการแปล โดยปกติจะเป็นการแปลทั้งประโยคโดยใช้โมเดลเดียว โมเดลเหล่านี้ได้รับการฝึกฝนด้วยชุดข้อมูลขนาดใหญ่ที่มนุษย์แปล เช่น หน้าเว็บ หนังสือ และเอกสารขององค์การสหประชาชาติ
โมเดลการแปลด้วยระบบประสาทมักมีขนาดเล็กกว่าโมเดลการแปลด้วยเครื่อง เนื่องจากไม่จำเป็นต้องใช้ฐานข้อมูลขนาดใหญ่ของวลีและสำนวน บริการ AI สมัยใหม่ที่ให้การแปลมักผสมผสานเทคนิคหลายอย่าง รวมถึงการแปลด้วยเครื่องทางสถิติและการแปลด้วยระบบประสาท
ไม่มีการแปล 1:1 สำหรับคู่ภาษาใดๆ โมเดลการแปลที่แตกต่างกันจะให้ผลลัพธ์ที่แตกต่างกันเล็กน้อยขึ้นอยู่กับข้อมูลที่ใช้ในการฝึกโมเดล การแปลไม่จำเป็นต้องสมมาตรเสมอไป - หากคุณแปลประโยคจากภาษาหนึ่งไปยังอีกภาษา แล้วแปลกลับไปยังภาษาแรก คุณอาจเห็นประโยคที่แตกต่างกันเล็กน้อยเป็นผลลัพธ์
✅ ลองใช้โปรแกรมแปลออนไลน์ต่างๆ เช่น Bing Translate, Google Translate หรือแอปแปลของ Apple เปรียบเทียบเวอร์ชันที่แปลของประโยคสองสามประโยค ลองแปลในโปรแกรมหนึ่ง แล้วแปลกลับในอีกโปรแกรมหนึ่ง
บริการแปลภาษา
มีบริการ AI หลายตัวที่สามารถใช้จากแอปพลิเคชันของคุณเพื่อแปลเสียงและข้อความ
บริการเสียง Cognitive Services
บริการเสียงที่คุณใช้ในบทเรียนที่ผ่านมา มีความสามารถในการแปลสำหรับการรู้จำเสียง เมื่อคุณรู้จำเสียง คุณสามารถขอข้อความของเสียงในภาษาเดียวกัน รวมถึงในภาษาอื่นๆ ได้
💁 สิ่งนี้มีให้เฉพาะใน SDK ของเสียง API REST ไม่มีการแปลในตัว
บริการแปล Cognitive Services
บริการแปลเป็นบริการแปลเฉพาะที่สามารถแปลข้อความจากภาษาหนึ่งไปยังหนึ่งหรือหลายภาษาเป้าหมาย นอกจากการแปลแล้ว ยังรองรับฟีเจอร์เพิ่มเติมมากมาย เช่น การปิดบังคำหยาบคาย นอกจากนี้ยังช่วยให้คุณสามารถให้การแปลเฉพาะสำหรับคำหรือประโยคบางคำ เพื่อทำงานกับคำที่คุณไม่ต้องการแปล หรือมีการแปลที่เป็นที่รู้จักโดยเฉพาะ
ตัวอย่างเช่น เมื่อแปลประโยค "I have a Raspberry Pi" ซึ่งหมายถึงคอมพิวเตอร์บอร์ดเดี่ยว ไปยังภาษาอื่น เช่น ภาษาฝรั่งเศส คุณจะต้องการเก็บชื่อ "Raspberry Pi" ไว้เหมือนเดิม และไม่แปลมัน ให้เป็น "J’ai un Raspberry Pi" แทนที่จะเป็น "J’ai une pi aux framboises"
สร้างทรัพยากรสำหรับการแปล
สำหรับบทเรียนนี้ คุณจะต้องมีทรัพยากรสำหรับการแปล คุณจะใช้ API REST เพื่อแปลข้อความ
งาน - สร้างทรัพยากรสำหรับการแปล
-
จากเทอร์มินัลหรือพรอมต์คำสั่งของคุณ ให้รันคำสั่งต่อไปนี้เพื่อสร้างทรัพยากรสำหรับการแปลในกลุ่มทรัพยากร
smart-timer
ของคุณaz cognitiveservices account create --name smart-timer-translator \ --resource-group smart-timer \ --kind TextTranslation \ --sku F0 \ --yes \ --location <location>
แทนที่
<location>
ด้วยตำแหน่งที่คุณใช้เมื่อสร้างกลุ่มทรัพยากร -
รับคีย์สำหรับบริการแปล:
az cognitiveservices account keys list --name smart-timer-translator \ --resource-group smart-timer \ --output table
คัดลอกหนึ่งในคีย์
รองรับหลายภาษาในแอปพลิเคชันด้วยการแปล
ในโลกอุดมคติ แอปพลิเคชันทั้งหมดของคุณควรเข้าใจภาษาที่แตกต่างกันให้มากที่สุด ตั้งแต่การฟังเสียง การทำความเข้าใจภาษา ไปจนถึงการตอบกลับด้วยเสียง นี่เป็นงานที่มาก ดังนั้นบริการแปลสามารถช่วยเร่งเวลาในการส่งมอบแอปพลิเคชันของคุณได้
ลองนึกภาพว่าคุณกำลังสร้างตัวจับเวลาที่ชาญฉลาดที่ใช้ภาษาอังกฤษตั้งแต่ต้นจนจบ เข้าใจภาษาอังกฤษที่พูดและแปลงเป็นข้อความ ทำความเข้าใจภาษาในภาษาอังกฤษ สร้างการตอบกลับในภาษาอังกฤษ และตอบกลับด้วยเสียงภาษาอังกฤษ หากคุณต้องการเพิ่มการรองรับภาษาญี่ปุ่น คุณสามารถเริ่มต้นด้วยการแปลภาษาญี่ปุ่นที่พูดเป็นข้อความภาษาอังกฤษ จากนั้นเก็บแกนหลักของแอปพลิเคชันไว้เหมือนเดิม แล้วแปลข้อความตอบกลับเป็นภาษาญี่ปุ่นก่อนพูดตอบกลับ สิ่งนี้จะช่วยให้คุณเพิ่มการรองรับภาษาญี่ปุ่นได้อย่างรวดเร็ว และคุณสามารถขยายไปยังการรองรับภาษาญี่ปุ่นแบบครบวงจรในภายหลัง
💁 ข้อเสียของการพึ่งพาการแปลด้วยเครื่องคือภาษาต่างๆ และวัฒนธรรมต่างๆ มีวิธีการพูดที่แตกต่างกัน ดังนั้นการแปลอาจไม่ตรงกับการแสดงออกที่คุณคาดหวัง
การแปลด้วยเครื่องยังเปิดโอกาสสำหรับแอปและอุปกรณ์ที่สามารถแปลเนื้อหาที่ผู้ใช้สร้างขึ้นในขณะที่สร้างขึ้น นิยายวิทยาศาสตร์มักมี 'เครื่องแปลสากล' อุปกรณ์ที่สามารถแปลจากภาษาต่างดาวเป็น (โดยทั่วไป) ภาษาอังกฤษแบบอเมริกัน อุปกรณ์เหล่านี้ไม่ใช่นิยายวิทยาศาสตร์ แต่เป็นวิทยาศาสตร์จริง หากคุณไม่สนใจส่วนที่เกี่ยวกับต่างดาว มีแอปและอุปกรณ์ที่ให้การแปลแบบเรียลไทม์ของเสียงและข้อความที่เขียนอยู่แล้ว โดยใช้การผสมผสานระหว่างบริการเสียงและบริการแปล
ตัวอย่างหนึ่งคือแอปโทรศัพท์มือถือ Microsoft Translator ซึ่งแสดงในวิดีโอนี้:
🎥 คลิกที่ภาพด้านบนเพื่อดูวิดีโอ
ลองนึกภาพว่ามีอุปกรณ์ดังกล่าวอยู่กับคุณ โดยเฉพาะเมื่อเดินทางหรือโต้ตอบกับผู้ที่คุณไม่รู้ภาษาของพวกเขา การมีอุปกรณ์แปลอัตโนมัติในสนามบินหรือโรงพยาบาลจะช่วยปรับปรุงการเข้าถึงที่จำเป็นอย่างมาก
✅ ทำการวิจัย: มีอุปกรณ์ IoT สำหรับการแปลที่วางจำหน่ายในเชิงพาณิชย์หรือไม่? แล้วความสามารถในการแปลที่ฝังอยู่ในอุปกรณ์อัจฉริยะล่ะ?
👽 แม้ว่าจะไม่มีเครื่องแปลสากลที่แท้จริงที่ช่วยให้เราสามารถพูดคุยกับมนุษย์ต่างดาวได้ แต่ Microsoft Translator รองรับ Klingon Qapla’!
แปลข้อความโดยใช้บริการ AI
คุณสามารถใช้บริการ AI เพื่อเพิ่มความสามารถในการแปลนี้ให้กับตัวจับเวลาที่ชาญฉลาดของคุณ
งาน - แปลข้อความโดยใช้บริการ AI
ทำตามคำแนะนำที่เกี่ยวข้องเพื่อแปลงข้อความบนอุปกรณ์ IoT ของคุณ:
🚀 ความท้าทาย
การแปลด้วยเครื่องสามารถเป็นประโยชน์ต่อแอปพลิเคชัน IoT อื่นๆ นอกเหนือจากอุปกรณ์อัจฉริยะได้อย่างไร? ลองคิดถึงวิธีต่างๆ ที่การแปลสามารถช่วยได้ ไม่ใช่แค่คำพูด แต่รวมถึงข้อความด้วย
แบบทดสอบหลังเรียน
ทบทวนและศึกษาด้วยตนเอง
- อ่านเพิ่มเติมเกี่ยวกับการแปลด้วยเครื่องใน หน้าการแปลด้วยเครื่องบน Wikipedia
- อ่านเพิ่มเติมเกี่ยวกับการแปลด้วยระบบประสาทใน หน้าการแปลด้วยระบบประสาทบน Wikipedia
- ตรวจสอบรายการภาษาที่รองรับสำหรับบริการเสียงของ Microsoft ใน การรองรับภาษาและเสียงสำหรับเอกสารบริการเสียงบน Microsoft Docs
งานที่มอบหมาย
ข้อจำกัดความรับผิดชอบ:
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI Co-op Translator แม้ว่าเราจะพยายามให้การแปลมีความถูกต้อง แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ ขอแนะนำให้ใช้บริการแปลภาษามืออาชีพ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดจากการใช้การแปลนี้