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

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 53 - 61)

Đị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 (adsbygoogle = window.adsbygoogle || []).push({});

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 (adsbygoogle = window.adsbygoogle || []).push({});

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.

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 53 - 61)