Khóa luận Thử nghiệm một phương pháp tổng hợp tiếng nói từ văn bản Tiếng Việt

Kể từ khi ra đời, máy tính đã là một công cụ giúp đỡ con người vô cùng hữu ích. Mục tiêu biến máy tính thành một con người làm việc không biết mệt mỏi đang được dần hoàn thiện. Một trọng những yêu cầu để thực hiện được mục tiêu đó là khả năng máy tính có thể đọc được các văn bản hay được gọi là tổng hợp tiếng nói. Trong những năm qua, đã có nhiều nghiên cứu xung quanh đề tài tổng hợp tiếng nói. Từ đây, một số hệ thống tổng hợp tiếng nói đã ra đời và đạt hiệu quả rất tốt. Tuy vậy, những hệ thống này chủ yếu phục vụ cho các ngôn ngữ thông dụng như tiếng Anh, tiếng Pháp, còn đối với tiếng Việt, các hệ thống tổng hợp tiếng nói chưa được phát triển nhiều.

pdf45 trang | Chia sẻ: lvbuiluyen | Lượt xem: 2188 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Khóa luận Thử nghiệm một phương pháp tổng hợp tiếng nói từ văn bản Tiếng Việt, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Lê Đôn Khuê THỬ NGHIỆM MỘT PHƯƠNG PHÁP TỔNG HỢP TIẾNG NÓI TỪ VĂN BẢN TIẾNG VIỆT KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI - 2009 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Lê Đôn Khuê THỬ NGHIỆM MỘT PHƯƠNG PHÁP TỔNG HỢP TIẾNG NÓI TIẾNG VIỆT TỪ VĂN BẢN KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Cán bộ hướng dẫn: TS. Bùi Thế Duy HÀ NỘI - 2009 - i - Lời cảm ơn Trước tiên, tôi muốn gửi lời cảm ơn sâu sắc nhất đến thầy giáo chủ nhiệm, TS. Bùi Thế Duy, người đã tận tình hướng dẫn em trong suốt quá trình nghiên cứu khóa luận tốt nghiệp cũng quá trình học tập tại Đại học Công nghệ. Tôi xin gửi lời cảm ơn sâu sắc đến tất những thầy cô giáo của trường đại học Công nghệ, những kiến thức và kinh nghiệm quý báu mà tôi nhận được từ thầy cô trong suốt bốn năm ngồi trên giảng đường sẽ là hành trang tốt nhất giúp tôi vững bước trong sự nghiệp của mình. Tôi cũng gửi lời cảm ơn đến tất cả các bạn bè, những người đã luôn đồng hành, động viên, giúp đỡ tôi trong suốt bốn năm đại học. Với các bạn K50CA, K50KHMT và các bạn trong phòng thí nghiệm tương tác người máy, những trao đổi, góp ý của các bạn về khóa luận này thực sự đã giúp tôi rất nhiều. Cuối cùng, xin gửi những lời tri ân đến gia đình, những người thân yêu nhất của tôi, luôn quan tâm, tạo điều kiện cho tôi. Sinh viên Lê Đôn Khuê - ii - Tóm tắt Kể từ khi ra đời, máy tính đã là một công cụ giúp đỡ con người vô cùng hữu ích. Mục tiêu biến máy tính thành một con người làm việc không biết mệt mỏi đang được dần hoàn thiện. Một trọng những yêu cầu để thực hiện được mục tiêu đó là khả năng máy tính có thể đọc được các văn bản hay được gọi là tổng hợp tiếng nói. Trong những năm qua, đã có nhiều nghiên cứu xung quanh đề tài tổng hợp tiếng nói. Từ đây, một số hệ thống tổng hợp tiếng nói đã ra đời và đạt hiệu quả rất tốt. Tuy vậy, những hệ thống này chủ yếu phục vụ cho các ngôn ngữ thông dụng như tiếng Anh, tiếng Pháp, … còn đối với tiếng Việt, các hệ thống tổng hợp tiếng nói chưa được phát triển nhiều. Trong khóa luận này, tôi muốn thử nghiệm một hệ thống tổng hợp tiếng nói dành cho tiếng Việt. - iii - Mục lục Lời cảm ơn ...........................................................................................................i Tóm tắt................................................................................................................ii Mục lục ............................................................................................................. iii Danh mục hình ảnh .............................................................................................v Danh mục bảng biểu...........................................................................................vi Chương 1 Tổng quan về hệ thống tổng hợp tiếng nói ..........................................1 1.1 Giới thiệu ...............................................................................................1 1.2 Ý nghĩa của TTS ....................................................................................1 1.3 Quá trình phát triển của TTS trên thế giới ..............................................2 1.4 TTS ở Việt Nam .....................................................................................2 1.5 Mục đích của khóa luận..........................................................................3 1.6 Cấu trúc của khóa luận ...........................................................................3 Chương 2 Các phương pháp tổng hợp tiếng nói ...................................................4 2.1 Mô hình chung của một hệ thống TTS....................................................4 2.1.1 Phân tích văn bản ............................................................................4 2.1.2 Phân tích cách đọc...........................................................................5 2.1.3 Tạo ra sóng âm thanh ......................................................................6 2.2 Phương pháp tổng hợp Formant .............................................................6 2.3 Các phương pháp tổng hợp bằng ghép nối ..............................................8 2.3.1 Phương pháp tổng hợp bằng ghép nối các tiếng...............................8 2.3.2 Phương pháp tổng hợp bằng ghép nối các phone .............................9 2.3.3 Phương pháp tổng hợp bằng ghép nối diphone ................................9 2.3.3.1 Điểm pitch...............................................................................10 2.3.3.2 Đồng bộ điểm pitch theo miền thời gian TD-PSOLA ..............11 2.4 Phương pháp mô phỏng phát âm ..........................................................12 - iv - 2.5 Đặc điểm của tiếng Việt .......................................................................13 2.6 Kết luận................................................................................................14 Chương 3 Xây dựng TTS tiếng Việt sử dụng phương pháp ghép nối diphone ...16 3.1 Các công cụ thực hiện ..........................................................................16 3.2 Cài đặt và tạo ra các file khuôn mẫu .....................................................17 3.3 Định nghĩa tập phone tiếng Việt ...........................................................17 3.4 Xây dựng tập các diphone: ...................................................................22 3.4.1 Diphone giữa âm câm và phụ âm: .................................................23 3.4.2 Diphone giữa âm câm và nguyên âm.............................................23 3.4.3 Diphone giữa phụ âm và âm câm ..................................................24 3.4.4 Diphone giữa nguyên âm và âm câm.............................................24 3.4.5 Diphone giữa phụ âm – nguyên âm ...............................................25 3.4.6 Diphone giữa nguyên âm – phụ âm ...............................................26 3.5 Carrier và ý nghĩa của nó......................................................................26 3.6 Ánh xạ các phone tiếng Việt sang tiếng Anh ........................................28 3.7 Thu âm.................................................................................................29 3.8 Đánh nhãn các diphone ........................................................................30 3.9 Tìm pitchmark......................................................................................30 3.9.1 Các bước để lấy pitchmark tốt .......................................................31 3.10 Kiểm thử...........................................................................................32 3.11 Thêm dấu cho tiếng Việt ...................................................................32 Chương 4 Tổng kết............................................................................................34 4.1 Kết quả thu được ..................................................................................34 4.2 Các khó khăn thách thức ......................................................................34 4.3 Các hướng nghiên cứu phát triển tiếp theo............................................35 Tài liệu tham khảo.............................................................................................36 - v - Danh mục hình ảnh Hình 1 Mô hình một hệ thống tổng hợp tiếng nói.........................................................4 Hình 2 Mô hình 3 formant nối tiếp...............................................................................7 Hình 3 Mô hình 5 formant của Klatt ............................................................................8 Hình 4 Điểm pitch trong phone ..................................................................................10 Hình 5 Ghép nối hai diphone .....................................................................................11 Hình 6 Thuật toán TD-PSOLA ..................................................................................12 Hình 7 Sự thay đổi giá trị F0 của các thanh................................................................14 Hình 8 Sự thay đổi giá trị F0 khi các thanh đi với chữ "chi".......................................14 Hình 9 Biểu diễn dạng sóng của một carrier và đánh nhãn diphone............................30 Hình 10 Pitchmark của sóng "taa taa taa"...................................................................32 - vi - Danh mục bảng biểu Bảng 1 Các nguyên âm đơn tiếng Việt và tính chất ....................................................18 Bảng 2 Các nguyên âm đôi của tiếng Việt và tính chất...............................................19 Bảng 3 Các phụ âm tiếng Việt và tính chất ................................................................21 Bảng 4 Một cách liệt kê các diphone..........................................................................22 Bảng 5 Phân loại các phone .......................................................................................22 Bảng 6 Diphone âm câm – phụ âm ............................................................................23 Bảng 7 Diphone âm câm – nguyên âm.......................................................................23 Bảng 8 Diphone phụ âm – âm câm ............................................................................24 Bảng 9 Diphone nguyên âm – âm câm.......................................................................24 Bảng 10 Diphone phụ âm – nguyên âm 1...................................................................25 Bảng 11 Diphone phụ âm – nguyên âm 2...................................................................25 Bảng 12 Diphone nguyên âm – phụ âm......................................................................26 Bảng 13 Khai báo các carrier .....................................................................................27 Bảng 14 Ví dụ ánh xạ phone tiếng Việt sang phone tiếng Anh ...................................28 - 1 - Chương 1 Tổng quan về hệ thống tổng hợp tiếng nói 1.1 Giới thiệu Tổng hợp tiếng nói là việc tạo ra tiếng nói của con người một cách nhân tạo. Một hệ thống máy tính thực hiện mục đích này được gọi là một hệ thống tổng hợp tiếng nói. Tổng hợp tiếng nói có thể được thực hiện bằng bằng phần mềm hay nhúng vào phần cứng của máy tính. Việc tổng hợp tiếng nói có thể được thực hiện bằng nhiều phương pháp. Phương pháp phổ biển nhất hiện nay là phương pháp tổng hợp bằng cách ghép nối các đoạn tiếng nói nhỏ hơn được lưu trữ trong cơ sở dữ liệu. Việc lưu trữ cơ sở dữ liệu nhiều hay ít làm ảnh hưởng rất lớn đến kết quả thu được tốt hay không. Đôi khi, vì mục đích cần phải giảm độ lớn của cơ sở dữ liệu, người ta chấp nhận làm giảm chất lượng của tiếng nói thu được trong một mức cho phép. Chất lượng của một hệ thống tổng hợp tiếng nói được đánh giá dựa trên độ “giống” đối với tiếng nói của người thật và khả năng để người nghe có thể hiểu được hết ý nghĩa của văn bản. Một hệ thống chuyển văn bản thành tiếng nói (tiếng Anh là Text To Speech, trong khóa luận này sẽ được viết tắt là TTS) là một hệ thống có đầu vào là một văn bản và đầu ra là một sóng âm thanh. 1.2 Ý nghĩa của TTS Bài toán này có rất nhiều ý nghĩa thực tiễn. Trên thế giới, TTS tiếng Anh có những ứng dụng hết sức thành công:  Giúp đỡ người tàn tật: Đây là ứng dụng có ý nghĩa lớn nhất của TTS. Trước đây, người ta đã từng có các loại băng ghi âm các cuốn truyện hay sách dành cho người tàn tật. Tuy nhiên số lượng những loại sách, truyện này không nhiều vì công việc được hiện một cách thủ công và tốn rất nhiều thời gian. Với sự giúp đỡ của các hệ thống TTS, công việc được làm tự động và cho hiệu quả rất cao.  Các thiết bị truyền thông đa phương tiện: Với sự phát triển và thành công vượt bậc của TTS cho tiếng Anh, các phần mềm để học tiếng Anh hay các từ điển điện tử cũng đã sử dụng các hệ thống TTS. Ngoài ra, các trò chơi - 2 - điện tử hiện này đã ứng dụng công nghệ này rất rộng rãi.  Trong truyền thông: Một trong những nguyên nhân gây ra nhiều tai nạn xe hơi là tài xế vừa lái xe vừa đọc tin nhắn. Sự với sự hỗ trợ của TTS, người lái xe hoàn toàn có thể tập trung vào việc lái xe mà vẫn nghe được tin nhắn mình nhận được. Ngoài ra, khi công nghệ GPRS chưa phát triển thì việc check email khi phải đi công tác tới một khu vực chưa phát triển gặp rất nhiều khó khắn. Khi đó người ta đã có những phần mềm sử dụng TTS để check email qua điện thoại di động.  Hiện nay, ở Việt Nam việc sử dụng các hệ thống TTS vẫn còn chưa nhiều. Chủ yếu là việc đọc các thông báo tại các nhà ga, sân bay hay tại cơ quan nhà nước có hệ thống xếp hàng. 1.3 Quá trình phát triển của TTS trên thế giới Tiếng nói nhân tạo đã được nghiên cứu trong một thời gian dài và có sự tham gia của nhiều nhà khoa học. Những người đầu tiên có ý tưởng về một chiếc máy có khả năng nói được là Gerbert of Aurillac, Albertus Magnus (1198 – 1280) và Roger Bacon (1214 – 1294). [18] Tuy vậy phải tới năm 1779, nhà khoa học người Đan Mạch Christian Kratzenstein mới xây dựng thành công mô hình cơ khí tổng hợp 5 âm /a/, /e/, /i/, /o/, /u/. Thiết bị này vẫn chưa tổng hợp được một câu nói hoàn chỉnh. Thiết bị đầu tiên được xem như một bộ tổng hợp tiếng nói là VODER (Voice Operating Demonstrator) được nhà khoa học người Mỹ Homer Dulley giới thiệu năm 1939 tại New York. Hệ thống này có thể tổng hợp các câu đơn giản những cần sự điều khiển hết sức phức tạp. [14] Trong mấy thập kỷ qua, các hệ thống TTS đã có những bước phát triển vượt bậc. Chất lượng của những hệ thống TTS được phát triển ngày càng cao và đã được ứng dụng với các mục đích thương mại. Đa số các hệ thống này dành cho tiếng Anh. Ngoài ra, cũng có một số các ngôn ngữ khác như tiếng Trung, tiếng Tây Ban Nha, … nhưng tiếng Anh vẫn được nghiên cứu nhiều nhất vì vậy tiếng Anh có hệ thống TTS chuẩn mực hơn cả. 1.4 TTS ở Việt Nam TTS ở Việt Nam cũng đã được nghiên cứu từ khá lâu. Hiện nay có 2 chương - 3 - trình thành công hơn cả là VnSpeech và VietSound. Phần mềm VnSpeech là hệ thống tổng hợp tiếng nói đầu tiên của Tiếng Việt, phần mềm này sử dụng phương pháp tổng hợp Formant. Hệ thống này có thể đọc được hầu hết các âm tiết tiếng Việt ở mức nghe rõ tuy vậy, mức độ tự nhiên không cao. Phần mềm VietSound là phần mềm được phát triển tại đại học Bách Khoa Thành phố Hồ Chí Minh. Phần mềm này sử dụng giải thuật TD-PSOLA dùng để tổng hợp các nguyên âm đơn và phương pháp tổng hợp FORMANT để tổng hợp các phụ âm, nguyên âm và âm vần đơn giản. Phần mềm này cũng chưa đạt đến mức độ tự nhiên gần giống với tiếng nói con người. [2] Cả hai phần mềm trên đều có nhược điểm là âm thanh thu được rời rạc, thiếu tự nhiên. 1.5 Mục đích của khóa luận Mục đích của khóa luận này là tìm hiểu và xây dựng hệ thống tổng hợp tiếng nói tiếng Việt dựa trên phương pháp ghép nối diphone. Hệ thống cần có khả năng tổng hợp một tiếng nói có độ liền mạch và có khả năng nghe hiểu được. 1.6 Cấu trúc của khóa luận Khóa luận này được trình bày thành 4 chương. Chương 2 sẽ nêu ra lý thuyết một hệ thống tổng hợp tiếng nói; các phương pháp tổng hợp tiếng nói thông dụng hiện nay. Dựa trên đặc điểm riêng của tiếng Việt, chúng ta có thể so sánh và có sự lựa chọn phương pháp tổng hợp tiếng nói cho tiếng Việt phù hợp nhất. Chương 3 sẽ là các bước cụ thể để có thể xây dựng được một hệ thống tổng hợp tiếng nói bằng phương pháp ghép nối diphone. Chương 4 sẽ là tổng kết cho toàn bộ quá trình thử nghiệm phương pháp này. - 4 - Chương 2 Các phương pháp tổng hợp tiếng nói 2.1 Mô hình chung của một hệ thống TTS Thông thường, hệ thống TTS bao gồm 3 bước:  Phân tích văn bản  Phân tích cách đọc  Tạo ra sóng âm thanh Hình 1 Mô hình một hệ thống tổng hợp tiếng nói 2.1.1 Phân tích văn bản Phân tích văn bản là việc chuyển các kí hiệu, các số, các chữ viết tắt ra thành các câu chữ đầy đủ. Ví dụ như câu “Phong trào sinh viên tình nguyện do TW Đoàn TNCS Hồ Chí Minh phát động đã được hưởng ứng của hơn 10000 sinh viên trên cả nước” cần phải được chuyển thành “Phong trào sinh viên tình nguyện do Trung Ương Đoàn Thanh niên Cộng sản Hồ Chí Minh phát động đã được hưởng ứng của hơn mười nghìn sinh viên trên cả nước”. Để thực hiện việc phân tích văn bản tốt, ta cần có:  Một module chuyển số thành dạng chữ viết.  Một cơ sở dữ liệu các chữ viết tắt thông dụng. Tiếng nói Văn bản Phân tích văn bản Chia các cụm từ Ngữ điệu Độ dài ngắn Tạo sóng âm Phân tích cách đọc - 5 -  Một cơ sở dữ liệu các khuôn dạng thông dụng như ngày tháng, giờ, … Tuy vậy, ta cũng sẽ gặp phải nhiều khó khăn do những tình huống nhập nhằng. Ví dụ như cụm “1/2” có thể được hiểu là “ngày mùng một tháng hai” hoặc “một phần hai”. Một ví dụ khác là khi ta gặp một dãy số “38533580”, ta cần phải xác định xem đây là số đếm (ba mươi tám triệu năm trăm ba mươi ba ngàn năm trăm tám mươi) hay đây là số điện thoại (ba tám năm ba ba năm tám không). Những trường hợp như thế này đỏi hỏi ta phải xác định được văn cảnh của văn bản đầu vào. 2.1.2 Phân tích cách đọc Việc phân tích cách đọc thực chất chính là quá trình tiền xử lý cho việc tổng hợp tiếng nói. Vì vậy, quá trình này còn phụ thuộc vào việc chúng ta sẽ sử dụng phương pháp nào để thực hiện việc tổng hợp tiếng nói. Cũng phải nói thêm rằng tiếng Việt có một thuận lợi rất lớn là mỗi cách viết chỉ có một cách đọc không như tiếng Anh một cách viết có thể có nhiều cách đọc phụ thuộc vào ngữ cảnh. Nếu việc tổng hợp tiếng nói được thực hiện bằng các phương pháp ghép nối, thì việc bắt buộc đối với chúng ta là phải phân chia câu cần tổng hợp thành các đơn vị đã có sẵn trong cơ sở dữ liệu của chúng ta. Hãy xét ví dụ ta cần tổng hợp câu “Xin chào” bằng phương pháp ghép nối diphone. Các diphone đã có trong cơ sở dữ liệu là “âm câm – x”, “x – i”, “i – n”, “n – âm câm”, “âm câm – ch”, “ch – à”, “à – o”. Khi đó ta cần tách đoạn text “Xin chào” thành “âm câm – x – i – n – âm câm – ch – à – o – âm câm”. Để tiếng nói tổng hợp được thu được chất lượng tốt thì phân tích ngôn điệu là vô cùng quan trọng. Ngôn điệu gồm: độ cao thấp, độ dài ngắn, cường độ. Độ cao thấp (pitch) hay tần số trên một câu phụ thuộc vào nhiều yếu tố trong đó có loại câu (câu kể, câu hỏi, câu cảm thán); người nói (giới tính, trạng thái cảm xúc). Ví dụ câu kể thường thấp giọng ở cuối câu còn câu hỏi lại cao giọng ở cuối câu. Người nói là nam thường nói với độ cao thấp hơn. Độ dài ngắn (duration) là đặc điểm về thời gian phát âm một từ hay một âm vị. Thông thường hai tiếng liên tiếp mà tạo thành từ khoảng nghỉ giữa hai tiếng sẽ ngắn hơn hai tiếng liên tiếp những không tạo thành một từ. Đôi khi, độ dài ngắn cũng được thể hiện khi người nói muốn nhấn mạnh một từ nào đó trong câu. [2] Cường độ thể hiện ở độ to nhỏ của tiếng nói. Ở mức âm tiết, các nguyên âm - 6 - thường có cường độ mạnh hơn phụ âm. Ở mức cụm, các âm tiết ở phần cuối của cách phát âm có thể có cường độ yếu hơn. Một hệ thống TTS cần phân tích được cách đọc ở mức càng gần với thực tế càng tốt. Đây là mục tiêu của mọi hệ thống TTS cho các ngôn ngữ khác nhau, tuy vậy chưa có một hệ thống nào có thể thực hiện hoàn hảo điều này. 2.1.3 Tạo ra sóng âm thanh Đây là quá trình trực tiếp tạo ra tín hiệu âm thanh. Chất lượng tiếng nói tổng hợp được phụ thuộc rất nhiều vào phần này. Trên thế giới đã có rất nhiều phương pháp được đưa ra để tổng hợp tiếng nói như phương pháp tổng hợp Formant, phương pháp ghép nối Diphone, … Các phương pháp có thể được chia làm 4 nhóm:  Phương pháp tổng hợp dựa trên hệ luật: phương pháp Formant  Phương pháp tổng hợp bằng ghép nối: o Phương pháp tổng hợp bằng ghép nối phones o Phương pháp tổng hợp bằng ghép nối nửa phone