การทำให้คอมพิวเตอร์พูดได้เป็นปัญหาคลาสิกมานานแล้วครับ 🙂 เพราะจริง ๆ แล้วคอมพิวเตอร์มันเปล่งเสียงตามหลักภาษาต่าง ๆ เองไม่ได้

จึงเป็นงานของนักวิทยาการคอมพิวเตอร์, วิศวกรคอมพิวเตอร์ และนักวิจัยในสาขาอักษรศาสตร์ที่จะต้องมาช่วยกันค้นคว้าวิธีการเพื่อที่จะทำให้เกิดขึ้นได้

ในขั้นแรกก็มีความคิดกันว่า ถ้าเราอัดเสียงเป็นประโยคเอาไว้ เพื่อใช้ในงานเฉพาะอย่างเช่นระบบ IVR ก็คงเพียงพอแล้ว แต่จริง ๆ แล้วมนุษย์เรามีความต้องการมากกว่านั้นครับ จริง ๆ แล้วถ้าทำได้ เราอยากให้คอมพิวเตอร์อ่านประโยคที่เราพิมพ์มากกว่า

ซึ่งก็อย่างที่เห็น ประโยคที่มนุษย์อย่างเราพิมพ์จะมีความหลากหลายมาก ๆ ตามแต่หน่วยเสียงของภาษานั้น ๆ ก็จึงมีการคิดกันว่า ถ้าเราอัดเสียงไว้เป็นพยางค์ แล้วเก็บไว้ในคอมพิวเตอร์ จากนั้นเมื่อมีการพิมพ์ประโยคต่าง ๆ ก็จะให้ซอฟต์แวร์ตรวจคำแต่ล่ะคำ แล้วแยกออกเป็นพยางค์ แล้วจึงสืบค้นเสียงที่บันทึกเอาไว้ให้เปล่งออกมา

แล้วทราบมั้ยครับ สำหรับภาษาไทย ถ้าเราต้องบันทึกทุกพยางค์ที่เป็นไปได้ในภาษาไทย เราจะได้กี่พยางค์???

ผมเองก็ไม่เคยนับ แต่เชื่อว่าน่าจะเป็นหมื่นพยางค์!!!

ซึ่งถ้าเป็นแบบนี้แล้ว การบันทึกเสียงเป็นพยางค์ที่เป็นไปได้ทั้งหมด ดูจะลำบากและสร้างต้นทุนในการทำงานไม่ใช่น้อย

จึงมีความคิดใหม่ว่า น่าจะแยกบันทึกเสียงให้เป็นหน่วย ๆ ดีกว่า โดยระดับของหน่วยก็อาจจะไม่ใช่ระดับพยางค์ แต่เป็นครึ่งพยางค์ หรือแยกเก็บในระดับของพยัญชนะ สระ วรรณยุกต์เลย

แต่ถึงแม้ว่าจะแยกบันทึกเสียงเป็นหน่วย ๆ ตามที่เรากำหนดแล้ว ปัญหาก็ไม่ใช่ว่าจะจบ เพราะเมื่อเอาหน่วยเสียงมาต่อกันแล้ว มันก็มีการสะดุดเวลาที่เปล่งเสียงออกมา ดังนั้นจึงต้องมีการคิดสมการทางคณิตศาสตร์เพื่อใช้ในการกรองคลื่นความถี่ของเสียง ให้ไหลลื่นทั้งพยางค์ และเวลาเปล่งเสียงออกมา ก็ไม่รู้สึกติดขัดอะไร

ซึ่งความรู้เกี่ยวกับ Text To Speech เป็นสิ่งที่น่าสนใจมากสำหรับนักพัฒนาซอฟต์แวร์อย่างพวกเรา ผมเองก็ติดตามเรื่องนี้มาตั้งแต่เมื่อ 10 กว่าปีก่อนแล้ว โดยรู้มาว่าในประเทศสหรัฐอเมริกา องค์กรที่ให้ความสนใจและทุ่มเทศึกษาอย่างต่อเนื่องกับเรื่อง Text To Speech มากที่สุดก็คือ AT&T Lab Inc. โดยผลิตภัณฑ์ของเขาที่เป็น Demo Version ก็คือ Natural Voice Text To Speech Engine ซึ่งเราสามารถเข้าไปทดลองได้ที่เว๊ปไซต์ของเขา

สำหรับประเทศไทยเอง ก็ไม่ได้นิ่งเฉยที่จะไม่ศึกษาเรื่อง Text To Speech เพราะองค์กรของรัฐอย่าง NECTEC ก็มีการจัดตั้งโครงการ “วาจา – ข้อความสู่เสียงพูด” เพื่อศึกษาและวิจัยการสังเคราะห์คำพูดภาษาไทยเช่นกัน

รวมถึงนักศึกษาของสถาบันการศึกษาทั้งของรัฐและของเอกชน ต่างก็ทำปริญญานิพนธ์หรือวิทยานิพนธ์เกี่ยวกับ Text To Speech อย่างกว้างขวาง โดยแบ่งการวิจัยออกไปคนล่ะทิศทาง เช่น บางรายก็เน้นการแบ่งย่อยหน่วยเสียงให้เล็กที่สุด เพื่อประหยัดที่จัดเก็บ, บางรายก็เน้นการนำพยางค์มาต่อกัน เพื่อให้เวลาเปล่งเสียงออกมาแล้วเนียนที่สุด, บางรายก็เน้นการเปล่งเสียงทั้งภาษาไทยและอังกฤษ หรือบางรายก็เน้นที่จะทำเป็นฮาร์ดแวร์เปล่งเสียง แทนที่จะทำให้อยู่ในรูปของซอฟต์แวร์ เป็นต้น

แย่หน่อยที่ผมไม่รู้อะไรเกี่ยวกับ Text To Speech ในทางสมการคณิตศาสตร์มากนัก เนื่องจากไม่ได้ศึกษาในระดับลึกมาโดยตรง พอดีตอนที่ผมทำปริญญานิพนธ์ ผมไปทำเรื่อง Speech Recognition แทน ซึ่งผมจะมาเล่าให้ฟังภายหลังครับว่า Speech Recognition คืออะไร?

Related Posts

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *