Tổng hợp bằng phương pháp ghép nối

Một phần của tài liệu nghiên cứu và xây dựng hệ thống voice server ứng dụng cho các dịch vụ cung cấp thông tin qua mạng điện thoại (Trang 50 - 78)

Tổng hợp âm thanh bằng phương pháp ghép nối-lựa chọn đơn vị (Unit Selection): là phương pháp tổng hợp âm thanh bằng cách ghép nối các đơn vị âm thanh nhỏ đã được thu âm trước. Văn bản đầu vào sau khi được chuẩn hóa cần phải được tách ra thành các cụm từ, rồi tiến hành chọn các

Chương 3. Cơ sở lý thuyết

cụm từ đó trong các tập tin âm thanh để ghép lại với nhau.

Các đơn vị âm thanh có thể là một câu, một cụm từ, một từ. Phương pháp này cho ra âm thanh có chất lượng tương đối tốt nhưng đòi hỏi không gian lưu trữ phải lớn để chứa được các phân đọan âm thanh.

Quy trình tổng hợp ghép nối lựa chọn đơn vị gồm 2 bước chính và được mô tả chi tiết như hình minh hoạ bên dưới:

• Xây dựng cơ sở dữ liệu âm thanh.

• Tìm kiếm đơn vị âm thanh phù hợp nhất dựa trên việc tính toán chi phí.

Chương 3. Cơ sở lý thuyết

Hình 3.14 Quy trình tổng hợp bằng phương pháp ghép nối-lựa chọn đơn vị

1.10.3.2 Xây dựng kho dữ liệu

Kho dữ liệu mà nhóm sử dụng được kế thừa từ kho dữ liệu của nhóm nghiên cứu “tiếng nói phương Nam”. Kho dữ liệu hiện nay đã phủ gần hết bộ từ vựng tiếng Việt. Kết quả thu được là khoảng 60 giờ tiếng nói.

Một câu sau khi thu âm sẽ là một dãy âm thanh liên tục. Vấn đề đặt ra là làm sao để lấy ra đúng vị trí một cụm từ bên trong đó. Để giải quyết điều này chúng ta cần phải phân đoạn nó thành những khoảng tương ứng với mỗi từ bên trong.

Chương 3. Cơ sở lý thuyết

1.10.3.3 Chọn lựa cụm từ thích hợp nhất

Định nghĩa một Unit: Thông thường một Unit được định nghĩa là một phone hay một diphone, nhưng với phương pháp phân đoạn âm thanh cải tiến thì một Unit là một cụm từ. Cụm từ này sẽ có ngữ điệu theo từng ngữ cảnh riêng biệt và làm giảm các mối nối ghép khi thực hiện nối ghép các Unit.

Mô hình Unit Selection: Mô hình Unit Selection có một cơ sở dữ liệu lưu trữ các unit được tổ chức tốt. Cơ sở dữ liệu này chứa các đơn vị âm thanh được rút trích từ một tập corpus lớn, được thiết kế cẩn thận để có thể phủ hết tất cả các biến thể ngữ âm và ngữ điệu của mỗi đơn vị. Tập dữ liệu âm thanh lớn được phân tích offline và tất cả các đặc trưng đã được tính toán và được lưu trữ trong một cơ sở dữ liệu unit.

Trong cơ sở dữ liệu, mỗi thể hiện của một unit được mô tả bởi một vector đặc trưng. Các đặc trưng mô tả bản chất của unit và ngữ cảnh của unit đó.

Tổng hợp nối ghép dựa trên tập dữ liệu là một quá trình đối sánh mẫu. Trong quá trình tổng hợp, công việc cần làm là lựa chọn những unit tốt nhất về mặt ngữ âm và ngữ điệu với các unit đích. Để thỏa mãn yêu cầu này, hai chi phí đã được định nghĩa trong quá trình tổng hợp là Unit Cost và Connection Cost. Unit Cost mô tả unit được lựa chọn gần khớp với unit mong muốn như thế nào. Connection Cost mô tả mức độ liên tục giữa các unit được lựa chọn. Chi phí tổng cộng là tổng các trọng của hai loại chi phí này.

Chương 3. Cơ sở lý thuyết

Qui trình Unit Selection: Quá trình chọn lựa unit là để tìm ra một con đường tốt nhất trong nhiều con đường kết nối giữa các unit. Quá trình tìm kiếm được tính toán bởi một hàm tính chi phí, mô tả mức độ thích hợp của một unit và mức độ trơn giữa hai unit.

Quá trình lựa chọn unit có thể được minh họa trong hình bên dưới. Trong hình, câu mong đợi là “ Dịch vụ cung cấp thông tin tỷ giá cổ phiếu ” được phân tách thành các cụm từ như sau :

o Dịch vụ

o cung cấp

o thông tin o tỷ giá o cổ phiếu

Hình 3.15 Minh họa quá trình chọn cụm từ thích hợp

Định nghĩa hàm tính chi phí: Hàm tính chi phí mô tả mức độ mà các đơn vị được chọn lệch so với các đơn vị mong muốn. Hàm tính chi phí bao gồm unit cost và connection cost: unit cost chủ yếu đề

Chương 3. Cơ sở lý thuyết

cập đến chất lượng của unit, trong khi connection cost lại đề cập đến hiệu quả nối kết khớp giữa hai unit được chọn.

+ Unit cost mô tả khoảng cách giữa unit được chọn với unit mà chúng ta mong đợi. Trong việc chọn lựa các unit, đầu tiên chúng ta lựa chọn các unit khớp từng từ một với các unit mong đợi. Trong trường hợp lý tưởng, chúng ta tìm thấy các cụm từ có cùng ngữ cảnh để nối lại với nhau. Unit cost được tính toán bằng cách so sánh các đặc trưng tương ứng của một hoặc một dãy các unit, được minh hoạ ở hình 3.10. Trong hình Ti là unit mục tiêu, Vi là unit được lựa chọn.

Chi phí con của unit có hai loại: chi phí ngữ âm và chi phí ngữ điệu

o Chi phí ngữ âm: CtoneContext - định nghĩa chi phí dựa vào sự không khớp về dấu giữa từ phía trước và phía sau từ đang xét so với từ phía trước và phía sau từ được chọn trong tập dữ liệu để so sánh. Trong tiếng Việt có 6 dấu (sắc, huyền, hỏi, ngã, nặng, thanh ngang)

Ví dụ: Xét từ “thị”:

“thị trường” là cụm từ mà chúng ta mong đợi “thị yếu” là cụm từ có được trong kho dữ liệu

“ trường” mang dấu huyền, trong khi chữ “yếu” mang dấu sắc. Nên xem là chúng không khớp về dấu.

Quy định:

Không cùng dấu : 1 Cùng dấu : 0

Chương 3. Cơ sở lý thuyết

dấu âm giữa từ phía trước và từ phía sau của từ đang xét so với từ phía trước và phía sau của từ được chọn trong tập dữ liệu để so sánh. Đó là chi phí để biến đổi một từ ban đầu về từ mà chúng ta mong đợi.

Quá trình biến đổi này bao gồm 3 loại biến đổi chính:

• Thêm (ins)

• Thay thế (rep)

• Xoá (del)

o Chi phí ngữ điệu :

CBeak: định nghĩa chi phí dựa vào sự không khớp về khoảng ngắt trước và sau Unit.

CProsodyParam: định nghĩa chi phí dựa vào sự không khớp

về các tham số ngữ điệu.

Hình 3.16 Tính chi phí Unit

+ Connection cost: Khi nối ghép, các unit được chọn từ tập các unit ứng viên nên có khả năng giữa hai unit kế tiếp sẽ không khớp với nhau tạo âm thanh không liên tục. Hai unit kế tiếp nhau có unit cost không tối ưu thì vẫn tốt hơn so với hai unit không có unit cost tối ưu.

Connection cost được xây dựng để đánh giá mức độ liên tục giữa hai unit được nối với nhau.

Chương 3. Cơ sở lý thuyết

Connection Cost có thể được tính theo hai cách:

o Tính trực tiếp:

Hình 3.17 Tính trực tiếp Connection Cost

Tính toán sự liên tục của dãy âm thanh hoặc sự liên tục của ngữ âm giữa hai unit được kết nối (như trong hình, Unit Ti và Vj

được kết nối với nhau). Điều này thường liên quan đến việc tính độ không khớp về âm thanh và các tham số ngữ điệu.

o Tính gián tiếp:

Hình 3.18 Tính gián tiếp Connection Cost

So sánh unit được kết nối với các unit lân cận (như trong hình trên, unit Ti và Vj được kết nối với nhau). Điều này được thực hiện bằng cách dựa vào thông tin ngữ âm. Ở đây, chúng ta sử dụng cách này để tính chi phí kết nối.

Các chi phí con mà chúng ta định nghĩa như sau:

CSucc: định nghĩa chi phí dựa vào các unit được nối kết không liên tục trong cùng một dãy âm thanh.

Chương 3. Cơ sở lý thuyết

Ví dụ: Xét unit “doanh nghiệp” nối kết với unit “hàng đầu”. Unit “doanh nghiệp” xuất hiện trong nhiều ngữ cảnh khác nhau như “doanh nghiệp nhà nước”, “doanh nghiệp hàng Việt Nam chất lượng cao”, “doanh nghiệp hàng đầu”. Tiến hành so sánh unit “hàng đầu” với cụm từ phía sau từ “doanh nghiệp” trong từng ngữ cảnh khác nhau. Trong ngữ cảnh (1) chi phí là hai do cả hai từ đều không khớp. Trong ngữ cảnh (2) chi phí là 1 do có một từ hàng được so khớp. Trong ngữ cảnh (3) chi phí là 0 do cả cụm từ “ hàng đầu” đều được so khớp

CToneConn: định nghĩa chi phí dựa vào sự không khớp về

dấu giữa từ phía trước và phía sau từ đang xét so với từ phía trước và phía sau từ được chọn trong tập dữ liệu để so sánh. Trong tiếng Việt có 6 dấu (sắc, huyền, hỏi, ngã, nặng và thanh ngang)

CEdgeConn: định nghĩa chi phí dựa vào sự không khớp về

cách phát âm giữa từ phía trước và từ phía sau từ đang xét so với từ phía trước và phía sau của từ được chọn trong tập dữ liệu để so sánh. Đó là chi phí để biến đổi một từ ban đầu về từ mà chúng ta mong đợi. Quá trình biến đổi này gồm 3 loại biến đổi chính:

o Thêm (ins)

o Thay thế (rep)

o Xoá (del)

Bởi vì có nhiều sự kết nối quan trọng hơn những cái khác (do sự kết nối chặt chẽ hay tính mạch lạc về ngữ điệu), không thỏa mãn sự kết nối liên tục

Chương 3. Cơ sở lý thuyết

rõ ràng dẫn đến việc giảm chất lượng âm thanh. Như vậy, chúng ta định nghĩa một nhân tố quan trọng cho sự kết nối.

Thuật toán tìm kiếm trong Unit Selection: Trong quá trình chọn lựa unit, đối với mỗi đơn vị âm thanh mà chúng ta muốn đạt tới có nhiều đơn vị âm thanh ứng cử, các unit ứng cử của tất cả các unit cần đạt tới tạo ra một lưới. Để tìm ra con đường có chi phí thấp nhất, trong phạm vi báo cáo này sử dụng thuật toán Viterbi :

Nội dung thuật toán:

1. Khởi tạo C(0,1) = 0 2. For i = 1 to NSegUnit do

i. For j = 1 to NCand do Tính chi phí đơn vị Cunit(j)

ii. Sắp xếp các Unit theo thứ tự tăng dần của Cunit(j) và giữ lại M Unit tốt nhất

iii. For j = 1 to NPath d For k = 1 to M do

C(i, jM + k) = C(i-1,j) + WUnitCUnit(Vk) + WConnCConn(Ui-1,j,Vk)

Sắp xếp các con đường tăng dần theo thứ tự C(i, jM + k) giữ lại N con đường tốt nhất

Lần theo vết tìm ra con đường có chi phí thấp nhất Xuất ra dãy unit

Trong đó :

+ NsegUnit: số unit trong dãy

+ NCand: số Unit ứng cử ở bước hiện tại + NPath: số con đường ở bước trước

Chương 3. Cơ sở lý thuyết

+ M: số đơn vị ứng cử cho công việc tính toán tương lai ở bước hiện tại

+ N: Số con đường giữ lại ở bước hiện tại

+ C(i, j): chi phí tích lũy cho con đường j ở bước i + Vk: Unit ứng cử thứ k ở bước hiện tại

+ Uj,i: Unit được chọn thứ j ở bước i + CUnit(V): Unit Cost của Unit V

+ CConn(V): Connection Cost của Unit V + WUnit: trọng của Unit Cost

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Chương 3. PHÂN TÍCH THIẾT KẾ VÀ TRIỂN KHAI HỆ THỐNG QUA ỨNG DỤNG MINH HỌA

Ngày nay, điện thoại được sử dụng phổ biến khắp mọi nơi. Nó trở thành phương tiện liên lạc không thể thiếu đối với bất kỳ cá nhân hay tổ chức nào. Chúng ta muốn biết những thông tin mới nhất về thị trường cổ phiếu và tỷ giá cổ phiếu nhưng chúng ta không thể lên trực tiếp sàn giao dịch, hoặc truy cập internet được. Khi đó chỉ cần gọi điện đến hệ thống là chúng ta đã có ngay những thông tin cần thiết. Xuất phát từ nhu cầu thực tế trên, nhóm đã nghiên cứu và xây dựng hệ thống trả lời tự động. Hệ thống này sẽ cung cấp những thông tin cần thiết như tỷ giá cổ phiếu , thông tin thị trường chứng khoán tại bất cứ đâu có điện thoại (cả cố định và di động) một cách chính xác và nhanh chóng.

1.11 Sơ đồ và nguyên lý hoạt động

Hình 4.19 Sơ đồ hệ thống ứng dụng

1.11.1 Các thành phần của hệ thống

Hệ thống bao gồm Mô đun IVR, Mô đun TTS, một cơ sở dữ liệu, một Modem quay số có hổ trợ âm thanh, một đường dây điện thoại gắn vào Modem và một điện thoại có yêu cầu tra cứu thông tin chứng khoán.

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Mô đun IVR: Là chương trình ứng dụng chạy trên máy tính có sử dụng thư viện TAPI để thao tác và truyền thông với thiết bị khác. Cơ sở hoạt động của thành phần này là nhận biết, cấu hình, thao tác với Modem bằng các lệnh mà được hệ điều hành và Modem hỗ trợ.

Khi đã có các dòng lệnh, TSP được cài đặt trong máy sẽ thông dịch các lệnh này sang các lệnh cơ sở của Modem để thao tác và điều khiển Modem. Mỗi Modem hỗ trợ một tập lệnh khác nhau, do đó cần có sự tương thích giữa Modem và TSP/TAPI của hệ điều hành.

Mô đun TTS: Có nhiệm vụ chuyển đổi văn bản thành giọng nói. Thành phần ứng dụng IVR sau khi truy vấn CSDL kết quả trả về là dạng văn bản. Mô đun này có nhiệm vụ chuyển kết quả ở dạng văn bản đó sang dạng âm thanh, sau đó Mô đun IVR sẽ phát âm thanh này lên đường dây điện thoại.

Cơ Sở Dữ Liệu: CSDL chứa thông tin về tỷ giá và thông tin thị trường chứng khoán. Nó được cập nhật tự động và theo định kỳ trong khoảng thời gian giao dịch thực tế. Việc cập nhật tự động này sẽ được một Mô đun thực hiện. Mô đun này sẽ tự động lấy thông tin từ trang web chứng khoán của ngân hàn Sài Gòn Thương Tín, rồi cập nhật xuống CSDL.

Modem: Để hệ thống có thể hoạt động được thì nhất thiết loại Modem sử dụng phải hổ trợ âm thanh. Bởi vì loại Modem này có các lệnh cơ sở giúp ta có thể thao tác, xử lý, truyền dẫn được âm thanh.

Modem trong hệ thống dùng để chuyển đổi tín hiệu tương tự sang tín hiệu số để máy tính có thể hiểu được. Modem trong hệ thống sẽ nhận tín hiệu yêu cầu từ đường truyền của người dùng, thu nhận dữ liệu gửi tới và gửi kết quả trả lời bằng âm thanh cho người sử dụng sau khi xử lý xong.

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

Đường dây điện thoại: Đường dây điện thoại cố định gắn trực tiếp vào Modem, nó có một số điện thoại để người sử dụng gọi vào hệ thống bằng số điện thoại này.

Điện thoại: Là thiết bị của người sử dụng dùng để thao tác với hệ thống. Điện thoại có thể là di động hay cố định. Người sử dụng sẽ bấm phím số tương ứng với các chức năng của hệ thống.

1.11.2 Nguyên lý hoạt động

Khi người sử dụng thực hiện cuộc gọi tới hệ thống, modem sẽ phát hiện, thông qua TSP làm phát sinh sự kiện OnOffering. Sau đó IVR sẽ đưa ra hướng dẫn.

Mỗi khi người sử dụng bấm 1 phím, trên đường truyền sẽ xuất hiện 1 tín hiệu. Modem sẽ bắt tín hiệu này và đưa cho TSP làm việc. TSP sẽ thông dịch và chuyển cho ứng dụng dữ liệu mà nó thu đươc.

Ứng dụng sẽ lấy mã ASCII mà modem thu được, rồi chuyển thành dạng số tương ứng với phím nhấn trên điện thoại, thu nhập chúng lại cho tới khi nào đạt yêu cầu. Sau đó truy cập cơ sở dữ liệu, lấy dữ liệu, xử lý rồi đưa ra phản hồi. Thông qua TSP, phản hồi này được dịch thành mã mà modem có thể hiểu được, modem sẽ phát tín hiệu trả lời này tới người sử dụng dưới dạng tiếng nói.

Chương 4. Phân tích thiết kế và triển khai hệ thống qua ứng dụng minh họa

1.12 Thiết kế và xây dựng chương trình1.12.1 Xây dựng Mô đun IVR 1.12.1 Xây dựng Mô đun IVR

1.12.1.1 Các yêu cầu chức năng và phi chức năng

Các yêu cầu chức năng: Trả lời thông tin tỷ giá và thị trường của chứng khoán mà người sử dùng nhập từ điện thoại.

Các yêu cầu phi chức năng:

Một phần của tài liệu nghiên cứu và xây dựng hệ thống voice server ứng dụng cho các dịch vụ cung cấp thông tin qua mạng điện thoại (Trang 50 - 78)

Tải bản đầy đủ (DOC)

(78 trang)
w