Tổng hợp tiếng nói từ văn bản (Text-To-Speech) gồm 2 mức xử lý chính:
Phân tích văn bản (tổng hợp mức cao): quá trình xử lý, chuẩn hoá văn bản đầu vào thành một dạng chuẩn để có thể phát âm được.
Tổng hợp tiếng nói (tổng hợp mức thấp): tạo ra tiếng nói từ kết quả của phần phân tích văn bản.
10 trang |
Chia sẻ: vietpd | Lượt xem: 3880 | Lượt tải: 1
Bạn đang xem nội dung tài liệu Tổng quan về tổng hợp tiếng nói, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
7
CHƢƠNG 2. TỔNG QUAN VỀ TỔNG HỢP TIẾNG NÓI
2.1. Khái niệm
Tổng hợp tiếng nói từ văn bản (Text-To-Speech) gồm 2 mức xử lý chính:
Phân tích văn bản (tổng hợp mức cao): quá trình xử lý, chuẩn hoá văn bản
đầu vào thành một dạng chuẩn để có thể phát âm đƣợc.
Tổng hợp tiếng nói (tổng hợp mức thấp): tạo ra tiếng nói từ kết quả của
phần phân tích văn bản.
Một hệ thống tổng hợp tiếng nói từ văn bản đơn giản đƣợc minh họa nhƣ
sau:
Hình 2.1 Hệ thống tổng hợp tiếng nói từ văn bản
Văn bản đầu vào có thể thuộc các dạng nhƣ sau:
- Tập tin văn bản (.doc, .txt…)
- E-mail
- Tin nhắn điện thoại di động
- Báo điện tử
- ….
Chuỗi ký tự từ văn bản đầu vào đƣợc xử lý và phân tích thành các ngữ âm,
bao gồm chuỗi các âm vị và một số thông tin ngữ điệu, khoảng thời gian và
trọng âm.
Kết quả trên sẽ đƣợc xử lý ở bƣớc tổng hợp mức thấp để tạo ra âm thanh
cuối cùng.
Phân tích
văn bản
Tổng hợp
tiếng nói Âm thanh Văn bản thô
8
2.2. Phân tích văn bản tiếng Việt
Đây là công việc đầu tiên của bất kỳ một hệ thống tổng hợp tiếng nói, là
quá trình chuyển đổi văn bản đầu vào thành thể hiện đặc trƣng thuộc về ngôn
ngữ.
Công việc này gặp nhiều khó khăn do phụ thuộc rất nhiều vào ngôn ngữ,
cần một tập các quy tắc, ngoại lệ khác nhau để tạo ra ngữ điệu và cách phát
âm chính xác cho bộ tổng hợp tiếng nói.
Quá trình này bao gồm ba bƣớc chính:
- Chuẩn hóa văn bản: chuyển đổi các trƣờng hợp: số, từ viết tắt, ký tự
đặc biệt… thành dạng viết đầy đủ và chính xác.
- Phân tích cách phát âm: xác định cách phát âm chính xác cho từ.
- Ngôn điệu: xác định các yếu tố thuộc về ngôn điệu của tiếng nói nhƣ
ngữ điệu, trọng âm, khoảng thời gian giữa các từ (khoảng lặng).
2.2.1. Chuẩn hóa văn bản:
Quá trình chuẩn hóa văn bản thƣờng không đơn giản. Lý do là các văn
bản thƣờng chứa nhiều từ cùng chữ, số và viết tắt đòi hỏi phải diễn đạt lại
trong văn bản đầy đủ.
Trong một số ngôn ngữ, các từ có thể đƣợc phát âm khác nhau tùy theo
ngữ cảnh. Đa số hệ thống tổng hợp tiếng nói không tạo ra thể hiện văn phạm
cho văn bản, vì quá trình này hiện chƣa có công nghệ đáng tin cậy. Thay vào
đó, nhiều cách đƣợc dùng để phân biệt các cách phát âm, nhƣ tìm các từ kế
cận hay dùng thống kê về tần số xuất hiện.
Việc chọn cách phát âm chữ số cũng là một vấn đề. Lý do là cũng có
nhiều cách phát âm chữ số tùy theo văn cảnh. Nhƣ 1325 có thể đọc "một
nghìn ba trăm hai mƣơi lăm" nếu nó là một số tự nhiên, nhƣng cũng có thể là
"một ba hai năm" nếu nó là bốn số mật mã tài khoản. Thƣờng hệ thống tổng
9
hợp tiếng nói có thể đoán văn cảnh bằng việc quan sát các từ kế cận, các số
hay dấu câu bên cạnh, hoặc dùng trƣờng hợp mặc định khi không thể phân
định.
Tƣơng tự, các cách viết tắt cũng có thể mang nhiều nghĩa, tùy thuộc quy
ƣớc của ngƣời viết.
Các ký tự, ký hiệu „@‟, „$‟, ‟%‟, ‟&‟, ‟-‟, ‟+‟ … phải đƣợc chuyển thành
dạng viết đầy đủ tƣơng ứng và cũng có các trƣờng hợp đặc biệt cần xử lý.
2.2.2. Phân tích cách phát âm
Các hệ thống tổng hợp giọng nói dùng hai cách cơ bản để xác định cách
phát âm cho một từ, một quá trình còn đƣợc gọi là chuyển đổi văn bản-sang-
âm vị hay tự vị-sang-âm vị, vì âm vị là thuật ngữ dùng bởi các nhà ngôn ngữ
học để mô tả các âm khác nhau trong ngôn ngữ.
Cách thứ nhất, và đơn giản nhất, là dựa vào từ điển, sử dụng một từ điển
lớn chứa tất cả các từ của một ngôn ngữ và chứa cách phát âm đúng tƣơng
ứng cho từng từ, lƣu trong máy tính. Việc xác định cách phát âm đúng cho
một từ chỉ đơn giản là tra trong từ điển và thay đoạn văn bản bằng mã phát
âm đã ghi trong từ điển.
Cách thứ hai là dựa trên quy tắc, sử dụng các quy tắc phát âm để tìm ra
cách phát âm tƣơng ứng cho mỗi từ phù hợp với quy tắc.
Mỗi cách đều có ƣu điểm và nhƣợc điểm. cách dựa trên từ điển nhanh và
chính xác, nhƣng sẽ không hoạt động nếu từ cần phát âm không có trong từ
điển và lƣợng từ vựng cần lƣu là lớn. Cách dùng quy tắc hoạt động với mọi
văn bản (miễn là phù hợp với quy tắc) nhƣng độ phức tạp của các quy tắc có
thể tăng cao nếu ngôn ngữ có nhiều trƣờng hợp bất quy tắc trong phát âm.
Hầu hết các hệ thống tổng hợp tiếng nói đều dùng kết hợp cả hai cách.
10
Một số ngôn ngữ, nhƣ Việt hay tiếng Tây Ban Nha, có hệ thống viết dựa
trên cách phát âm một cách rất có quy tắc, và việc tiên đoán cách phát âm từ
cách viết thƣờng có tỷ lệ thành công cao. Các hệ thống tổng hợp giọng nói
cho các ngôn ngữ này thƣờng dùng chủ yếu cách dựa trên quy tắc, chỉ tra từ
điển một vài từ đặc biệt nhƣ tên vay mƣợn từ nƣớc ngoài.
Một số ngôn ngữ khác, nhƣ tiếng Anh, có hệ thống phát âm rất bất quy tắc,
thƣờng cần hệ thống tổng hợp tiếng nói dựa chủ yếu trên từ điển và dùng các
quy tắc cho những từ không có trong từ điển.
2.2.3. Ngôn điệu
Xác định đúng ngữ điệu, khoảng thời gian, trọng âm từ văn bản viết là một
công việc khó khăn và phức tạp. Những yếu tố này kết hợp với nhau gọi là
ngôn điệu và đƣợc xem là giai điệu, sự nhấn giọng của tiếng nói ở mức độ
cảm giác.
Ngữ điệu có nghĩa là cƣờng độ hay tần số cơ bản thay đổi nhƣ thế nào
trong lời nói. Ngôn điệu liên tục của lời nói phụ thuộc vào nhiều khía cạnh
khác nhau: ví dụ nhƣ nghĩa của câu, sự diễn cảm, đặc điểm của ngƣời nói.
Những đặc điểm ngôn điệu:
- Cƣờng độ
- Khoảng thời gian (giữa các tiếng)
- ộ nhấn mạnh
Khoảng thời gian hay những đặc điểm về thời gian có thể đƣợc xác định ở
một vài mức độ: khoảng thời gian từ âm vị tới câu, tốc độ nói, nhịp điệu của
lời nói. Khoảng thời gian của phân đoạn xác định bởi tập các luật để xác định
thời gian chính xác. Thông thƣờng khoảng thời gian của âm vị đƣợc chuyển
đổi bởi những quy tắc giữa khoảng thời gian cao nhất và thấp nhất. Ở mức độ
câu: tốc độ, nhịp điệu lời nói, vị trí ngừng chính xác tại biên của cụm từ là
11
quan trọng. Biên của cụm từ không xác định làm cho lời nói tăng lên đột
ngột.
Cƣờng độ đƣợc hiểu nhƣ độ lớn của lời nói trên khoảng thời gian
- Ở mức độ lời âm tiết, nguyên âm mạnh hơn phụ âm
- Cƣờng độ trong lời nói cao thì liên quan tới tần số
- Cƣờng độ của một tiếng nói lên cao tỷ lệ với tần số
Cảm nhận và cảm xúc của ngƣời nói tác động đến lời nói theo nhiều cách
và sự bổ sung đúng quy tắc những đặc điểm này trong tổng hợp tiếng nói sẽ
gia tăng đang kể chất lƣợng âm thanh. Với những hệ thống tổng hợp tiếng nói
từ văn bản, đây là điều khó khăn vì văn bản viết chứa rất ít thông tin về
những đặc điểm này. Tuy nhiên các thông tin này có thể đƣợc xác định bằng
một số ký tự, chuỗi ký tự.
Trong giới hạn của đề tài là đọc tin nhắn văn bản trên di động, các yếu tố
cảm xúc có thể không xét tới, chủ yếu chúng ta xét yếu tố khoảng thời gian
(khoảng lặng) giữa các từ.
2.3. Tổng hợp tiếng nói
Là phƣơng pháp tạo file âm thanh (hoặc xuất trực tiếp ra thiết bị phát) từ
một văn bản đã qua xử lý.
Hai tính chất quan trọng của chất lƣợng hệ thống tổng hợp giọng nói là
mức độ tự nhiên và mức độ dễ nghe. Mức độ tự nhiên của giọng nói tổng hợp
chỉ đến sự giống nhau giữa giọng tổng hợp và giọng nói tự nhiên của ngƣời
thật. Mức độ dễ nghe chỉ đến việc câu phát âm có thể hiểu đƣợc dễ dàng
không. Một máy tổng hợp giọng nói lý tƣởng cần vừa tự nhiên vừa dễ nghe,
và mục tiêu xây dựng máy tổng hợp tiếng nói là làm gia tăng đến mức tối đa
hai tính chất này.
12
Một số hệ thống thiên về mức độ dễ nghe hơn, hoặc mức độ tự nhiên hơn;
tùy thuộc vào mục đích và công nghệ đƣợc lựa chọn. Có hai công nghệ chính
đƣợc dùng là tổng hợp ghép nối và tổng hợp formant (cộng hƣởng tần số).
ngoài ra cũng có một số công nghệ khác.
2.3.1. Tổng hợp ghép nối (Concatenative)
Tổng hợp ghép nối dựa trên việc nối vào nhau các đoạn của một giọng nói
đã đƣợc ghi âm. Thông thƣờng, tổng hợp ghép nối tạo ra giọng nói tƣơng đối
tự nhiên.
Tuy nhiên, giọng nói tự nhiên đƣợc ghi âm có sự thay đổi từ lần phát âm
này sang lần phát âm khác, và công nghệ tự động hóa việc ghép nối các đoạn
của sóng âm thỉnh thoảng tạo ra những tiếng cọ xát không tự nhiên ở phần
ghép nối. Có ba kiểu tổng hợp ghép nối.
13
Tổng hợp chọn đơn vị (unit selection):
Tổng hợp chọn đơn vị dùng một cơ sở dữ liệu lớn các giọng nói ghi âm.
Trong lúc ghi âm, mỗi câu phát biểu đƣợc tách ra thành các đơn vị khác nhƣ:
các tiếng đơn lẻ (individual phones), âm tiết (syllables), hình vị (morphemes),
từ (words), nhóm từ (phrases), hoặc câu văn (sentences).
Thông thƣờng, việc tách ra nhƣ vậy cần một máy nhận dạng tiếng nói đƣợc
đặt ở chế độ so khớp với văn bản viết tƣơng ứng với đoạn ghi âm, và dùng
đến hiển thị sóng âm và phổ âm thanh.
Một bảng tra các đơn vị đƣợc lập ra dựa trên các phần đã tách và các thông
số âm học nhƣ tần số cơ bản, thời lƣợng, vị trí của âm tiết, và các tiếng gần
đó. Khi chạy, các câu phát biểu đƣợc tạo ra bằng cách xác định chuỗi đơn vị
phù hợp nhất từ cơ sở dữ liệu. Quá trình này đƣợc gọi là chọn đơn vị, và
thƣờng cần dùng đến cây quyết định để thực hiện.
Kỹ thuật chọn đơn vị tạo ra độ tự nhiên cao do không áp dụng các kỹ thuật
xử lý tín hiệu số lên các đoạn giọng nói đã ghi âm, tuy rằng một số hệ thống
có thể áp dụng xử lý tín hiệu tại các đoạn nối giữa các đơn vị để làm liền
mạch kết quả sau khi ghép nối.
Thực tế, các hệ thống chọn đơn vị có thể tạo ra giọng nói không thể phân
biệt đƣợc với ngƣời thật. Tuy nhiên, để đạt độ tự nhiên cao, thƣờng cần một
cơ sở dữ liệu lớn chứa các đơn vị để lựa chọn; có thể lên tới vài gigabyte,
tƣơng đƣơng với hàng chục giờ ghi âm.
Tổng hợp âm kép (diphone):
Tổng hợp âm kép dùng một cơ sở dữ liệu giọng nói nhỏ chứa tất cả các âm
kép (chuyển tiếp âm thanh) xuất hiện trong ngôn ngữ đang xét. Số lƣợng âm
kép phụ thuộc vào đặc tính ghép âm học của ngôn ngữ: tiếng Việt có 389 âm
kép [1], tiếng Tây Ban Nha có 800 âm kép. Trong tổng hợp âm kép, chỉ có
14
một mẫu của âm kép đƣợc chứa trong cơ sở dữ liệu. Khi chạy, lời văn đƣợc
chồng lên các đơn vị này bằng kỹ thuật xử lý tín hiệu số nhƣ mã tiên đoán
tuyến tính, PSOLA hay MBROLA.
Chất lƣợng của âm thanh tổng hợp theo cách này thƣờng không cao bằng
phƣơng pháp chọn đơn vị nhƣng tự nhiên hơn tổng hợp cộng hƣởng tần số.
Tổng hợp âm kép tạo ra các tiếng cọ xát ở phần ghép nối và đôi khi giọng nói
kiểu robot do các kỹ thuật xử lý tín hiệu số gây ra. Lợi thế của phƣơng pháp
này là kích thƣớc cơ sở dữ liệu nhỏ. Các ứng dụng thƣơng mại của phƣơng
pháp này đang ít dần, tuy nhiên cũng có nhiều hệ thống thuộc dạng này đƣợc
phân phát tự do, và phục vụ cho nghiên cứu.
Tổng hợp chuyên biệt (Domain-specific):
Tổng hợp chuyên biệt ghép nối các từ và đoạn văn đã đƣợc ghi âm để tạo
ra lời phát biểu. Nó đƣợc dùng trong các ứng dụng có các văn bản chuyên
biệt cho một chuyên ngành, sử dụng lƣợng từ vựng hạn chế, nhƣ các thông
báo chuyến bay hay dự báo thời tiết.
Công nghệ này rất đơn giản, và đã đƣợc thƣơng mại hóa từ lâu, đã đi vào
các đồ vật nhƣ đồng hồ biết nói hay máy tính bỏ túi biết nói. Mức độ tự nhiên
của các hệ thống này có thể rất cao vì số lƣợng các câu nói không nhiều và
khớp với lời văn và âm điệu của giọng nói ghi âm. Tuy nhiên các hệ thống
này bị hạn chế bởi cơ sở dữ liệu chuyên biệt, không phục vụ mọi mục đích
mà chỉ hoạt động với các câu nói mà chúng đã đƣợc lập trình sẵn.
2.3.2. Tổng hợp formant (cộng hƣởng tần số):
Tổng hợp fomant không sử dụng bất cứ mẫu giọng thật nào khi chạy. Thay
vào đó, tín hiệu âm thanh cho ra dựa trên một mô hình âm thanh. Các thông
số nhƣ tần số cơ bản, sự phát âm, và mức độ tiếng ồn đƣợc thay đổi theo thời
15
gian để tạo ra dạng sóng cho giọng nói nhân tạo. Phƣơng pháp này đôi khi
còn đƣợc gọi là tổng hợp dựa trên quy tắc (rules-based), dù nhiều hệ thống
ghép nối mẫu âm thanh thật cũng có dùng các thành phần dựa trên quy tắc.
Nhiều hệ thống dựa trên tổng hợp fomant tạo ra giọng nói nhân tạo, nhƣ
giọng robot, không tự nhiên, và phân biệt rõ ràng với giọng ngƣời thật. Tuy
nhiên độ tự nhiên cao không phải lúc nào cũng là mục đích của hệ thống và
hệ thống này cũng có các ƣu điểm riêng của nó.
Hệ thống này nói khá dễ nghe, ngay cả ở tốc độ cao, không có tiếng cọ xát
do ghép âm tạo ra. các hệ thống này hoạt động ở tốc độ cao, có thể hƣớng dẫn
ngƣời khiếm thị nhanh chóng dò dẫm trên máy tính, bằng cách đọc to những
gì hiện ra trên màn hình. Các hệ thống này cũng nhỏ gọn hơn các hệ thống
ghép nối âm, vì không phải chứa cơ sở dữ liệu mẫu âm thanh lớn. Nó có thể
dùng trong các hệ thống nhúng khi bộ nhớ và tốc độ xử lý có hạn. Hệ thống
này cũng có khả năng điều khiển mọi khía cạnh của tín hiệu âm thanh đi ra,
nó cho ra một dải rộng các lời văn và ngữ điệu, và không chỉ thể hiện đƣợc
câu nói thƣờng hay câu hỏi, mà cả các trạng thái tình cảm thông qua âm điệu
của giọng nói.
2.3.3. Tổng hợp mô phỏng phát âm (Articulatory):
Tổng hợp mô phỏng phát âm là các kỹ thuật tổng hợp giọng nói dựa trên
mô hình máy tính của cơ quan phát âm của ngƣời và quá trình phát âm xảy ra
tại đó. Hệ thống tổng hợp mô phỏng phát âm đầu tiên là ASY, thƣờng đƣợc
dùng cho các thí nghiệm trong nghiên cứu, đƣợc phát triển ở phòng thí
nghiệm Haskins vào giữa những năm 1970 bởi Philip Rubin, Tom Baer, và
Paul Mermelstein. ASY dựa trên mô hình cơ quan phát âm đã đƣợc tạo ra bởi
phòng thí nghiệm Bell vào những năm 1960 và 1970 bởi Paul Mermelstein,
Cecil Coker, và các đồng nghiệp khác. Tổng hợp mô phỏng phát âm đã từng
16
chỉ là hệ thống dành cho nghiên cứu khoa học cho mãi đến những năm gần
đây. Lý do là rất ít mô hình tạo ra âm thanh chất lƣợng đủ cao hoặc có thể
chạy hiệu quả trên các ứng dụng thƣơng mại.
2.3.4. Tổng hợp lai:
Các hệ thống tổng hợp lai kết hợp các yếu tố của tổng hợp formant với
tổng hợp ghép nối để giảm thiểu các tiếng cọ xát khi ghép nối các đoạn âm
thanh.
Một ví dụ là RecSimCat, phát triển bởi Shakti Singh Parmar có thể tạo ra
giọng dễ nghe và tự nhiên.
2.3.5. Tổng hợp dựa trên mô hình Markov ẩn:
Tổng hợp dựa trên mô hình Markov ẩn (Hidden Markov Model - HMM) là
một phƣơng pháp dựa vào mô hình Markov. Trong hệ thống này, phổ tần số
của giọng nói, tần số cơ bản, và thời lƣợng đều đƣợc mô phỏng cùng lúc bởi
mô hình Markov ẩn
Dạng sóng của giọng nói đƣợc tạo từ mô hình Markov ẩn dựa trên tiêu chí
khả thực cực đại.