Tải bản đầy đủ (.pdf) (359 trang)

Tổng hợp và nhận dạng tiếng việt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.79 MB, 359 trang )

Viện công nghệ thông tin

Báo cáo tổng kết khoa học và công nghệ
đề tài nhánh

tổng hợp và nhận dạng
tiếng Việt
thuộc đề tài cấp nhà nớc

nghiên cứu phát triển côngnghệ nhận dạng, tổng hợp
và xử lý ngôn ngữ tiếng việt
MÃ số: KC 01.03
Chủ nhiệm đề tài: gs.tskh . bạch hng khang

6455-2
07/8/2007
Hà Néi- 2004


MỤC LỤC
1.

PHƯƠNG PHÁP PHÂN TÍCH TIẾNG NĨI THEO CÁC ĐẶC TRƯNG 1
1.1.
Các phương pháp trích chọn đặc tính .......................................................1
1.1.1. Phương pháp tính hệ số MFCC ..................................................................... 1
1.1.2.

Phương pháp tính hệ số PLP.......................................................................... 4

1.1.3.



Các kĩ thuật khử nhiễu.................................................................................... 6

1.2.
Các đơn vị xử lý tiếng nói ..........................................................................7
1.2.1. Tần số lấy mẫu ................................................................................................ 7
1.2.2.

Nhiễu................................................................................................................ 7

1.2.3.

Tần số cơ bản .................................................................................................. 8

1.2.4.

Formant............................................................................................................ 8

1.3.
Định dạng âm thanh ..................................................................................9
1.4.
Thu tín hiệu âm thanh trong thời gian thực.............................................11
1.5.
Xác định giá trị hằng – ngưỡng theo mơi trường tín hiệu.......................12
1.5.1. Thông số ngưỡng zero.................................................................................. 12
1.5.2.

Thông số độ ồn nhiễu ................................................................................... 13

1.6.

Lọc nhiễu..................................................................................................13
1.7.
Xác định dãy tín hiệu số có chứa dữ liệu tiếng nói và xác định các điểm đầu
- cuối của tiếng nói.................................................................................................14
1.8.
Chuẩn hố biên độ ...................................................................................15
1.8.1. Biến đổi FFT ................................................................................................. 16

2.

1.8.2.

Làm rõ tín hiệu và cửa sổ hố ...................................................................... 19

1.8.3.

Định lý lấy mẫu............................................................................................. 20

1.8.4.

Phổ dẹt của tiếng nói..................................................................................... 20

1.8.5.

Biểu diễn tiếng nói theo mơ hình LPC và các hệ số dự báo tuyến tính..... 22

CÁC MƠ HÌNH ỨNG DỤNG CHO NHẬN DẠNG TIẾNG NÓI
28
2.1.
Phương pháp VQ .....................................................................................28

2.1.1. Khái niệm phép lượng tử hố....................................................................... 28
2.1.2.

Độ biến dạng ................................................................................................. 29

2.1.3.

Tính chất........................................................................................................ 29

2.1.4.

Thiết kế codebook theo phương pháp LBG................................................ 30

2.1.5.

Ứng dụng VQ trong xử lý tín hiệu tiếng nói............................................... 33

2.2.
Phương pháp căn chỉnh thời gian động ..................................................34
2.2.1. Khái quát về tiếp cận đối sánh mẫu và kĩ thuật căn chỉnh thời gian động 34


2.2.2.

Kĩ thuật căn chỉnh thời gian động................................................................ 36

2.2.3.

Các ràng buộc................................................................................................ 41


2.2.4.

Thuật tốn căn chỉnh thời gian động ........................................................... 46

2.3.
Mơ hình Markov ẩn..................................................................................52
2.3.1. Q trình Markov.......................................................................................... 52
2.3.2.

Mơ hình Markov ẩn ...................................................................................... 54

2.3.3.

Ba bài tốn cơ bản của mơ hình Markov ẩn................................................ 57

2.3.4.

Các loại mơ hình Markov ẩn........................................................................ 67

2.3.5.

Giới hạn của mơ hình Markov ẩn ................................................................ 69

2.4.
Mạng Nơron.............................................................................................69
2.4.1. Các khả năng của mạng nơron..................................................................... 69

3.

2.4.2.


Cấu trúc mạng nơron nhân tạo..................................................................... 70

2.4.3.

Phân loại mạng nơron................................................................................... 73

2.4.4.

Ứng dụng mạng nơ ron lan truyền ngược cho nhận dạng tiếng nói.......... 73

HUẤN LUYỆN VÀ NHẬN DẠNG TIẾNG NĨI 75
3.1.
Huấn luyện và nhận dạng theo mơ hình Markov.....................................75
3.1.1. Giới thiệu về HTK ........................................................................................ 75
3.1.2.

Huấn luyện hệ thống nhận dạng .................................................................. 75

3.1.3.

Nhận dạng...................................................................................................... 91

3.1.4.

Tổng kết......................................................................................................... 95

3.2.
Mơ hình lai ghép ANN/HMM...................................................................98
3.2.1. Hệ thống nhận dạng dùng HMM liên tục ................................................... 98

3.2.2.

Huấn luyện hệ thống nhận dạng dùng ANN............................................. 102

3.2.3.

Hệ thống nhận dạng dùng HMM/ANN .................................................... 103

3.2.4.

Nhận dạng.................................................................................................... 106

3.3.
So sánh hai phương pháp nhận dạng CD-HMM và HMM/ANN...........110
4. MÔI TRƯỜNG TÍN HIỆU TIẾNG NĨI TRÊN ĐIỆN THOẠI
118
4.1.
Giới thiệu về card Dialogic ...................................................................118
4.2.
Các khái niệm cơ bản ............................................................................119
4.2.1. Event ............................................................................................................ 119
4.2.2.

Event Handlers............................................................................................ 121

4.2.3.

Dialogic device handle ............................................................................... 122

4.2.4.


Kênh (device channel)................................................................................ 122

4.3.
Các mô hình lập trình ............................................................................122
4.3.1. Lập trình đồng bộ........................................................................................ 123


4.3.2.

Lập trình bất đồng bộ.................................................................................. 124

4.3.3.

Mơ hình bất đồng bộ mở rộng ................................................................... 128

4.3.4.

Các mơ hình kết hợp................................................................................... 129

4.4.
Sơ lược về các hàm và cấu trúc dữ liệu trong SRL ...............................130
4.4.1. Các hàm quản lý sự kiện ............................................................................ 130
4.4.2.

Các hàm thuộc tính chuẩn .......................................................................... 137

4.4.3.

Termination Parameter Table DV_TPT.................................................... 139


4.4.4.

Call status event block structure: DX_EBLK........................................... 141

4.4.5.

User digit buffer:DV_DIGIT ..................................................................... 142

4.4.6.

Thư viện âm thanh của C (Voice library of C functions)......................... 142

4.4.7.

Chi tiết một số hàm đã được đề cập........................................................... 145

5. TÍCH HỢP MODULE TỔNG HỢP TIẾNG VIỆT VÀ CÁC CHUẨN TÍCH
HỢP TIẾNG NĨI 149
5.1.
Hệ thống thơng điệp tích hợp (Unified Message System)......................149
5.2.
Cổng thoại 3i .........................................................................................154
5.2.1. Điều khiển voice menu – Callflow ............................................................ 154
5.2.2.

Xử lý đồng thời nhiều cuộc gọi.................................................................. 155

5.2.3.


Phát tiếng nói trên điện thoại...................................................................... 155

5.2.4.

Lập trình tích hợp card Dialogic vào ứng dụng ........................................ 157

5.2.5.

Một số thuật ngữ ......................................................................................... 158

5.2.6.

Tích hợp điện thoại và máy tính ................................................................ 159

6. CƠ SỞ DỮ LIỆU NGỮ ÂM CHO NHẬN DẠNG VÀ TỔNG HỢP TIẾNG
VIỆT
163
6.1.
Giới thiệu ...............................................................................................163
6.2.
Ghi âm cho CSDL ..................................................................................164
6.3.
Dữ liệu cho nhận dạng tiếng Việt ..........................................................166
6.3.1. Nhận dạng lệnh ........................................................................................... 166
6.3.2.

Nhận dạng chính tả ..................................................................................... 170

6.4.
Dữ liệu tiếng nói cho phân tích và nhận dạng thanh điệu.....................182

6.4.1. Thanh điệu tiếng Việt trong câu................................................................. 182
6.4.2.

Xác định đường nét đặc trưng của thanh điệu .......................................... 186

6.4.3.

Xác định ảnh hưởng của thanh điệu do ngữ cảnh..................................... 186

6.5.
Dữ liệu tiếng nói cho tổng hợp ................................................................188
6.5.1. Xác định đơn vị âm cho tổng hợp tiếng Việt ............................................ 189
6.5.2.

Hiện tượng liên cấu âm giữa âm tiết tiếng Việt ........................................ 191


6.6.
Kết luận ..................................................................................................191
7. TỔNG HỢP TIẾNG VIỆT 192
7.1.
Nhập môn ...............................................................................................192
7.2.
Khái quát về tổng hợp tiếng nói từ văn bản TTS (Text To Speech).......194
7.2.1. Các loại âm.................................................................................................. 195
7.2.2.

Các tham số âm thanh................................................................................. 196

7.2.3.


Nhắc lại các khái niệm ngữ âm.................................................................. 196

7.2.4.

Tổng hợp tiếng nói từ văn bản ................................................................... 198

7.3.
Các phương pháp tổng hợp tiếng nói ....................................................200
7.3.1. Tổng hợp theo cấu âm ................................................................................ 200
7.3.2.

Tổng hợp formant theo quy luật ................................................................ 202

7.3.3.

Tổng hợp xích chuỗi................................................................................... 204

7.4.
Chuẩn hố văn bản ................................................................................218
7.5.
Phân tích văn bản ..................................................................................222
7.6.
Các mơ hình ngơn ngữ...........................................................................226
8. PHÂN TÍCH ĐẶC TRƯNG ÂM HỌC VÀ ÂM VỊ HỌC CỦA TIẾNG NÓI
233
8.1.
Đặc trưng âm học của tiếng nói ............................................................233
8.1.1. Bản chất của âm .......................................................................................... 233
8.1.2.


Các thuộc tính biên độ cơ bản của sóng âm.............................................. 236

8.1.3.

Các thuộc tính trường thời gian của các sóng âm..................................... 241

8.1.4.

Các thuộc tính trường tần số của các sóng âm.......................................... 243

8.1.5.

Một số thuộc tính thẩm nhận cơ bản của sóng âm.................................... 249

8.1.6.

Mơ hình âm học của q trình phát âm lời nói ......................................... 253

8.1.7.

Bộ lọc bộ máy phát âm trong quá trình sản sinh ngun âm................... 254

8.1.8.

Những thuộc tính âm học của chất lượng nguyên âm.............................. 265

8.2.
Các đặc trưng âm vị học của tiếng nói..................................................275
8.2.1. Phân tích tiếng nói thành các đơn vị cơ bản.............................................. 275

8.2.2.

Các nét khu biệt ngôn điệu và cố hữu........................................................ 291

8.2.3.

Các đặc trưng khu biệt so với các đặc trưng khác của âm ....................... 292

8.2.4.

Ranh giới âm vị........................................................................................... 294

8.2.5.

Đột dừng đối lập với không đột dừng........................................................ 294

8.2.6.

Giọng the thé đối lập với giọng dịu ........................................................... 295

8.2.7.

Nguồn bổ sung - Hữu thanh đối lập với vô thanh..................................... 299

8.2.8.

Các nét vang................................................................................................ 300


8.2.9.


Các nét thanh tính ....................................................................................... 303

8.2.10. Dẹt đối lập với bằng phẳng ........................................................................ 305
8.2.11. Điếc đối lập với bằng phẳng....................................................................... 306
9.

ĐẶC ĐIỂM NGỮ ÂM CƠ BẢN TIẾNG VIỆT 242
9.1.
Âm tiết tiếng Việt....................................................................................242
9.1.1. Dẫn luận....................................................................................................... 242
9.1.2.

Phương pháp................................................................................................ 242

4.1.3. Kết quả............................................................................................................. 244
4.2. Hệ formant của nguyên âm tiếng Việt .........................................................248
4.3. Một số vấn đề về phụ âm tiếng Việt hiện đại...............................................255
4.3.1. Đặt vấn đề........................................................................................................ 255
4.3.2. Phương pháp ................................................................................................... 257
4.3.3. Giới hạn ........................................................................................................... 258
4.3.4. Kết quả............................................................................................................. 258
4.3.5. Kết luận............................................................................................................ 266
4.4. Các thanh điệu của tiếng Việt......................................................................269
TÀI LIỆU THAM KHẢO
275


Hình 1-1. Các bước xử lý của phương pháp tính tốn hệ số MFCC. ........................2
Hình 1-2. Các bước xử lý của phương pháp tính tốn hệ số PLP..............................5


Error! No bookmark name given.
Hình 1-4. Mơ hình phổ dẹt của tiếng nói ................................................................21
Hình 1-5. Sơ đồ phân tích tiếng nói .........................................................................21
Hình 1-6. Sơ đồ bộ xử lý LPC dùng cho trích đặc trưng tiếng nói..........................22
Hình 2-1. Ví dụ VQ 1 chiều. ....................................................................................28
Hình 2-2. Ví dụ VQ 2 chiều. ....................................................................................28
Hình 2-3. Sơ đồ khối chung của quá trình huấn luyện và phân lớp tín hiệu tiếng nói
sử dụng VQ.......................................................................................................33
Hình 2-4. Đồ thị của chuỗi các vector phổ đã được mã hóa bằng VQ của phát âm từ
8 tiếng Anh. ......................................................................................................34
Hình 2-5. Sơ đồ cách tiếp cận đối sánh mẫu............................................................35
Hình 2-6- Các frame lần lượt gối lên nhau. .............................................................37
Hình 2-7- So sánh sự khác nhau về thời gian trên từ “speech” ...............................37
Hình 2-8- Lưới minh họa quy hoạch động...............................................................39
Hình 2-9- Các ràng buộc điểm đầu cuối (Endpoint Constraints).............................42
Hình 2-10- Minh họa về so khớp khơng đều đặn. ...................................................42
Hình 2-11- Minh họa về so khớp khơng liên tục. ....................................................43
Hình 2-12- Các ràng buộc đường đi cục bộ.............................................................44
Hình 2-13- Ràng buộc đường đi cục bộ Itakura. .....................................................44
Hình 2-14- Các ràng buộc đường đi tồn cục. .........................................................45
Hình 2-15- Minh họa về căn chỉnh thời gian động giữa mẫu chuẩn “SPEECH” và
mẫu nhận dạng có nhiễu “SsPEEhH”...............................................................46
Hình 2-16- Các hướng đi có thể của SDTW............................................................47
Hình 2-17- Ba cách đi có thể từ ơ (i, j) đến một ơ khác trong DTW phản đối xứng
..........................................................................................................................49
Hình 2-18- Các hướng đi có thể của DTW phản đối xứng......................................50
Hình 2-19- Đường đi qua vùng hợp lệ. ....................................................................50
Hình 2-20- Xích Markov với 5 trạng thái S1, S2, ..., S5 và các xác suất chuyển trạng
thái ....................................................................................................................53



Hình 2-21-Ví dụ một mơ hình Markov ẩn với sáu trạng thái ..................................56
Hình 2-22- Miêu tả các dãy phép tốn được thực hiện để tính biến αt (i). ..............59
Hình 2-23- Miêu tả các dãy phép toán được thực hiện để tính biến βt(i) ................60
Hình 2-24- Miêu tả các phép tính cần thiết để tính ξt(i, j). ......................................63
Hình 2-25- Mơ hình nhiều tầng của mạng nơron.....................................................71
Hình 2-26- Các thành phần cơ sở mạng nơron. .......................................................71
Hình 3-1- Thuật tốn của Hinit ................................................................................80
Hình 3-2- Các hoạt động của Hnit. ..........................................................................81
Hình 3-3- Mơ hình hoạt động của Hcompv .............................................................82
Hình 3-4- Sơ đồ buộc hai âm vị sil và sp.................................................................83
Hình 3-5- Hoạt động của Herest. .............................................................................83
Hình 3-6- Dùng Hhed chuyển âm đơn sang âm ba..................................................86
Hình 3-7- Quá trình buộc các âm ba bằng Hhed......................................................87
Hình 3-8- Buộc các trạng thái. .................................................................................88
Hình 3-9- Sơ đồ ngữ pháp của hệ thống nhận dạng mười chữ số liên tục...............91
Hình 3-10- Sơ đồ mạng word-loop với các xác suất bigram. ..................................93
Hình 3-11- Cấu trúc ba lớp của mạng từ nhận dạng. ...............................................94
Hình 3-12- Mơ hình mạng lai ghép HMM/ANN...................................................104
Hình 3-13-Huấn luyện mạng lai ghép HMM/ANN. ..............................................105
Hình 3-14- Sơ đồ mạng word-loop với các xác suất bigram. ................................107
Hình 3-15- Cấu trúc ba lớp của mạng từ nhận dạng ..............................................108
Hình 3-16- Minh họa thuật tốn chuyển thẻ bài. ...................................................109
Hình 7-1- Giao diện chương trình kiểm tra ETTVSNAM.....................................150
Hình 7-2- Hệ thống thao tác dọc và duyệt thư thoại..............................................155
Hình 7-3- Kiến trúc phân tầng TAPI .....................................................................160
Hình 5-1. Phổ tiếng nói của câu.............................................................................164
Hình 5-2. Ảnh phổ của âm tiết kết thúc bằng âm tắc /p/: “hấp tấp” ......................173
Hình 5-3. Ảnh phổ của âm tiết “bắt” .....................................................................174

Hình 5-4. Ảnh phổ của hai âm tiết đọc liền nhau ..................................................177


1. PHƯƠNG PHÁP PHÂN TÍCH TIẾNG NĨI THEO
CÁC ĐẶC TRƯNG
1.1. Các phương pháp trích chọn đặc tính
Phần này sẽ giới thiệu hai phương pháp được sử dụng rộng rãi trong các
hệ thống nhận dạng hiện tại để tính tốn các hệ số MFCC (Mel Scale
Frequency Cepstral Coefficients) và hệ số PLP (Perceptual Linear
Prediction). Hai kĩ thuật xử lý tiếng nói RASTA (RelAtive SpecTral) và CMS
(Cepstral Mean Subtraction) cũng được giới thiệu. Đây là hai kĩ thuật loại bỏ
nhiễu hay được sử dụng đặc biệt là trong phát âm có nhiều nhiễu như các câu
thu âm qua điện thoại.
1.1.1. Phương pháp tính hệ số MFCC
Hình 2.1 miêu tả các bước tính tốn hệ số MFCC.
Nhấn mạnh tín hiệu (pre-emphasis). Trong bước xử lý đầu tiên này, tín
hiệu được đưa qua một bộ lọc số:

H pre ( z ) = 1 + a pre z −1
Trong đó a pre là hệ số nhấn mạnh, thường có giá trị là 0,9700002861. Bộ
lọc có tác dụng tăng cường tín hiệu tại tần số cao (trên 1KHz) với hai lý do
chính:
• Giọng nói có sự suy giảm khoảng 20dB/decade khi lên tần số cao do
đặc điểm sinh lý của hệ thống phát âm của con người. Bước xử lý này
sẽ tăng cường tín hiệu lên một giá trị gần 20dB/decade để khắc phục sự
suy giảm này,
• Hệ thống thính giác của con người nhạy cảm hơn với vùng tần số cao,
bước xử lý này nhấn mạnh vùng tần số cao, trợ giúp cho quá trình mơ
hình hố âm thanh sau này của hệ thống nhận dạng.


1


Hình 1-1. Các bước xử lý của phương pháp tính tốn hệ số MFCC.

Tạo khung tín hiệu (framing). Tín hiệu tiếng nói ln ln biến thiên
theo thời gian, tuy nhiên, trong khoảng thời gian khoảng 10-20ms, tín hiệu
tiếng nói được coi là tương đối ổn định. Do đó, tín hiệu thường được chia
thành các khung kích thước 20-30 ms với vùng gối lên nhau khoảng 10-15
ms.
Làm cửa sổ (frame windowing). Cửa sổ Hamming thường được áp dụng
cho mỗi khung tín hiệu để giảm sự tác động của việc chia khung tín hiệu:
sn' = {0.54 − 0.46cos(

2π ( n − 1)
)}sn
N −1

Trong đó, N là số mẫu dữ liệu (sample) của cửa sổ.
DFT (Discrete Fourier Transform). Tại bước này, với mỗi khung tín
hiệu, biến đổi Fourier được áp dụng để chuyển tín hiệu về miền tần số. Cơng
việc tính tốn được thực hiện bằng thuật toán FFT (Fast Fourier Transform).
Lọc theo thang tần số Mel (Mel-frequency bandpass filter). Các bộ lọc
số được áp dụng để lọc các tín hiệu theo các giải tần số khác nhau.
Phản ứng của tai người với các thành phần của tần số là khơng tuyến
tính. Sự khác nhau về tần số ở vùng tần số thấp (<1KHz) dễ được nhận biết
bởi con người hơn là ở vùng tần số cao. Lọc theo thang tần số Mel mô phỏng

2



tính chất này bằng cách dùng các bộ lọc được phân bố theo một hàm phi
tuyến trong khoảng không gian tần số, thông thường là hàm Mel:
Mel ( f ) = 2595log10 (1 +

f
)
700

Logarit giá trị năng lượng (logarit of filter energies). Các giá trị năng
lượng thu được tại mỗi kênh lọc được lấy logarit để “nén” các giá trị này vào
một miền giá trị hẹp hơn.
DCT (Discrete Cosin Transform). Giọng nói của con người có phổ khá
trơn (smooth) trên miền tần số, do vậy, các giá trị năng lượng của các bộ lọc
gần nhau có sự tương quan (correlated) khá gần. Bước xử lý này biến đổi các
giá trị năng lượng thành các hệ số ít tương quan với nhau hơn, các hệ số này
được gọi là hệ số cepstral.
N

πi

j =1

N

ci = ∑ m j cos(

( j − 0.5))

Trong đó, N là số kênh lọc, mj là giá trị logarit năng lượng của mạch lọc

thứ j, i là bậc của hệ số cepstral.
Chỉnh các giá trị cepstral. Giá trị cepstral bậc cao thường có giá trị rất
thấp, so với các giá trị cepstral bậc thấp. Sự khác biệt này gây khó khăn cho
việc mơ hình hố dữ liệu, ví dụ như khi sử dụng các hàm mật độ xác suất
Gauss. Do đó các hệ số cepstral được điều chỉnh lại (re-scaled) theo công
thức:
cn′ = exp(n * k )cn

Sau bước hiệu chỉnh này ta thu được các giá trị MFCC.
Tính giá trị delta MFCC. Các giá trị delta của các hệ số MFCC được
tính tốn nhằm phản ánh sự biến thiên tiếng nói theo thời gian. Các giá trị
delta được tính tốn dựa trên các giá trị MFCC của các khung tín hiệu lân
cận:

∑ θ (ct +θ − ct −θ )
d t = θ =1 Θ 2
2∑θ =1θ
Θ

Trong đó, θ là số khung tín hiệu lân cận được dùng (thơng thường là 2).
Ngoài ra, giá trị delta của delta (hay cịn gọi là acceleration) cũng có thể
được tính tốn từ các giá trị delta dùng cùng một công thức như trên.
3


1.1.2. Phương pháp tính hệ số PLP
Phương pháp PLP (Perceptual Linear Predition) được phát triển dựa trên
phương pháp mã dự báo tuyến tính LPC (Linear Prediction Coding).
Phương pháp LPC hay cịn gọi là mơ hình hố tự hồi quy (autoregression
modeling) là phương pháp mơ hình hố tín hiệu bằng sự kết hợp tuyến tính

các mẫu tín hiệu trước đó:
N

s( n ) = −∑ a(i )s(n − 1) + e(n )
i =1

Trong đó, N là số hệ số hay là bậc của dự báo, các a(i) là các hệ số dự
báo tuyến tính (linear prediction coefficients), e(n) là hàm lỗi.
Các hệ số a(i) được chọn để làm cực tiểu hàm lỗi dự báo trung bình bình
phương. Có một vài phương pháp để tính các hệ số này: phương pháp dùng
ma trận hiệp phương sai (covariance matrix), phương pháp tự tương quan
(auto-correlation method), phương pháp lưới hay còn gọi là phương pháp điều
hoà (lattice or harmonic). Phương pháp thường được áp dụng nhất trong nhận
dạng tiếng nói là phương pháp tự tương quan dùng thuật tốn đệ quy
Levinson-Durbin.
Thuật tốn Levinson-Durbin được trình bày như sau:
Tính p+1 các hệ số tự tương quan đầu tiên (p là bậc của dự báo tuyến
tính) bằng công thức sau:
N −i

ri = ∑ s j s j +i
j =1

Trong đó, s(n) là tín hiệu trong cửa sổ, N là số lượng mẫu trong cửa sổ.
Các hệ số sau đó được tính tốn đệ quy như sau:
E (0) = r0
i −1

ki =


[ri − ∑ a (ji −1) ri − j ]
j

E (i −1)

trong đó 1 ≤ i ≤ p
ai(i ) = ki

a j = a ij−1 − ki * aii−−1j , với 1 ≤ j ≤ i − 1

E ( i ) = (1 − ki2 )E (i −1)

4


Các bước trên được tính tốn lặp với i=1,2,...p. Cuối cùng, ta thu được
các hệ số:
a j = a (j p ) với 1 ≤ j ≤ p

Phương pháp tính các hệ số PLP dựa vào phương pháp LPC. Hình 2.2
miêu tả các bước xử lý tính tốn hệ số PLP:

Hình 1-2. Các bước xử lý của phương pháp tính toán hệ số PLP.

FFT. Tương tự như phương pháp MFCC, tín hiệu tiếng nói được chia
thành các khung tín hiệu và được biến đổi Fourier sang miền tần số bằng
thuật toán FFT.
Lọc theo thang tần số Bark. Tương tự như phương pháp tính MFCC, tín
hiệu tiếng nói được lọc qua các bộ lọc phân bố theo thang tần số phi tuyến,
trong trường hợp này là thang tần số Bark:

f
f 2
Bark ( f ) = 6 ln{
+ [(
) + 1]0.5 }
1200
1200

Nhấn mạnh tín hiệu dùng hàm equal-loudness. Bước xử lý này tương tự
như bước nhấn mạnh pre-emphasis của phương pháp MFCC. Hàm này mô
phỏng đường cong cân bằng độ ồn (equal-loudness curve).
E (ω ) =

(ω 2 + 56,8 *106 )ω 4
(ω 2 + 6,3*106 )(ω 2 + 0,38 *109 )(ω 6 + 9,58 *1026 )

5


Dùng luật cường độ nghe (power law of hearing). Bước xử lý này giống
như bước lấy giá trị logarit trong phương pháp MFCC. Hàm căn lập phương
được sử dụng để “nén” các giá trị năng lượng.
Φ( f ) = Ψ ( f )0,33

Biến đổi Fourier ngược (inverse DFT). Các hệ số tự tương quan được
biến đổi Fourier ngược để sau đó dùng làm giá trị đầu vào cho phương pháp
LPC.
Thuật tốn Durbin được sử dụng để tính tốn các hệ số dự báo tuyến
tính giống như trong phương pháp LPC.
Tính các giá trị delta. Phương pháp tính tương tự như phương pháp tính

hệ số MFCC.
1.1.3. Các kĩ thuật khử nhiễu
1.1.3.1 Kĩ thuật CMS
Đây là một kĩ thuật thông dụng để khử nhiễu trong các hệ thống nhận
dạng, được dùng kết hợp trong q trình tính tốn các đặc tính phổ của tiếng
nói. Phương pháp này dựa trên giả thiết là các đặc tính tần số của mơi trường
là thường xun cố định hoặc biến đổi chậm. Các tham số cepstral của một
phát âm được trừ đi giá trị trung bình của các tham số trong một khoảng thời
gian nào đó và làm cho các giá trị này ít bị ảnh hưởng bởi môi trường:
1 T
Oˆ (τ ) = O (τ ) − ∑ O (t )
T t =1

Trong đó, T là độ dài của vùng lấy giá trị trung bình, thường là độ dài
của cả phát âm.
1.1.3.2 Kĩ thuật RASTA
RASTA là kĩ thuật lọc dựa trên giả thiết rằng các tính chất thời gian của
các nhiễu là khác so với các tính chất thời gian của giọng nói. Tốc độ thay đổi
của các thành phần khơng phải tiếng nói thường xuyên nằm ngoài tốc độ hoạt
động của bộ máy phát âm con người. Bằng cách dùng bộ lọc số, kĩ thuật
RASTA có thể loại bỏ được một phần các nhiễu của môi trường và các nhiễu
bổ sung bất thường khác. Bộ lọc dùng trong RASTA là:
H ( z) =

0,2 + 0,1z −1 − 0,2 z −2 − 0,1z −3
1 − 0,94 z −1

6



Các kĩ thuật khử nhiễu thường yêu cầu một đoạn tiếng nói đủ lớn để phân
tích, thống kê. Vì vậy, khi áp dụng các kĩ thuật khử nhiễu vào nhận dạng tiếng
nói, cần lưu ý đến tốc độ xử lí và bảo tồn các đặc trưng âm học của phụ âm,
đặc biệt là các phụ âm vô thanh. Để đảm bảo thực hiện được trong thời gian
thực, hiện nay, người ta thường áp dụng mơ hình tham số thích nghi với nhiễu.
Cụ thể như sau: Khi huấn luyện tham số, người ta lấy một mẫu sạch, không bị
nhiễu, để huấn luyện, sau đó, người ta lấy các mẫu sạch này trộn với các loại
nhiễu sinh bởi các mơ hình tốn học khác nhau và tham số mơ hình sẽ được
biến đổi bởi mẫu nhiễu nhờ các cơng cụ mơ hình như mạng Nơron. Do đó,
trong giai đoạn nhận dạng, khi tín hiệu thực được đưa vào hệ thống, người ta sẽ
tính thẳng các đặc trưng và quyết định từ chính tín hiệu chứ khơng cần lọc.

1.2. Các đơn vị xử lý tiếng nói
1.2.1. Tần số lấy mẫu
Q trình lấy mẫu tạo ra tín hiệu rời rạc hoặc tín hiệu số từ tín hiệu tín
hiệu tương tự. Tần số lấy mẫu là số lần lấy mẫu được tính trong một đơn vị
thời gian, thông thường là giây. Tần số lấy mẫu ký hiệu là Fs.
Khoảng thời gian mà quá trình lấy mẫu được lặp lại gọi là chu kỳ lấy
mẫu.
Ví dụ: Fs = 11025Hz
1s thu được 11025 mẫu
1ms thu được 11025/1000 ≈ 11 mẫu.
Số bit lưu một mẫu có thể là 8 hoặc 16 bit.

(

)

+ 8 bit/ 1 mẫu: x(n ) ∈ 0, 28 − 1


Ngưỡng lặng tuyệt đối là 128
+ 16 bit/ 1 mẫu: x(n ) ∈ (2 −15 , 215−1 )
Ngưỡng lặng tuyệt đối là 0
1.2.2. Nhiễu
Nhiễu đối với hệ thống là loại âm thanh khơng phải tiếng nói sinh ra
trong môi trường xung quanh ta. Ngay cả bộ phát âm của con người cũng sinh
7


ra nhiễu, chẳng hạn như tiếng thở, tiếng bật lưỡi, tiếng chép miệng cả khi môi
chạm vào micro… Không dễ gì có thể lọc được mọi thứ nhiễu, ta chỉ tìm cách
tối thiểu hố chúng để có thể nâng cao chất lượng của hệ thống nhận dạng.
Với tín hiệu tiếng nói là s n , tín hiệu nhận được sau quá trình thu sẽ được
ký hiệu là ~sn . Như vậy:
~
sn − s n chính là tín hiệu nền.

Độ nhiễu của tín hiệu được xác định thơng qua năng lượng đo được của

⎛ N 2⎞

⎜⎜ ∑ s n ⎟⎟

tín hiệu: E = 10 log10 ⎜ ⎝ n = 0 ⎠
N
⎜ ⎛⎜ ∑ ~
sn − s n
⎜⎜
⎝ ⎝ n=0


(




⎟ (Đơn vị năng lượng tính bằng dB)
2⎞
⎟⎟ ⎟

⎠⎠

)

Như vậy, nếu năng lượng E càng lớn thì ~sn càng gần với s n , tín hiệu nền
có giá trị gần về 0. Nếu E → ∞ thì tín hiệu thu được là tín hiệu sạch, khơng
có nhiễu.
1.2.3. Tần số cơ bản
Một âm thanh có thể là tổ hợp của nhiều tần số, tần số chính bao trùm
trong âm được gọi là tần số cơ bản. Trong tiếng nói, tần số cơ bản là đáp ứng
của sự rung động các dây thanh âm, tần số cơ bản thường được ký hiệu là F0.
Tần số cơ bản có giá trị phụ thuộc vào tần số lấy mẫu và khoảng cách a,
là khoảng cách giữa hai đỉnh của các sóng âm tuần hồn.
Đơn vị của tần số là Hertz, ký hiệu là Hz. Mỗi Hz bằng 1 dao động/1s.
Và 1 KHz sẽ bằng 1000 Hz. (Xem biểu diễn đường F0 của một số thanh điệu
ở phần phụ lục).
1.2.4. Formant
Formant là dải tần số được tăng cường do hiện tượng cộng hưởng trong
ống dẫn thanh, đặc trưng cho âm sắc của mỗi nguyên âm. Trong mỗi dải tần
như thế có một tần số được tăng cường hơn cả gọi là đỉnh formant.
Một nguyên âm do một người phát ra có nhiều formant:

F1: ứng với cộng hưởng vùng yết hầu
F2: ứng với cộng hưởng khoang miệng
8


Khi ta nói, các âm mũi sẽ có sự xuất hiện của formant F3, các formant
khác F4, F5,…liên quan đến các đặc trưng giọng nói riêng của mỗi cá nhân.
Mỗi lần mơi, lưỡi, hàm ở những vị trí khác nhau là một lần hộp cộng hưởng
miệng và yết hầu thay đổi hình dáng, thể tích, lối thốt của khơng khí làm
biến đổi âm sắc của âm thanh đi qua chúng. Chính vì vậy, hai khoang miệng
và yết hầu là hai hộp cộng hưởng quan trọng nhất, chúng tạo nên hai formant
chính formant F1 và F2 đặc trưng của mỗi nguyên âm.

1.3. Định dạng âm thanh
Có nhiều chuẩn lưu trữ âm thanh số (AU, VOC, WAVE, AIFF, AIFF-C
và IFF/8VX), nhưng kết quả thực tế cho thấy rằng tập đoàn của Microsoft sử
dụng các file wave trong hệ thống điều hành windows, chúng đã trở thành
chuẩn sử dụng phổ biến nhất.
Âm thanh được xử lý ở dạng PCM, tập tin được lưu lại trên bộ nhớ dưới
dạng file WAVE.
Thông thường, các file WAVE PCM có cấu trúc như sau:
Các khối dữ liệu riêng biệt (còn gọi là các chunk), được thể hiện bằng
cấu trúc hình cây cơ bản.
Mỗi chunk bao gồm hai phần cơ bản là header và data.
Khối đầu tiên, cũng là phần chính của bất kỳ file RIFF nào là khối RIFF,
nó giống như gốc của một cây.

File bắt đầu với phần header RIFF, sau nó là hai khối con được định
nghĩa FMT và DATA. RIFF bao gồm ba phần tử: RIFF_ID, RIFF_SIZE và
RIFF_FORMAT.

struct RIFF
9


{
_TCHAR riffID[4];

// Chứa nhận dạng “RIFF”

DWORD riffSIZE;

// Kích thước file trừ 8 byte

_TCHAR riffFORMAT[4];

//Chứa nhận dạng “WAVE”

};
Sau header RIFF, có một khối miêu tả các định dạng (FMT)
struct FMT
{
_TCHAR fmtID [4];

//chứa nhận dạng FMT và các
khoảng trống.

DWORD fmtSIZE;

//chứa kích thước của khối (cho
WAVE PCM 16)


WAVEFORM fmtFORMAT; //cấu trúc của
WAVEFORMATEX
// nhưng khơng bao gồm file
cbSize.
};
Cấu trúc của WAVEFORMAT là chìa khố của sự hiểu biết về các
WAVE. Nó chứa nhiều thơng tin mà chúng ta cần khi làm việc với một
WAVE.
struct WAVEFORM
{
WORD wFormatTag;
WORD nchannels;
DWORD nSamplesPerSec;
DWORD nAvgBytesPerSec;
WORD nBlockAlign;
WORD wBitsPerSample;

// định dạng âm thanh số
//số kênh (1 cho mono và 2
cho stereo)
//Số mẫu trong một giây
//Trung bình số byte của dữ
liệu trong một giây
//Kích thước tối thiểu của dữ
liệu khi phát
// Số bit lưu một mẫu (8 hoặc 16)

};
Và cuối cùng là khối dữ liệu:

10


struct DATA
{
_TCHAR dataID[4];
DWORD dataSIZE;

//Chứa nhận dạng dữ liệu
//Kích thước dl

};
Định dạng dữ liệu và giá trị lớn nhất, nhỏ nhất của các mẫu waveform
PCM ở nhiều kích thước được cho như sau:
Kích thước mẫu

Định dạng dữ liệu

Giá trị lớn nhất

Từ 1 đến 8 bit

Số nguyên không dấu

255 (0xFF)

Lớn hơn hoặc
bằng 9 bit

Số nguyên có dấu i


Giá trị định vị lớn
nhất của i

Giá trị nhỏ nhất
0
i có giá trị âm

Giá trị lớn nhất, giá trị nhỏ nhất và giá trị điểm giữa của 8 bit và 16 bit
dữ liệu waveform PCM như sau:

1.4. Thu tín hiệu âm thanh trong thời gian thực
Tín hiệu tiếng nói trước khi trở thành dữ liệu tiếng nói phải trải qua một
q trình xử lý, q trình này được gọi là tiền xử lý tín hiệu.
Hệ thống máy tính hiện tại chỉ hỗ trợ cho ta thu tĩnh. Mỗi lần chỉ thu
được trong một khoảng thời gian khá nhỏ (vì dãy tín hiệu số phát sinh q lớn
sẽ nhanh chóng lấp đầy phần khơng gian lưu trữ). Nếu người sử dụng nói vào
thời điểm hàm thu kết thúc thì dữ liệu sẽ bị mất mát, do đặc trưng của tín hiệu
tiếng nói các hệ thống thiết kế tốt cũng có thể khơng phát hiện được, vẫn thực
hiện và cho ra kết quả khi dữ liệu đầu vào đã sai.
Cách giải quyết chủ yếu dựa vào một số thủ thuật lập trình, cơ chế hoạt
động của hệ điều hành và cơ chế của hàm thu tín hiệu âm thanh. Tư tưởng
chính là làm một hàng đợi vịng, xử lý kịp thời để không bao giờ bị hết không
gian lưu trữ, kết hợp với việc sử dụng cơ chế đa luồng của hệ điều hành để

11


vẫn có thể thực hiện được đồng thời các ứng dụng khác. Cách thực hiện cụ
thể như sau:

Xin cấp phát M vùng đệm (buffer), mỗi vùng đệm có kích thước 3N và
đưa vào hàng đợi (N là kích thước của một frame). Tạo một luồng (thread)
làm những việc chính sau:
1. Kiểm tra cờ điều khiển (semaphore), nếu cờ tắt thì dừng (return).
2. Gọi hàm thu và chờ thu hết vùng đệm (hiện hành) (Khi này vùng đệm
bị loại ra khỏi hàng đợi).
3. Tính năng lượng của ba frame trên vùng đệm, nếu năng lượng frame
đầu lớn hơn ngưỡng dữ liệu thì quay lại bước một (trạng thái đang có
âm thanh khi gọi hàm thu – không thu được trọn vẹn dữ liệu).
4. Đưa vùng đệm vào hàng đợi.
5. Tăng chỉ số vùng đệm hiện hành lên một.
6. Chờ thu hết vùng đệm.
7. Với mỗi frame của vùng đệm tính tổng năng lượng của nó và hai frame
kế trước (có thể là của vùng đệm trước- để đảm bảo tính liên tục).
8. Nếu tổng năng lượng vừa tính lớn hơn ngưỡng im lặng thì chép frame
vào vùng đệm chính, cập nhật lại kích thước vùng đệm chính và bật
cờ có dữ liệu.Ngược lại, nếu cờ có dữ liệu bật: cập nhật lại kích thước
đoạn im lặng.
9. Nếu kích thước đoạn im lặng nhỏ hơn thời gian ngừng tối đa giữa hai
tiếng: Quay lại bước 5.
Ta có thể chọn kích thước frame là 220 ms, thời gian ngừng tối đa giữa
hai tiếng là 750 ms.

1.5. Xác định giá trị hằng – ngưỡng theo mơi trường tín hiệu
1.5.1. Thơng số ngưỡng zero
Bản chất âm thanh là sự dao động, khi số hoá các mẫu dữ liệu âm thanh
về miền giá trị 0…N-1 thì mẫu âm thanh im lặng (khơng có âm thanh) sẽ có
giá trị là N/2, giá trị này gọi là ngưỡng zero. Ví dụ nếu kích thước mỗi mẫu
12




×