ĐẠI HỌC ĐÀ NẴNG
TRƢỜNG ĐẠI HỌC BÁCH KHOA
----- -----
LÊ TÙNG DƢƠNG
XÂY DỰNG NỀN TẢNG
THU THẬP VÀ XỬ LÝ DỮ LIỆU TIẾNG NÓI
LUẬN VĂN THẠC SĨ KỸ THUẬT
Đà Nẵng – Năm 2020
ĐẠI HỌC ĐÀ NẴNG
TRƢỜNG ĐẠI HỌC BÁCH KHOA
----- -----
LÊ TÙNG DƢƠNG
XÂY DỰNG NỀN TẢNG
THU THẬP VÀ XỬ LÝ DỮ LIỆU TIẾNG NĨI
Chun ngành: KHOA HỌC MÁY TÍNH
Mã số: 8480101
LUẬN VĂN THẠC SĨ KỸ THUẬT
Ngƣời hƣớng dẫn khoa học: TS. NINH KHÁNH DUY
Đà Nẵng – Năm 2020
i
LỜI CAM ĐOAN
Tác giả xin cam đoan đây là công trình nghiên cứu của bản thân tác giả. Các kết
quả nghiên cứu và các kết luận trong luận văn này là trung thực, không sao chép từ bất
kỳ một nguồn nào và dưới bất kỳ hình thức nào. Việc tham khảo các nguồn tài liệu đã
được thực hiện trích dẫn và ghi nguồn tài liệu tham khảo đúng quy định.
Tác giả luận văn
Lê Tùng Dƣơng
ii
LỜI CẢM ƠN
Sau thời gian học tập và rèn luyện, bằng sự biết ơn và kính trọng, tơi xin gửi lời
cảm ơn chân thành đến Ban Giám hiệu, các phòng, khoa thuộc Trường đại học Đà
nẵng và các Phó Giáo sư, Tiến sĩ đã nhiệt tình hướng dẫn, giảng dạy và tạo mọi điều
kiện thuận lợi giúp đỡ tôi trong suốt q trình học tập, nghiên cứu và hồn thiện đề tài
nghiên cứu khoa học này.
Đặc biệt, tôi xin bày tỏ lòng biết ơn sâu sắc tới TS Ninh Khánh Duy, người
Thầy trực tiếp và cũng là người đã luôn tận tình hướng dẫn, chỉ bảo, giúp đỡ và động
viên tơi trong suốt q trình nghiên cứu và hồn thành đề tài nghiên cứu này.
Xin chân thành cảm ơn gia đình, bạn bè cùng đồng nghiệp đã ln khích lệ và
giúp đỡ tơi trong q trình học tập và nghiên cứu khoa học.
Tác giả luận văn
Lê Tùng Dƣơng
iii
TÓM TẮT LUẬN VĂN
XÂY DỰNG NỀN TẢNG THU THẬP VÀ XỬ LÝ DỮ LIỆU TIẾNG NÓI
Lê Tùng Dƣơng, học viên cao học khóa 33, chun ngành Khoa học máy tính.
Mã số: 8480101. Khóa: 33. Trường Đại học Bách khoa – ĐHĐN.
Tóm tắt – Ở Việt Nam việc xử lý tiếng Việt đã có nhiều cơng trình nghiên cứu và thử nghiệm,
tuy nhiên, các kết quả vẫn cịn hạn chế. Ngồi ra, đất nước Việt Nam có nhiều vùng miền, dân tộc với
giọng nói và âm điệu khác nhau, dẫn đến sự bất tiện khi giao tiếp bằng tiếng Việt giữa các vùng miền
và dân tộc với nhau.
Mục tiêu của luận văn này là nhằm xây dựng kho dữ liệu lớn phục vụ cho các nghiên cứu về
xử lý tiếng nói tiếng Việt - một hệ thống theo mơ hình client/server. Trong đó, phía client là app trên
điện thoại di động thơng minh cho phép thu thập dữ liệu tiếng nói và thông tin người cung cấp dữ liệu
đơn giản và thuận tiện. Phía server là hệ thống lưu trữ tập trung, cho phép lưu trữ và quản lý số lượng
lớn mẫu ghi âm tiếng nói và một số cơng cụ thuật tốn cho phép hỗ trợ xử lý tiếng nói.
Luận văn nghiên cứu những ý tưởng cơ bản và các phương pháp được sử dụng trong mơ hình
thu thập, lưu trữ và quản lý dữ liệu tiếng nói lớn, từ đó xây dựng một hệ thống phần mềm có khả năng
thu thập dữ liệu tiếng nói phân tán, xử lý sơ bộ mẫu và lưu trữ dữ liệu sẵn sàng phục vụ xử lý tiếng nói
theo phương pháp dữ liệu lớn.
Nội dung thực hiện tập trung vào nghiên cứu, cài đặt và đánh giá hiệu quả thuật tốn tính tỉ lệ
tín hiệu trên nhiễu (SNR) của tín hiệu tiếng nói trên miền thời gian dùng để gán nhãn các tín hiệu
tiếng nói thu thập được; đồng thời xây dựng hệ thống phần mềm nhằm thu thập CSDL tiếng nói phục
vụ cho các nghiên cứu về xử lý tiếng nói.
Kết quả của nghiên cứu này là một cơ sở dữ liệu tiếng nói lớn đã được gán nhãn với độ chính
xác cao sẵn sàng phục vụ các hệ thống xử lý tiếng nói của người Việt trong tương lai.
Từ khóa – Xử lý dữ liệu tiếng nói, Tiếng Việt, Dữ liệu lớn, Thuật tốn tính tỉ lệ tín hiệu trên
nhiễu, Thuật toán VUS, Thuật toán WADA.
iv
BUILDING THE COLLECTING AND PROCESSING
VOICE DATA SYSTEM
Le Tung Duong, Master student of course 33, majoring in Computer Science.
Code: 8480101. Course: 33. Da Nang university of Technology – Da Nang university.
Abstract - In Vietnam, there are many researches in Vietnamese voice data processing,
however, the results are still limited. In addition, Vietnam has many regions and ethnic groups with
different voices and tones, leading to the inconvenience of communicating in Vietnamese between
regions and ethnic groups.
The objective of this thesis is building a big data set serving for Vietnamese voice processing - a
system based on the client/server model in which the client is a mobile application allowing to collect
voice data and user information simply and conveniently. The server is a centralized storage system,
which allows to store, manage a large amount of voice recording samples and some algorithmic tools
for voice processing.
The reseach shows basic ideas and methods used in collecting, storing and managing voice big
data, then building a software system capable of collecting distributed voice data, preliminarily
processing voice samples and storing the data based on big data methods, ready for other voice
processing reseaches.
The main content is focused on researching, installing and evaluating the effectiveness of the
signal-to-noise (SNR) algorithms in the time domain for labeling the collected voice data; and building
a software system to collect the voice data used for voice processing researches.
The result of this research is a voice big data with high precision, and already labeled that will
be available for Vietnamese voice processing systems in the future.
Key words - Voice data processing, Vietnamese voice, Big data, Signal-to-noise ratio
calculation algorithm, VUS algorithm (Voiced/Unvoiced/Silence), WADA algorithm (Waveform
Amplitude Distribution Analysis).
v
MỤC LỤC
LỜI CAM ĐOAN...................................................................................................... i
LỜI CẢM ƠN........................................................................................................... ii
MỤC LỤC................................................................................................................. v
DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT........................................... vii
DANH MỤC HÌNH VẼ......................................................................................... viii
DANH MỤC BẢNG BIỂU...................................................................................... ix
MỞ ĐẦU.................................................................................................................. 1
CHƢƠNG 1. TỔNG QUAN VỀ XỬ LÝ TIẾNG NÓI........................................ 5
1.1. Xử lý tiếng nói và các ứng dụng..................................................................... 5
1.1.1. Ứng dụng tổng hợp tiếng nói................................................................... 5
1.1.2. Ứng dụng nhận dạng tiếng nói................................................................. 6
1.2. Khái niệm về tín hiệu tiếng nói....................................................................... 7
1.2.1. Biểu diễn trên miền thời gian................................................................... 8
1.2.2. Biển diễn trên miền tần số....................................................................... 9
1.3. Các đặc tính cơ bản của tín hiệu tiếng nói.................................................... 10
1.3.1. Âm sắc................................................................................................... 10
1.3.2. Cường độ............................................................................................... 11
1.3.3. Trường độ.............................................................................................. 12
1.3.4. Âm hữu thanh........................................................................................ 13
1.3.5. Âm vô thanh.......................................................................................... 13
1.4. Xử lý ngắn hạn (short-time processing)....................................................... 13
1.5. Tỉ lệ tín hiệu trên nhiễu của tín hiệu tiếng nói (SNR)................................... 16
1.5.1. SNR là gì?............................................................................................. 16
1.5.2. Các lý do cần tính tốn SNR của tín hiệu âm thanh...............................16
1.5.3. Các thuật tốn tính SNR........................................................................ 17
1.6. Tổng kết chương........................................................................................... 17
CHƢƠNG 2. CÁC THUẬT TỐN TÍNH TỈ LỆ TÍN HIỆU TRÊN TẠP ÂM
CỦA TÍN HIỆU TIẾNG NĨI................................................................................... 19
2.1. Mở đầu......................................................................................................... 19
2.2. Thuật tốn VUS (Voiced/Unvoiced/Silence)................................................ 19
vi
2.3. Thuật toán WADA(Waveform Amplitude Distribution Analysis).................21
2.4. Kết quả so sánh giữa 2 thuật toán................................................................. 22
2.4.1. Cài đặt dữ liệu đầu vào.......................................................................... 22
2.4.2 Kết quả so sánh....................................................................................... 22
CHƢƠNG 3. TRIỂN KHAI HỆ THỐNG VÀ KẾT QUẢ THỰC NGHIỆM. .23
3.1. Mở đầu......................................................................................................... 23
3.2. Phát biểu bài toán......................................................................................... 23
3.3. Lựa chọn thuật toán...................................................................................... 23
3.4. Thiết kế hệ thống.......................................................................................... 24
3.4.1. Các cam kết ràng buộc.............................................................................. 24
3.4.2. Đối tượng hướng đến................................................................................. 24
3.4.3. Tác nhân................................................................................................ 25
3.4.4. Ca sử dụng và biểu đồ sequence............................................................ 26
3.4.5. Thiết kế cơ sở dữ liệu............................................................................ 28
3.4.6. Thiết kế server....................................................................................... 29
3.4.7. Sơ đồ phân rã chức năng....................................................................... 31
3.4.8. Sơ đồ luồng dữ liệu............................................................................... 32
3.5. Công nghệ sử dụng....................................................................................... 34
3.5.1. Công nghệ chính phía server................................................................. 34
3.5.2. Cơng nghệ và chức năng của client....................................................... 34
3.5.3 Thiết kế giao diện................................................................................... 41
3.6. Kết quả thực nghiệm.................................................................................... 43
3.6.1. Xây dựng dữ liệu văn bản và thu thập................................................... 43
3.6.2 Dữ liệu số lượng tổng quát..................................................................... 44
3.6.3. Dữ liệu theo vùng miền......................................................................... 44
3.6.4 Dữ liệu một ví dụ thực tế........................................................................ 45
3.8. Đánh giá ưu nhược điểm của hệ thống......................................................... 45
3.9. Tổng kết chương........................................................................................... 46
KẾT LUẬN............................................................................................................ 47
TÀI LIỆU THAM KHẢO
PHỤ LỤC
DA
Từ viết tắt
SNR
Tên
Sig
SS
Spe
IDFT
Inv
DFT
Dis
VUS
Voi
STE
Sho
ZCR
Zer
LF
WADA
Wa
An
DFD
Da
API
Ap
CSDL
PHP
Hy
AI
Art
REST
RE
HTTP
Hy
URL
Un
SOAP
Sim
WSDL
We
CRUD
Cre
DI
Dep
IoC
Inv
viii
DANH MỤC BẢNG
Bảng 2.1. Bảng so sánh kết quả từ hai thuật tốn WADA-SNR và VUS-SNR...............22
Bảng 3.1. Bảng giới tính....................................................................................................................... 24
Bảng 3.2. Bảng các nhóm tuổi............................................................................................................ 25
Bảng 3.3. Bảng các vùng miền........................................................................................................... 25
Bảng 3.4. Các đường dẫn có trong server...................................................................................... 30
Bảng 3.5. Bảng dữ liệu kết quả thu thập tổng quát..................................................................... 44
Bảng 3.6. Bảng dữ liệu kết quả thu thập theo vùng miền........................................................ 44
Bảng 3.7. Bảng dữ liệu ví dụ thực tế................................................................................................ 45
ix
DANH MỤC HÌNH
Hình 1.1. Hệ thống TTS tổng qt...................................................................................................... 5
Hình 1.2. Liệt kê các kiểu hệ thống nhận dạng tiếng nói............................................................ 6
Hình 1.3. Dạng sóng theo thời gian..................................................................................................... 8
Hình 1.4. Tín hiệu của cùng một âm do một người nói thu ở hai thời điểm khác nhau . 9
Hình 1.5. Phổ hai chiều......................................................................................................................... 10
Hình 1.6. Phổ ba chiều........................................................................................................................... 10
Hình 1.7. Âm sắc của một người nữ khi phát nguyên âm /a/................................................. 11
Hình 1.8. Âm sắc của một người nam khi phát nguyên âm /a/.............................................. 11
Hình 1.9. Đồ thị biểu diễn sóng tín hiệu của ngun âm /a/ của một người nói.............11
Hình 1.10. Đồ thị biểu diễn sóng tín hiệu của phụ âm /h/ của một người nói..................12
Hình 1.11. Ngun âm /a/ được thu ở hai thời điểm khác nhau của cùng một người nói
12
Hình 1.12. Âm /a/ của một người nữ............................................................................................... 13
Hình 1.13. Âm /a/ của một người nam............................................................................................ 13
Hình 1.14. Chia tín hiệu thành các khung cửa sổ........................................................................ 14
Hình 2.1. Quy trình tính SNR của thuật tốn VUS-SNR......................................................... 20
Hình 3.1. Quy trình hoạt động ghi âm............................................................................................. 25
Hình 3.2. Sơ đồ ca sử dụng theo chức năng.................................................................................. 26
Hình 3.3. Biểu đồ sequence chức năng ghi âm............................................................................ 26
Hình 3.4. Biểu đồ sequence chức năng đánh giá......................................................................... 27
Hình 3.5. Biểu đồ sequence chức năng đổi tài khoản................................................................ 27
Hình 3.6. Biểu đồ sequence chức năng quản trị hệ thống........................................................ 28
Hình 3.7. Các bảng trong cơ sở dữ liệu......................................................................................... 29
Hình 3.8. Tổng quan về Server........................................................................................................... 31
Hình 3.9. Sơ đồ phân rã chức năng................................................................................................... 31
Hình 3.10. Biểu đồ luồng dữ liệu ngữ cảnh................................................................................... 32
1
MỞ ĐẦU
1. Tính cấp thiết của đề tài
Với xu thế phát triển của xã hội ngày nay, việc ứng dụng công nghệ thông tin
phục vụ đời sống ngày càng phổ biến. Hiện nay, các hệ thống phần mềm đã có khả
năng mô phỏng được giao tiếp giữa người với máy thơng qua việc nhận dạng và tổng
hợp tiếng nói. Nghiên cứu nhận dạng và tổng hợp tiếng nói đã được các nước trên thế
giới thực hiện nhiều năm qua và cũng đã có những thành cơng nhất định. Ở Việt Nam
việc xử lý tiếng Việt cũng có nhiều cơng trình nghiên cứu và thử nghiệm, tuy nhiên,
các kết quả vẫn cịn hạn chế, cần có nhiều nghiên cứu nữa trong vấn đề này.
Ngồi ra, đất nước Việt Nam có nhiều vùng miền, mỗi vùng miền lại có một
loại giọng nói và âm điệu khác nhau. Đất nước Việt Nam cũng có nhiều dân tộc, khi
các dân tộc học tiếng Việt và nói tiếng Việt lại cũng có một cách phát âm và âm điệu
khác nhau, dẫn đến có dân tộc khác nhau hoặc các người từ các vùng miền khác nhau
khi giao tiếp bằng tiếng Việt với nhau rất khó. Nhưng với sự phát triển của khoa học
công nghệ hiện nay thì chúng ta có thể sử dụng phần mềm có thể chuyển đổi/khơi
phục/tái tạo âm thanh sao cho phù hợp với người mỗi vùng miền hay dân tộc khác
nhau. Điều này lại phát sinh vấn đề về trí tuệ nhân tạo và cần dữ liệu lớn về âm tín
hiệu tiếng nói của người đọc tiếng Việt. Mặc dù bộ dữ liệu tiếng nói là thành phần thiết
yếu để xây dựng các cơng cụ xử lý tiếng nói, hiện nay lượng dữ liệu tiếng nói tiếng
Việt là khá hạn chế.
Nhằm xây dựng kho dữ liệu lớn phục vụ cho các nghiên cứu về xử lý tiếng nói
tiếng Việt, luận văn xây dựng một hệ thống theo mơ hình client/server. Trong đó, phía
client là app trên điện thoại di động thơng minh cho phép thu thập dữ liệu tiếng nói và
thơng tin người cung cấp dữ liệu đơn giản và thuận tiện. Phía server là hệ thống lưu trữ
tập trung, cho phép lưu trữ và quản lý số lượng lớn mẫu ghi âm tiếng nói và một số
cơng cụ thuật tốn cho phép hỗ trợ xử lý tiếng nói.
Qua nghiên cứu, luận văn làm rõ cách xử lý sơ bộ tiếng nói, mơ hình, phương
pháp nào là tương đối tốt cho việc lưu trữ, quản lý dữ liệu tiếng nói tiếng Việt. Bên
cạnh đó, luận văn tiến hành xây dựng một chương trình thực tế và thu thập mẫu để
chứng minh cho những hiểu biết của tác giả về mơ hình lưu trữ quản lý mẫu dữ liệu
lớn phục vụ xử lý tiếng nói.
2
2. Mục tiêu, phạm vi nghiên cứu của luận văn
Luận văn nghiên cứu những ý tưởng cơ bản và các phương pháp được sử dụng
trong mơ hình thu thập, lưu trữ và quản lý dữ liệu tiếng nói lớn từ đó xây dựng một hệ
thống phần mềm có khả năng thu thập dữ liệu tiếng nói phân tán, xử lý sơ bộ mẫu và
lưu trữ dữ liệu sẵn sàng phục vụ xử lý tiếng nói theo phương pháp dữ liệu lớn. Với các
kết quả cụ thể:
-
Nghiên cứu, cài đặt và đánh giá hiệu quả thuật tốn tính tỉ lệ tín hiệu trên nhiễu
(SNR) của tín hiệu tiếng nói trên miền thời gian dùng để gán nhãn các tín hiệu tiếng
nói thu thập được.
-
Xây dựng hệ thống phần mềm nhằm thu thập CSDL tiếng nói phục vụ cho các
nghiên cứu về xử lý tiếng nói như nhận dạng hay tổng hợp tiếng nói, với các tính năng:
+ Tiền xử lý dữ liệu thu thập được để đánh giá chất lượng ghi âm.
+
Cho phép người dùng nghe lại và đánh giá chất lượng các đoạn thu âm nhằm
làm sạch dữ liệu thu thập được, ví dụ như phát hiện tín hiệu ghi âm không trùng khớp
với nội dung kịch bản thu âm.
+ Phát triển hệ thống theo mơ hình client-server và ứng dụng di động đa nền
tảng.
Đối tượng nghiên cứu bao gồm: Các đặc tính cơ bản của Tiếng Việt; Tính vùng
miền của Tiếng Việt; Các thuật tốn tính tỉ lệ tín hiệu trên nhiễu của tín hiệu tiếng nói;
Mơ hình lưu trữ dữ liệu lớn; Lập trình ứng dụng di động; Các hệ thống thư viện lập
trình hỗ trợ xử lý tiếng nói;
Phạm vi nghiên cứu bao gồm: Trong thời gian hạn chế và mức độ phức tạp của
bài toán xử lý tiếng nói với dữ liệu lớn, luận văn này tập trung xây dựng nền tảng thu
thập dữ liệu lớn phục vụ cho các nghiên cứu tiếp theo trong lĩnh vực tổng hợp và nhận
dạng tiếng nói của người Việt.
3. Phƣơng pháp và nội dung nghiên cứu
Luận văn sử dụng phương pháp nghiên cứu kết hợp giữa nghiên cứu lý thuyết với
phương pháp thực nghiệm thông qua xây dựng cơ sở dữ liệu và phát triển phần mềm
xử lý. Hướng tiếp cận chính là nghiên cứu tài liệu qua các bài báo đăng trên các tạp chí
khoa học và khai thác các hệ thống phần mềm liên quan đến vấn đề đang nghiên cứu
trên mạng Internet.
3
* Ý nghĩa khoa học
- Tổng hợp các kiến thức liên quan đến xử lý và lưu trữ tín hiệu tiếng nói tiếng
Việt.
- Nắm vững và vận dụng ngơn ngữ lập trình thiết bị di động, dịch vụ web và hệ
quản trị CSDL để xây dựng ứng dụng.
- Kết quả của luận văn là một cơ sở dữ liệu tiếng nói lớn đã được gán nhãn với độ
chính xác cao sẵn sàng phục vụ các hệ thống xử lý tiếng nói trong tương lai.
* Ý nghĩa thực tế
-
Xây dựng ứng dụng theo mơ hình client/server để thu thập CSDL tiếng nói lớn
phục vụ cho các nghiên cứu về xử lý tiếng nói.
Cấu trúc luận văn gồm: phần mở đầu, 3 chương nội dung, kết luận, danh mục tài
liệu tham khảo và phụ lục.
Chương này trình bày khái quát về tổng hợp và nhận dạng tiếng nói dựa trên
phương pháp Corpus - based theo cả hai phương pháp là chọn đơn vị để ghép nối và
mơ hình tổng hợp dựa trên HMM cho vấn đề tổng hợp tiếng nói và mơ hình HMM cho
vấn đề nhận dạng tiếng nói. Chương này cịn phân tích một số hệ thống tổng hợp và
nhận dạng tiếng nói cũng như mơ hình Fujisaki để tổng hợp đường F0.
Chương 2: Các thuật tốn tính tỉ lệ tín hiệu trên tạp âm của tín hiệu tiếng nói.
Chương này tập trung phân tích, so sánh và đánh giá một số thuật tốn tính SNR
của các tín hiệu tiếng nói thu thập được, từ đó xây dựng kịch bản triển khai trong
chương tiếp theo.
Chương 3. Triển khai và kết quả thực nghiệm
Chương này trình bày và đề xuất giải pháp xây dựng hệ thống phần mềm thu thập
và xử lý dữ liệu tiếng nói gồm các thành phần chính cần xây dựng:
- Kịch bản thu thập tiếng nói đa địa điểm bằng smartphone.
- Mơ hình lưu trữ và cung cấp dịch vụ dữ liệu tiếng nói.
- Phân tích hiệu năng và khả năng lưu trữ, quản lý của hệ thống trên máy chủ.
So sánh, đánh giá kết quả thu thập và xử lý của hệ thống.
4
4. Kết quả đạt đƣợc của luận văn
Kết quả của luận văn bao gồm:
-
Báo cáo tổng thể về cơ sở lý thuyết xử lý tiếng nói, phương pháp thu thập và
xử lý dữ liệu tiếng nói với số lượng lớn.
- Đề xuất sử dụng thuật toán và xây dựng hệ thống hỗ trợ xử lý tiếng nói, lưu
trữ để làm nền tảng cho các ứng dụng xử lý tiếng nói tiếng Việt.
-
Một số dữ liệu CSDL tiếng nói được thu thập, xử lý sơ bộ và gán nhãn nhằm
chứng minh cho tính hiệu quả và khả thi của hệ thống.
5
CHƢƠNG 1
TỔNG QUAN VỀ XỬ LÝ TIẾNG NÓI
Chương 1 đề cập nội dung tổng quan về tổng hợp tiếng nói, nhận dạng tiếng nói
và hệ thống lưu trữ dữ liệu âm thanh có gán nhãn. Đây là vấn đề chính mà luận văn
quan tâm. Trong chương này, luận văn tập trung tổng hợp, phân tích tình hình nghiên
cứu trong và ngồi nước về xử lý tiếng nói nhằm xác định các hướng tiếp cận, phương
pháp giải quyết các bài toán xây dựng hệ thống thu thập dữ liệu tiếng nói. Đồng thời,
Chương 1 cũng tổng hợp các nghiên cứu liên quan nêu bật những mặt còn tồn tại,
những vấn đề cần giải quyết đối với việc xử lý và thu thập tiếng nói từ đó tìm hướng
tiếp cận giải quyết bài toán xây dựng hệ thống thu thập dữ liệu tiếng nói.
1.1. Xử lý tiếng nói và các ứng dụng
1.1.1. Ứng dụng tổng hợp tiếng nói
Tổng hợp tiếng nói là một bộ môn khoa học nhằm nghiên cứu và xây dựng các
cơng nghệ để tạo ra âm thanh tiếng nói từ máy giống như tiếng nói của con
người.Trong những năm gần đây tiếng nói tổng hợp đã trải qua chặng đường khá dài,
việc ứng dụng tổng hợp tiếng nói vào thực tiễn đã trở nên phổ biến. Tuy nhiên, chất
lượng âm thanh và độ tự nhiên của tiếng nói tổng hợp cho đến nay vẫn cịn là những
vấn đề mở.
Hình 1.1. Hệ thống TTS tổng qt.
Nói chung q trình Tổng hợp tiếng nói bao gồm các giai đoạn chính:
- Chuẩn hóa văn bản và phân tích câu - xử lý ngôn ngữ tự nhiên.
6
- Chuyển văn bản sang đơn vị tiếng nói.
- Dự báo ngơn điệu.
- Sinh tín hiệu tiếng nói.
1.1.2. Ứng dụng nhận dạng tiếng nói
Tương tự ứng dụng tổng hợp tiếng nối, ứng dụng nhận dạng tiếng nói rất phổ
biến trong thời gian gần đây, cho phép giao tiếp giữa người và máy. Từ các tín hiệu âm
thanh người nói, thơng qua bộ phận ghi âm và hệ thống nhận dạng, máy tính sẽ hiểu và
phân biệt được các ý nghĩa của câu nói. Độ phức tạp của hệ thống nhận dạng tiếng nói
thường phụ thuộc vào các yếu tố cơ bản sau:
- Mơi trường thu nhận tín hiệu.
- Tập từ vựng được sử dụng.
- Sự phụ thuộc vào người nói.
- Kiểu phát âm (rời rạc, kết nối, liên tục).
- Tài nguyên hệ thống.
Hình 1.2. Liệt kê các kiểu hệ thống nhận dạng tiếng nói.
o Mơi trường
Độ chính xác nhận dạng trong các mơi trường như: nhà ở-văn phịng; trong ơ tơ;
trong mơi trường cơng nghiệp; nguồn âm có khoảng cách với mic là rất khác nhau,
nguyên nhân do tín hiệu nhiễu, tiếng vang gây ra.
o Tập từ vựng
Căn cứ vào số lượng từ nhận dạng mà người ta chia các hệ thống sử dụng cơng
nghệ nhận dạng tiếng nói làm ba loại: số lượng từ vựng nhỏ (30-100), số lượng từ
vựng trung bình (100-500), và số lượng từ vựng lớn (> 500).
o Sự phụ thuộc người nói
Trong hệ thống nhận dạng phụ thuộc người nói, chủ thể tương tác với hệ thống
phải là người có dữ liệu tiếng nói trong tập dữ liệu huấn luyện ban đầu của hệ thống.
7
Đối với hệ thống nhận dạng độc lập người nói, người tương tác với hệ thống có
thể là bất kỳ. Hệ thống này địi hỏi phải có một nguồn dữ liệu tiếng nói kích thước lớn
của nhiều người nói. Khả năng nhận dạng chính xác của hệ thống độc lập người nói
thấp hơn hệ thống phụ thuộc người nói.
o Tài nguyên hệ thống
Tài nguyên hệ thống chủ yếu gồm năng lực tính tốn và dung lượng bộ nhớ . Các
chip thường chỉ đủ đáp ứng u cầu tính tốn chấm tĩnh, như vậy hệ thống nhận dạng
nếu không được thiết kế tốt thì độ chính xác sẽ bị suy giảm hoặc không đáp ứng được
yếu tố thời gian thực.
Như vậy, cả hai ứng dụng chính của xử lý tiếng nói đều phụ thuộc vào dữ liệu âm
thanh và dữ liệu ngữ nghĩa đặc điểm của tín hiệu âm thanh đó. Khi xử lý tín hiệu âm
thanh cần số lượng càng lớn càng tốt dữ liệu thu thập. Từ đó nhiệm vụ chính của luận
văn là nghiên cứu và xây dựng hệ thống thu thập dữ liệu âm thanh, đây là bước đầu
trong việc xử lý tiếng nói.
1.2. Khái niệm về tín hiệu tiếng nói
Con người có năm giác quan để cảm nhận và nhận thức thế giới xung quanh.
Trong quá trình phát triển của xã hội lồi người, con người dùng năm giác quan này để
nhận thức, thu thập kiến thức và tác động trở lại tự nhiên qua đó nâng cao đời sống của
con người. Một trong những giác quan quan trọng trong sự phát triển của xã hội con
người đó là thính giác. Nhờ có thính giác mà con người có thể nghe được âm thanh,
con người có thể giao tiếp được với nhau qua âm thanh.
Về bản chất, âm thanh từ lời nói, âm thanh trong thế giới tự nhiên đều là những
sóng âm lan truyền trong mơi trường. Khi chúng ta nói dây thanh trong hầu bị chấn
động, tạo nên những sóng âm, sóng truyền trong khơng khí đến màng nhĩ – một màng
mỏng rất nhạy cảm của tai ta – làm cho màng nhĩ cũng dao động, các dây thần kinh
của màng nhĩ sẽ nhận được cảm giác âm khi tần số dao động của sóng đạt đến một độ
lớn nhất định.
Tai con người chỉ cảm thụ được những dao động có tần số từ khoảng 16 Hz đến
khoảng 20000 Hz. Những dao động trong miền tần số này gọi là dao động âm hay âm
thanh và các sóng tương ứng gọi là sóng âm. Những sóng có tần số nhỏ hơn 16 Hz gọi
là sóng hạ âm, những sóng có tần số lớn hơn 20000 Hz gọi là sóng siêu âm, con người
8
khơng cảm nhận được (ví dụ lồi dơi có thể nghe được tiếng siêu âm) [1].
Tất cả các sóng âm đều được lan truyền trong môi tường, từ môi trường khơng
khí, mơi trường rắn, mơi trường lỏng.
Trong xử lý tín hiệu tiếng nói, tín hiệu tiếng nói có hai cách để biểu diễn: biểu
diễn tín hiệu trên miền thời gian và biểu diễn tín hiệu trên miền tần số.
1.2.1. Biểu diễn trên miền thời gian
Hình 1.3. Dạng sóng theo thời gian
Âm thanh dưới dạng sóng được lưu trữ theo định dạng thơng dụng trong máy
tính là file .wav với các tần số lấy mẫu thường gặp là: 8000 Hz, 10000 Hz, 11025 Hz,
16000 Hz, 22050 Hz, 32000 Hz, 44100 Hz, …; độ phân giải hay cịn gọi là số bít/mẫu
là 8 hoặc 16 bít và số kênh là 1 (Mono) hoặc 2 (Stereo).
9
Hình 1.4. Tín hiệu của cùng một âm do một ngƣời nói thu ở hai thời điểm khác
nhau
Tuỳ theo thiết bị, thời điểm, người phát âm thì dữ liệu âm thanh được số hố, biểu
diễn lại trong máy tính sẽ khác nhau.
1.2.2. Biển diễn trên miền tần số
Một trong những đại lượng đặc trưng để biểu diễn tín hiệu tiếng nói trên miền tần
số đó là phổ.
Phổ trong tín hiệu tiếng nói là biểu diễn của sự phụ thuộc của biên độ vào thời
gian và tần số, là hình ảnh biểu diễn của tín hiệu tiếng nói theo trục của tần số.
1.2.2.1. Biến đổi Fourier
Biến đổi Fourier trong xử lý tín hiệu tiếng nói là phép biến đổi tín hiệu tiếng nói
theo miền thời gian sang miền tần số.
Biến đổi Fourier có nhiều dạng :
-
Biến đổi Fourier liên tục là một tốn tử tuyến tính chuyển một hàm tích phân
này sang một hàm tích phân khác. Trong xử lý tín hiệu, biến đổi Fourier liên tục được
áp dụng trên phổ và theo các thành phần trong phổ.
- Biến đổi Fourier rời rạc là phép biến đổi cho các tín hiệu thời gian rời rạc.
Biến
đổi này thường được áp dụng trong việc phân tích phổ, lọc tín hiệu.
1.2.2.2. Phổ hai chiều
Phổ hai chiều là phổ trong đó chứa thơng tin tín hiệu tiếng nói và được biểu diễn
trên hai đại lượng là tần số và biên độ phổ.
10
Hình 1.5. Phổ hai chiều
1.2.2.3. Phổ ba chiều
Phổ ba chiều là phổ trong đó tín hiệu tiếng nói được biểu diễn trên ba đại lượng:
thời gian, tần số và biên độ phổ.
Hình 1.6. Phổ ba chiều
Nếu màu của tín hiệu càng đậm thì biên độ phổ (hay năng lượng của tín hiệu)
càng cao.
1.3. Các đặc tính cơ bản của tín hiệu tiếng nói
Tiếng nói được tạo ra từ độ rung của dây thanh âm trong thanh quản thơng qua
khí quản và hoạt động của tuyến âm. Như vậy, tiếng nói chính là âm thanh. Tiếng nói
có chu kỳ dao động, có tần số âm thanh.
1.3.1. Âm sắc
Âm sắc là một trong bốn đặc tính cơ bản của âm thanh cũng như tín hiệu tiếng
nói. Âm sắc giúp ta phân biệt được tiếng nói của từng âm và của mỗi người được cảm
nhận khác nhau như thế nào. Âm sắc liên quan mật thiết đến phổ của tín hiệu.
11
Hình dưới đây minh hoạ âm sắc (dưới dạng phổ 3 chiều) ứng với nữ giới và nam
giới khi phát cùng một âm.
Hình 1.7. Âm sắc của một ngƣời nữ khi phát nguyên âm /a/
Hình 1.8. Âm sắc của một ngƣời nam khi phát nguyên âm
/a/ 1.3.2. Cƣờng độ
Cường độ là độ to hay nhỏ của âm thanh nói ra. Cường độ càng lớn thì âm thanh
truyền càng xa trong môi trường truyền. Cường độ âm là số năng lượng mà sóng âm
truyền đi trong một thời gian nhất định trên đơn vị diện tích cố định và vng góc với
phương truyền âm. Trong tiếng nói, cường độ của nguyên âm thường lớn hơn cường
độ của phụ âm. Trên đồ thị biểu diễn sóng tín hiệu (waveform), cường độ âm thanh tỉ
lệ thuận với giá trị tuyệt đối của biên độ tín hiệu.
Hình 1.9. Đồ thị biểu diễn sóng tín hiệu của nguyên âm /a/ của một ngƣời nói
12
Hình 1.10. Đồ thị biểu diễn sóng tín hiệu của phụ âm /h/ của một ngƣời nói
1.3.3. Trƣờng độ
Trường độ hay còn được biết là độ dài của âm phát ra phụ thuộc vào sự chấn
động lâu hay nhanh của phần tử môi trường truyền đi.
Trường độ của mỗi người khác nhau và mỗi thời điểm cũng khác nhau.
Hình 1.11. Nguyên âm /a/ đƣợc thu ở hai thời điểm khác nhau của cùng một
ngƣời nói
13
Hình 1.12. Âm /a/ của một ngƣời nữ
Hình 1.13. Âm /a/ của một ngƣời
nam 1.3.4. Âm hữu thanh
Âm hữu thanh (voiced speech) là âm phát ra có thanh, ví dụ như các nguyên
âm /a/, /e/, /i/, /o/, /u/ hoặc các phụ âm như /m/, /n/, /l/. Thực ra âm hữu thanh được tạo
ra là do việc khơng khí qua thanh môn (thanh môn tạo ra sự khép mở của dây thanh
dưới sự điều khiển của hai sụn chóp) với một độ căng của dây thanh sao cho chúng tạo
nên dao động.
Trong xử lý tín hiệu tiếng nói, âm hữu thanh gồm các khung tín hiệu tuần hồn
nên có thể tính được tần số cơ bản F0.
1.3.5. Âm vô thanh
Âm vô thanh (voiced speech) là âm khi tạo ra tiếng thì dây thanh không rung
hoặc rung đôi chút tạo ra giọng như giọng thở, ví dụ như /t/, /p/ hay /k/.
Trong xử lý tín hiệu tiếng nói, âm vơ thanh khơng có ích khi tính tần số cơ bản.
Vì âm vơ thanh khơng có khung tín hiệu tuần hồn. Tần số cơ bản ở âm vô thanh là
không xác định.
1.4. Xử lý ngắn hạn (short-time processing)
14
Tín hiệu tiếng nói có một tính chất quan trọng là các đặc tính của nó thay đổi
tương đối chậm theo thời gian. Thơng thường, các đặc tính của tín hiệu ổn định trong
khoảng thời gian từ 10 ms đến 30 ms. Do đó, người ta thường chia tín hiệu cần xử lý
thành các khung tín hiệu liên tiếp nhau, mỗi khung có độ dài từ 10 ms đến 30 ms. Sau
đó, ta tiến hành xử lý trên mỗi khung tín hiệu này. Các khung tín hiệu này được gọi là
các khung phân tích, các khung này có thể trùng nhau (overlap) một phần để đảm bảo
các đặc tính của tín hiệu biến đổi trơn tru giữa 2 khung liên tiếp. Việc chia khung này
sẽ được lặp lại từ đầu đến cuối trên tín hiệu cần xử lý. Kết quả của việc xử lý trên mỗi
khung có thể chỉ gồm một giá trị số (ví dụ như giá trị năng lượng hoặc giá trị F0), có
thể gồm nhiều giá trị số (ví dụ như các hệ số phổ).
Hình 1.14. Chia tín hiệu thành các khung cửa sổ
Việc chia tín hiệu tiếng nói thành các khung tín hiệu giúp ta xác định và xử lý
được các tín hiệu tiếng nói có đặc tính hầu như khơng thay đổi, độc lập.
Hầu hết các kỹ thuật xử lý ngắn hạn được biểu diễn dưới dạng:
∑
[( )](
)
(1.1)
Tín hiệu tiếng nói được biến đổi bởi hàm T[ ], tuyến tính hoặc phi tuyến tính và
có thể phụ thuộc vào một vài điều chỉnh thông số hoặc tập các thông số. Kết quả là các
cửa sổ có trình tự và vị trí, thời gian tương ứng với mẫu chỉ số n. Và kết quả là tổng
giá trị các số khác không. Thông thường, các cửa sổ tuần tự này có thời gian giới hạn.
Giá trị Qn là tuần tự các trọng số trung bình của trình tự T[x(m)]
Năng lượng ngắn hạn của tín hiệu tiếng nói là ví dụ đơn giản minh hoạ cho ý
tưởng ở trên.