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

luận văn thạc sĩ nhận dạng tiếng nói tiếng việt tìm hiểu và ứng dụng

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 (1.56 MB, 103 trang )

K
H
TN

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ TRI THỨC

NGUYỄN HỒNG QUANG - 0012081

H

NHẬN DẠNG TIẾNG NÓI TIẾNG VIỆT

C
N
TT



Đ

TÌM HIỂU VÀ ỨNG DỤNG

LUẬN VĂN CỬ NHÂN TIN HỌC

K
H
O
A


GIÁO VIÊN HƯỚNG DẪN
Th.s BÙI TIẾN LÊN

NIÊN KHÓA 2000 – 2004

Viết thuê luận văn thạc sĩ
- 0972.162.399


Lời cảm ơn
Hoàn thành luận văn này có sự đóng góp rất lớn của thầy

K
H
TN

Bùi Tiến Lên, thầy đã hướng dẫn tạo điều kiện cho em trong quá

trình thực hiện nghiên cứu nhận dạng tiếng nói, em xin chân thành
cảm ơn thầy.

Em xin gởi lời cảm ơn đến các thầy cô trong trường, đặc
biệt là các thầy cô bộ môn Công Nghệ Tri Thức đă tạo ra một môi

trường thật hoàn hảo cho chúng em học tập và nghiên cứu khoa

H

học.


Đ

Em cũng không thể không nhắc đến sự động viên chăm sóc



của gia đình, sự cộng tác giúp đỡ và ủng hộ tinh thần của bạn bè.

C
N
TT

Em xin được tri ơn tất cả.

TP. Hồ Chí Minh, tháng 7 năm 2004.

K
H
O
A

Nguyễn Hồng Quang

1

Viết thuê luận văn thạc sĩ
- 0972.162.399


MỤC LỤC


K
H
O
A

C
N
TT



Đ

H

K
H
TN

DANH SÁCH HÌNH VẼ...........................................................................................4
M Ở Đ Ầ U .................................................................................................................6
Chương 1 TỔNG QUAN .........................................................................................8
1.1
Nhận dạng.....................................................................................................8
1.2
Nhận dạng tiếng nói .....................................................................................9
1.2.1
Xử lý âm thanh......................................................................................9
1.2.2

Phân loại nhận dạng tiếng nói.............................................................10
1.2.2.1 Nhận dạng từ liên tục và nhận dạng từ cách biệt ............................10
1.2.2.2 Nhận dạng phụ thuộc người nói và độc lập người nói....................11
1.2.3
Hệ thống nhận dạng tiếng nói tự động................................................13
1.2.4
Lý thuyết nhận dạng tiếng nói ............................................................14
1.2.4.1 Rút trích vector đặc trưng................................................................15
1.2.4.2 Phân lớp...........................................................................................17
Chương 2 XỬ LÝ TIẾNG NÓI RÚT TRÍCH VECTOR ĐẶC TRƯNG .........21
2.1
Xử lý tiếng nói............................................................................................21
2.1.1
Lấy mẫu tín hiệu .................................................................................21
2.1.2
Bộ lọc tín hiệu.....................................................................................22
2.1.3
Dò tìm điểm cuối (end-point detection)..............................................24
2.2
Rút trích đặc trưng......................................................................................26
2.2.1
Các bước rút trích đặc trưng ...............................................................27
2.2.1.1 Làm rõ tín hiệu ................................................................................27
2.2.1.2 Phân đoạn thành các khung.............................................................27
2.2.1.3 Lấy cửa sổ .......................................................................................28
2.2.2
Các dạng đặc trưng tiếng nói ..............................................................33
2.2.2.1 Biến đổi tín hiệu sang miền tần số ..................................................33
2.2.2.2 Đặc trưng năng lượng......................................................................35
2.2.2.3 Đặc trưng MFCC.............................................................................36

2.2.2.4 Đặc trưng LPC ................................................................................39
2.2.2.5 Đặc trưng tần số cơ bản..................................................................42
Chương 3 MÔ HÌNH MARKOV ẨN ..................................................................49
3.1
Mô hình Markov ẩn....................................................................................49
3.2
Ứng dụng Mô hình Markov vào nhận dạng tiếng nói ................................51
3.2.1
Thuật toán tiến ....................................................................................52
3.2.2
Thuật toán lùi ......................................................................................53
3.2.3
Phương pháp tìm chuỗi trạng thái tối ưu ............................................54
3.2.4
Thuật toán Viterbi ...............................................................................55
3.2.5
Ước lượng Baum-Welch.....................................................................58
3.3
Cấu trúc ngôn ngữ và mô hình nhận dạng theo âm vị................................60
3.3.1
Cấu trúc ngôn ngữ...............................................................................60
3.3.2
Mô hình âm vị .....................................................................................63
3.3.3
Tha âm vị (allophones) .......................................................................63

2

Viết thuê luận văn thạc sĩ
- 0972.162.399



K
H
O
A

C
N
TT



Đ

H

K
H
TN

3.3.4
Nhận xét ..............................................................................................65
Chương 4 HMM TOOLKIT .................................................................................67
4.1
Cấu trúc tập tin trong HTK ........................................................................69
4.1.1
Cấu trúc tập tin vector đặc trưng HTK ...............................................69
4.1.2
Cấu trúc tập tin mô hình HMM ..........................................................71

4.1.3
Cấu trúc tập tin đánh nhãn dữ liệu ......................................................75
4.1.4
Cấu trúc tập tin văn phạm ...................................................................78
4.2
Nhận dạng nguyên từ .................................................................................81
4.3
Nhận dạng theo mô hình âm vị ..................................................................85
Chương 5 ỨNG DỤNG: ĐIỀU KHIỂN XE TỰ ĐỘNG BẰNG TIẾNG NÓI .88
5.1
Thử nghiệm nhận dạng tiếng nói Tiếng Việt .............................................89
5.1.1
Nhận dạng tĩnh (offline)......................................................................89
5.1.1.1 Dùng vector đặc trưng dạng LPCEPSTRA_E_D ...........................89
5.1.1.2 Dùng vector đặc trưng dạng LPCEPSTRA_E_D_A ......................89
5.1.1.3 Dùng vector đặc trưng dạng MFCC_0_D .......................................89
5.1.1.4 Dùng vector đặc trưng dạng MFCC_0_D_A ..................................90
5.1.1.5 Dùng vector đặc trưng dạng MFCC_0_D_A_Z..............................90
5.1.2
Nhận dạng thời gian thực (online) ......................................................91
5.1.2.1 Nhận dạng theo mô hình âm vị dùng MFCC_0_D_A_Z................91
5.1.2.2 Nhận dạng nguyên từ dùng MFCC_0_D_A_Z...............................92
5.2
Ứng dụng nhận dạng tiếng nói ...................................................................93
KẾT LUẬN ..............................................................................................................96
TÀI LIỆU THAM KHẢO ......................................................................................98
Phụ lục
MỘT SỐ CÔNG CỤ TRONG HTK ..................................................99

3


Viết thuê luận văn thạc sĩ
- 0972.162.399


DANH SÁCH HÌNH VẼ

K
H
O
A

C
N
TT



Đ

H

K
H
TN

Hình 1.1: Sơ đồ nhận dạng tổng quát .........................................................................8
Hình 1.2: Các lĩnh vực trong xử lý tiếng nói ............................................................10
Hình 1.3: Ranh giới giữa “cô” và “ấy” không rõ ràng ...........................................11
Hình 1.4: Người nói khác nhau sẽ phát âm khác nhau.............................................12

Hình 1.5: Mô hình nhận dạng bán độc lập người nói ..............................................13
Hình 1.6: Các thành phần cơ bản của hệ thống ASR ...............................................14
Hình 1.7: Các dạng cửa sổ thường dùng ..................................................................16
Hình 1.8: Tổng quát quá trình rút trích vector đặc trưng ........................................17
Hình 1.9: Các kỹ thuật nhận dạng tiếng nói và xu hướng phát triển .......................18
Hình 1.10: HMM với 3 trạng thái và trọng số chuyển trạng thái.............................20
Hình 2.1: Ví dụ về lấy mẫu tín hiệu f(t) trên miền thời gian....................................22
Hình 2.2: Minh họa hoạt động bộ lọc FIR................................................................23
Hình 2.3: Minh họa hoạt động bộ lọc IIR.................................................................23
Hình 2.4: Dò tìm điểm cuối dựa vào mức năng lượng .............................................25
Hình 2.5: Sơ đồ rút trích vector đặc trưng tổng quát ...............................................26
Hình 2.6: Sơ đồ rút trích đặc trưng chi tiết ..............................................................27
Hình 2.7: Phân đoạn tiếng nói thành các khung chồng lấp .....................................28
Hình 2.8: Sự khác biệt giữa các dạng cửa sổ tín hiệu ..............................................32
Hình 2.9: Đồ thị biểu diễn mối quan hệ giữa Mel và Hz..........................................36
Hình 2.10: Các bước trích đặc trưng MFCC ...........................................................37
Hình 2.11: Bộ lọc trên thang Mel .............................................................................37
Hình 2.12: Bộ lọc trên tần số thật.............................................................................38
Hình 2.13: Minh họa các bước biến đổi MFCC .......................................................38
Hình 2.14: Sơ đồ xử lý LPC dùng cho trích đặc trưng tiếng nói.............................40
Hình 2.15: Hình dạng tín hiệu tiếng nói ...................................................................47
Hình 2.16: Kết quả trích F0......................................................................................48
Hình 2.17: Kết quả sau khi lọc Median ....................................................................48
Hình 3.1: Minh họa hoạt động của mô hình Markov ẩn...........................................49
Hình 3.2: Mô hình Left - Right..................................................................................51
Hình 3.3: Mô hình Bakis ...........................................................................................51
Hình 3.4: Mô hình Tuyến tính ...................................................................................51
Hình 3.5:Minh họa thuật toán tiến............................................................................53
Hình 3.6:Minh họa thuật toán lùi .............................................................................53
Hình 3.7: Ví dụ minh họa thuật toán Viterbi ............................................................56

Hình 3.8:Ví dụ minh họa thuật toán Viterbi (tt) .......................................................57
Hình 3.9: Ví dụ minh họa so khớp dùng thuật toán tiến-lùi .....................................58
Hình 3.10: Minh họa ước lượng Baum - Welch........................................................59
Hình 3.11: Minh họa việc nhận dạng âm vị trong HMM .........................................60
Hình 4.1: Mô hình đơn giản trong nhận dạng tiếng nói...........................................67
Hình 4.2: Các module và chức năng trong HTK ......................................................68

4

Viết thuê luận văn thạc sĩ
- 0972.162.399


K
H
O
A

C
N
TT



Đ

H

K
H

TN

Hình 4.3: Các công cụ và chức năng trong HTK .....................................................69
Hình 4.4: Phân bố các tham số trong 1 số vector đặc trưng của HTK ....................71
Hình 4.5: Các dạng đặc trưng có thể chuyển đổi qua lại bằng HCopy ...................71
Hình 4.6: Dạng cơ bản của 1 tập tin HMM (chưa được khởi tạo)...........................72
Hình 4.7: Dạng cơ bản của 1 tập tin HMM có sử dụng pha trộn Gaussian ............74
Hình 4.8: Dạng cơ bản của 1 tập tin HMM có sử dụng đa luồng ............................75
Hình 4.9: Vai trò của văn phạm trong nhận dạng dùng HTK ..................................78
Hình 4.10: Lược đồ văn phạm ..................................................................................79
Hình 4.11: Mô hình minh họa các văn phạm............................................................80
Hình 4.12: Minh họa việc nhận dạng nguyên từ.......................................................81
Hình 4.13: Huấn luyện nguyên từ và các công cụ hỗ trợ .........................................82
Hình 4.14: Quy trình hoạt động của HInit................................................................83
Hình 4.15: Quy trình hoạt động của HCompV .........................................................83
Hình 4.16: Quy trình hoạt động của HRest ..............................................................84
Hình 4.17: Huấn luyện theo mô hình âm vị dùng HTK ............................................85
Hình 4.18: Quá trình xử lý các tập tin trong HERest ...............................................87
Hình 5.1: Mô hình ngôn ngữ dành cho hệ nhận dạng ..............................................88

5

Viết thuê luận văn thạc sĩ
- 0972.162.399


MỞ Đ Ầ U

K
H

TN

Tiếng nói là phương tiện giao tiếp cơ bản nhất của loài người, nó hình thành
và phát triển song song với quá trình tiến hóa của loài người. Đối với con người, sử
dụng lời nói là một cách diễn đạt đơn giản và hiệu quả nhất. Ưu điểm của việc giao
tiếp bằng tiếng nói trước tiên là ở tốc độ giao tiếp, tiếng nói từ người nói được
người nghe hiểu ngay lập tức sau khi được phát ra. Bên cạnh đó, tiếng nói là cách
giao tiếp được sử dụng rộng rãi nhất – bất cứ ai (dĩ nhiên là trừ những người khuyết
tật) cũng có thể nói được.
Ngày nay, nhờ sự phát triển của khoa học kỹ thuật, máy móc dần dần thay

H

thế các lao động tay chân. Tuy nhiên để điều khiển máy móc, con người phải làm

Đ

khá nhiều thao tác tốn nhiều thời gian và cần phải được đào tạo. Điều này gây trở
ngại không ít đối với việc sử dụng các máy móc, thành tựu khoa học kỹ thuật.



Trong khi đó, nếu điều khiển máy móc thiết bị bằng tiếng nói sẽ dễ dàng hơn. Nhu

C
N
TT

cầu điều khiển máy móc thiết bị bằng tiếng nói càng bức thiết hơn đối với các thiết
bị cầm tay, như: điện thoại di động, máy Palm/Pocket PC,…


K
H
O
A

Để cho máy tính có thể nghe được nhiều người đã vật lộn với tín hiệu âm
thanh trong hơn nửa thế kỷ qua trong lĩnh vực nhận dạng tiếng nói. Quá trình này
được đánh dấu bằng các kết quả nghiên cứu đặc sắc trong lĩnh vực phân tích và xử
lý tiếng nói, các ứng dụng thực tế khá hữu ích. Nhưng dù sao, khả năng của máy
vẫn vẫn còn trong khoảng giới hạn, còn cần phát triển hơn nữa để có thể thật sự đáp
ứng nhu cầu thực sự của cuộc sống. Mặt khác, nhận dạng tiếng nói chỉ đang được
phát triển trên các thứ tiếng khác, nhưng chưa được phát triển và ứng dụng mạnh ở
nước ta. Do tình hình phát triển ở Việt Nam, để cho công cuộc nhận dạng tiếng nói
thật sự được quan tâm, đầu tư và tạo thành các nhóm các phòng thí nghiệm chuyên
nghiên cứu về nhận dạng tiếng nói thì thật sự gặp khó khăn.
Luận văn này xây dựng với mong muốn góp phần thúc đẩy quá trình trên,
bằng cách kế thừa các đàn anh đàn chị đi trước, và thông qua việc tìm hiểu các
thành tựu nước ngoài em mong rằng mình sẽ góp phần tạo nên những bước phát
triển trong lĩnh vực nhận dạng tiếng nói ở nước ta. Qua quá trình nghiên cứu, em

6

Viết thuê luận văn thạc sĩ
- 0972.162.399


K
H
TN


nhận thấy rằng nếu như chúng ta có sự phổ biến kiến thức rộng rãi, không chỉ cho
những người chuyên về lĩnh vực công nghệ thông tin, mà còn cho những người
không chuyên thì chúng ta hoàn toàn có thể thúc đẩy, phát triển và gặt hái nhiều
thành công hơn. Vì lúc đó vấn đề không chỉ được nghiên cứu, phát triển bởi một số
người mà là của nhiều người. Những lĩnh vực nghiên cứu khác cưng có thể làm
tương tự.

K
H
O
A

C
N
TT



Đ

H

Vì lý do trên mà em không chỉ tìm tòi nghiên cứu lý thuyết, mà còn cố gắng
phát triển thành ứng dụng.

7

Viết thuê luận văn thạc sĩ
- 0972.162.399



Chương 1
1.1

TỔNG QUAN

Nhận dạng
Nhận dạng của loài người là một quá trình hoàn hảo, đó là sự quan sát đối

K
H
TN

tượng cần nhận dạng, ghi nhận lại những đặc trưng của đối tượng, phân lớp đối
tượng và có sử dụng khả năng phán đoán suy luận để phân biệt đối tượng đó với đối
tượng khác (trong một tập gần như vô hạn đối tượng).

Trong khi đó, nhận dạng tự động – nhận dạng bằng công cụ máy vi tính chỉ

đơn giản là quá trình phân biệt tín hiệu này với tín hiệu khác (trong một tập hữu hạn
các tín hiệu), quá trình này được thực hiện bằng cách thực hiện các bước tổng quát

Đ

H

sau (như trong hình 1.1).
Tín hiệu




Tiền xử lý và rút trích
vector đặc trưng

C
N
TT

Tín hiệu cần
nhận dạng

Tín hiệu dùng
để học

Học mẫu, phân lớp

Nhận dạng, so
khớp mẫu

Kết quả

Tập hợp từ điển
các lớp tín hiệu

K
H
O
A


Ngưỡng và luật
quyết định

Hình 1.1: Sơ đồ nhận dạng tổng quát

• Thu nhận tín hiệu và trích đặc trưng: thu nhận tín hiệu cần nhận dạng,
khử nhiễu lọc tín hiệu (tiền xử lý) và rút ra các đặc trưng của tín hiệu

(vector đặc trưng).

• Học mẫu: kết nhóm, phân lớp các nhóm vector đặc trưng của từng
nhóm tín hiệu (bằng các thuật giải Heristic, bằng cách sử dụng mạng
Neural, bằng các siêu phẳng dùng thuật toán K-means, Batchelor-

8

Viết thuê luận văn thạc sĩ
- 0972.162.399


Wilkins, ……). Quá trình này tạo ra các lớp tín hiệu, mỗi lớp này đặc
trưng cho từng nhóm tín hiệu.
• Nhận dạng, so khớp mẫu: tìm mối liên hệ giữa tín hiệu cần nhận dạng
và các lớp tín hiệu được tạo ra ở bước trước (bằng cách thông qua quy

K
H
TN

tắc người láng giềng gần nhất chẳng hạn). Nếu như tín hiệu đó so

khớp nhất (và mức độ so khớp thỏa một ngưỡng nào đó) ứng với một

lớp tín hiệu nào đó thì hệ thống nhận dạng xác định tín hiệu đó thì tín
hiệu đó thuộc vào nhóm tín hiệu đó với một tỉ lệ nhất định gọi là độ

chính xác của hệ thống nhận dạng (tỉ lệ này dĩ nhiên là càng cao càng
tốt).

Nhận dạng tiếng nói

H

1.2

Đ

1.2.1 Xử lý âm thanh

Khi âm thanh được máy vi tính hỗ trợ thì nhu cầu xử lý âm thanh đã



xuất hiện. Các nhu cầu này đã tạo ra nhiều lĩnh vực ứng dụng trong thực tế.

C
N
TT

Chẳng hạn như: Tổng hợp âm thanh (Synthesis), nén âm thanh (Compression),
nhận dạng người nói (speaker recognition), nhận dạng tiếng nói (speech

recognition)… Các lĩnh vực ứng dụng khác nhau của xử lý tiếng nói được thể
hiện qua hình 1.2.

Xử lý âm thanh đóng một vai trò quan trọng trong quá trình nhận dạng

K
H
O
A

tiếng nói, nó cần trong việc lọc nhiễu tín hiệu, biến đổi tín hiệu, rút trích vector
đặc trưng,…

9

Viết thuê luận văn thạc sĩ
- 0972.162.399


K
H
TN
H

Đ

Hình 1.2: Các lĩnh vực trong xử lý tiếng nói

Nhận dạng từ liên tục và nhận dạng từ cách biệt


C
N
TT

1.2.2.1



1.2.2 Phân loại nhận dạng tiếng nói

Một hệ nhận dạng tiếng nói có thể là một trong hai dạng: nhận

dạng liên tục và nhận dạng từng từ.
Nhận dạng liên tục tức là nhận dạng tiếng nói được phát liên tục

trong một chuỗi tín hiệu, chẳng hạn như một câu nói, một mệnh lệnh

K
H
O
A

hoặc một đoạn văn được đọc bởi người dùng. Các hệ thống loại này rất
phức tạp, nó phức tạp ở chỗ các từ được phát liên tục khó xử lý kịp (nếu

cần thời gian thực), hoặc khó tách ra nếu như người nói liên tục không có
khoảng nghỉ (thông thường rất hay xảy ra trong thực tế). Kết quả tách từ

ảnh hưởng rất lớn đến các bước sau, cần xử lý thật tốt trong quá trình
này.


Trái lại, đối với mô hình nhận dạng từng từ, mỗi từ cần nhận dạng

được phát âm một cách rời rạc, có các khoảng nghỉ trước và sau khi phát
âm một từ. Mô hình loại này dĩ nhiên đơn giản hơn mô hình nhận dạng

10

Viết thuê luận văn thạc sĩ
- 0972.162.399


liên tục, đồng thời cũng có những ứng dụng thực tiễn như trong các hệ
thống điều khiển bằng lời nói, quay số bằng giọng nói…, với độ chính

Đ

H

K
H
TN

xác khá cao, tuy nhiên khó áp dụng rộng rãi đối với mô hình trên.



Hình 1.3: Ranh giới giữa “cô” và “ấy” không rõ ràng

Nhận dạng phụ thuộc người nói và độc lập người nói


C
N
TT

1.2.2.2

Đối với nhận dạng phụ thuộc người nói thì mỗi một hệ nhận dạng

chỉ phục vụ được cho một người, và nó sẽ không hiểu người khác nói gì
nếu như chưa được huấn luyện lại từ đầu. Do đó, hệ thống nhận dạng
người nói khó được chấp nhận rộng rãi vì không phải ai cũng đủ khả

K
H
O
A

năng kiến thức và nhất là kiên nhẫn để huấn luyện hệ thống. Đặc biệt là

hệ thống loại này không thể ứng dụng ở nơi công cộng.
Ngược lại, hệ thống nhận dạng độc lập người nói thì lý tưởng hơn,

ứng dụng rộng rãi hơn, đáp ứng được hầu hết các yêu cầu đề ra. Nhưng

không may là hệ thống lý tưởng như vậy gặp một số vấn đề, nhất là độ

chính xác của hệ thống.
Trong thực tế, mỗi người có một giọng nói khác nhau, thậm chí


ngay cùng một người cũng có giọng nói khác nhau ở những thời điểm

11

Viết thuê luận văn thạc sĩ
- 0972.162.399


khác nhau. Điều này ảnh hưởng rất lớn đến việc nhận dạng, nó làm giảm
độ chính xác của hệ thống nhận dạng xuống nhiều lần. Do đó để khắc
phục khuyết điểm này, hệ thống nhận dạng độc lập người nói cần được
thiết kế phức tạp hơn, đòi hỏi lượng dữ liệu huấn luyện lớn hơn nhiều lần

K
H
TN

(dữ liệu được thhu từ nhiều giọng khác nhau của nhiều người). Nhưng
điều này cũng không cải thiện được bao nhiêu chất lượng nhận dạng. Do

đó, trong thực tế có một cách giải quyết là bán độc lập người nói.
Phương pháp này thực hiện bằng cách thu mẫu một số lượng lớn các

giọng nói khác biệt nhau. Khi sử dụng, hệ thống sẽ được điều chỉnh cho

phù hợp với giọng của người dùng, bằng cách nó học thêm một vài câu

H

có chứa các từ cần thiết (người dùng trước khi sử dụng hệ thống cần phải

qua một quá trình ngắn huấn luyện hệ thống). Điều này đã được

Đ

Microsoft đưa vào bộ phần mềm Office của mình.



Nhận dạng độc lập người nói khó hơn rất nhiều so với nhận dạng
phụ thuộc người nói. Cùng một từ, một người, dù có cố gắng phát âm

C
N
TT

cho thật giống đi nữa thì cũng có sự khác biệt. Đối với bộ não con người,
một hệ thống hoàn hảo, thì sự khác biệt đó có thể được bỏ qua do ngữ
cảnh, và do có phần xử lý làm mờ đi của não. Nhưng đối với máy tính thì
rất khó xây dựng được một mô hình giải quyết cho tất cả các trường hợp

K
H
O
A

khác biệt đó.

Hình 1.4: Người nói khác nhau sẽ phát âm khác nhau

12


Viết thuê luận văn thạc sĩ
- 0972.162.399


K
H
TN
H
Đ



Hình 1.5: Mô hình nhận dạng bán độc lập người nói

C
N
TT

1.2.3 Hệ thống nhận dạng tiếng nói tự động
Nhận dạng tiếng nói tự động (Automatic Speech Recognition - ASR):

có nghĩa là chuyển đổi tự động tiếng nói thành chữ viết hoặc thành một trong
các chức năng của thiết bị.

Một hệ thống nhận dạng tiếng nói tự động gồm có các thành phần sau:

K
H
O

A

• Rút trích đặc trưng tiếng nói: biến đổi tín hiệu âm thanh thành
chuỗi các vector đặc trưng. Ngoài ra, quá trình này còn giải quyết
vấn đề dò tìm điểm cuối (phân biệt trong chuỗi âm thu được đâu là
tiếng nói đâu là độ ồn nền) và lọc nhiễu.

• Quá trình phân lớp và nhận dạng: Thực chất đây là quá trình
nhận dạng dựa trên mô hình âm thanh, từ điển phát âm và mô hình
ngôn ngữ của hệ thống. Mô hình ngôn ngữ ở đây thực chất chỉ biểu
diển một ngữ pháp nào đó, nó có thể ứng với một ngôn ngữ cụ thể
hoặc đơn giản chỉ gói gọn trong phạm vi ứng dụng của hệ thống,

13

Viết thuê luận văn thạc sĩ
- 0972.162.399


điều này góp phần giảm thiểu phạm vi nhận dạng của tiếng đó trong
một vài từ chứ không phải toàn bộ từ vựng.
• Giải mã: Quá trình này quá trình này có thể chỉ đơn giản là xuất ra
chuỗi văn bản nhận dạng được hoặc là một quá trình phân tích

H

K
H
TN


chuỗi nhận được ứng với tác vụ gì và thực hiện tác vụ đó.

Đ

Hình 1.6: Các thành phần cơ bản của hệ thống ASR



Ứng dụng:

• Điều khiển bằng tiếng nói (khoảng 30 từ): Nhận dạng tên người,

C
N
TT

chữ số của hệ thống quay số bằng giọng nói trên điện thoại di động,

điều khiển thiết bị điện tử,…

• Trong điện tử viễn thông (khoảng 2000 từ): Tự động điền mẫu đơn
trong hệ thống xử lý thông tin, tổng đài điện thoại, …

• Từ điển (khoảng 64k từ): Chuyển đổi thư thoại (bộ từ vựng lớn),

K
H
O
A


thư ký điện tử,…

1.2.4 Lý thuyết nhận dạng tiếng nói
Nhận dạng tiếng nói là kỹ thuật nhận ra các thành phần lời nói của con

người. Tiến trình này có thể được thực hiện từ việc thu vào tín hiệu tiếng nói

từ micro, và kết thúc bằng từ đã được nhận dạng được hệ thống xuất ra. Những
bước của quá trình trên sẽ được đề cập ở phần sau.
Việc nghiên cứu nhận dạng tiếng nói đã được bắt đầu từ cuối thập niên

40, trong đó sự phát triển nhanh chóng của công nghệ máy tính đã đóng góp

14

Viết thuê luận văn thạc sĩ
- 0972.162.399


một rất quan trọng. Ngày nay, nhờ sự phát triển tăng vọt trong công nghệ,
nhận dạng tiếng nói đã có mặt trong công nghiệp ở một số lĩnh vực. Trong
công nghiệp, khi tay và mắt của con người đã được tận dụng triệt để, thì việc
điều khiển bằng tiếng nói có một thuận lợi rất lớn. Những trình ứng dụng khác

K
H
TN

thì áp dụng nhận dạng tiếng nói vào hệ thống nhận đặt phòng tự động qua điện
thoại, bằng cách này khách hàng cảm thấy thuận lợi hơn so với việc nhấn các

nút của điện thoại. Hơn nữa, nhận dạng tiếng nói còn được ứng dụng nhiều
dạng khác nhau như hệ thống chính tả, các đồ chơi trẻ em, trò chơi game,…

Một cách lý tưởng, một trình nhận dạng sẽ có thể nhận dạng được các
từ khác nhau của bất kỳ người nào trong bất kỳ môi trường nào. Nhưng trong

H

thực tế, khả năng của hệ thống phụ thuộc vào nhiều yếu tố khác nhau. Bộ từ

vựng, đa người dùng, nhận dạng liên tục (phức tạp hơn nhiều so với nhận dạng

Đ

từng từ) là các yếu tố gây khó khăn, phức tạp cho việc nhận dạng tiếng nói.

1.2.4.1



Tương tự như vậy đối với độ ồn nền.

Rút trích vector đặc trưng

C
N
TT

Ngày nay, việc xử lý tín hiệu tiếng nói được thực hiện trên miền


số. Tín hiệu số được thu bằng cách lấy mẫu theo một tần số nhất định, đó
là việc đo tín hiệu theo một chu kỳ thời gian. Theo lý thuyết, bất cứ một
tín hiệu có băng tần giới hạn nào cũng có thể tái tạo lại một cách hoàn
chỉnh nếu như tần số lấy mẫu FS ít nhất là gấp đôi tần số tối đa của tín

K
H
O
A

hiệu (theo Alan và Willsky, 1997). Chất lượng của tín hiệu được lấy mẫu
còn phụ thuộc vào biên độ lấy mẫu – phụ thuộc vào số bit được dùng.
Đối với những ứng dụng ASR, biểu diễn tín hiệu ở miền tần số thì

tối ưu hơn – một biểu diễn gọn hơn hữu dụng hơn là cần thiết. Rút trích

vector đặc trưng là việc xử lý biến đổi tín hiệu âm thanh thành một chuỗi
những vector đặc trưng. Có một vài dạng đặc trưng của tín hiệu âm thanh

có thể được sử dụng làm vector đặc trưng, chẳng hạn như là MFCC (Mel
Frequency

Cepstral

Coeficient),

LPC

(Linear


Coefficient),…

15

Viết thuê luận văn thạc sĩ
- 0972.162.399

Prediction

Filter


Để tham số hóa dạng sóng của tín hiệu, tín hiệu được chia thành
chuỗi các khung gối lên nhau theo thời gian, mỗi khung thường dài
khoảng 25ms, khoảng thời gian thích hợp để cho việc xử lý tĩnh hơn
(hình 1.8).

K
H
TN

Để khử nhiễu và làm rõ tín hiệu, các khung trước khi được xử lý
được nhân với hàm cửa sổ, thường dùng là cửa sổ Hamming hay

Hanning. Sau khi áp hàm cửa sổ cạnh của khung sẽ trở nên mịn hơn, mặt

khác nó còn giúp cho thành phần có tần số cao của tín hiệu xuất hiện

C
N

TT



Đ

H

trong phổ.

K
H
O
A

Hình 1.7: Các dạng cửa sổ thường dùng

16

Viết thuê luận văn thạc sĩ
- 0972.162.399


K
H
TN
H
Đ

C

N
TT

Hình 1.8: Tổng quát quá trình rút trích vector đặc trưng

1.2.4.2

Phân lớp

Sau việc biến đổi tiếng nói thành vector đặc trưng là việc nhận ra

cái gì thực sự được nói ra. Có một vài cách tiếp cận vấn đề này, như là:
hướng cơ sở tri thức, hướng so khớp mẫu,… những phương pháp này có

K
H
O
A

thể được kết hợp với nhau.

17

Viết thuê luận văn thạc sĩ
- 0972.162.399


K
H
TN

H
Đ

Hình 1.9: Các kỹ thuật nhận dạng tiếng nói và xu hướng phát triển



a) Kỹ thuật so khớp mẫu

C
N
TT

Một hệ thống so khớp mẫu dựa trên ý tưởng là sự so khớp lời

nói với một số tập mẫu được lưu trữ, chẳng hạn như các đoạn âm
thanh mẫu. Thường mỗi mẫu phù hợp với một từ trong từ điển. Người

phân lớp sẽ tính toán sự khác nhau về âm thanh giữa lời nói thu vào và

từng mẫu đã được lưu trữ. Sau đó, anh ta sẽ chọn mẫu nào so khớp

K
H
O
A

nhất với dữ liệu nhập.

Đối với chương trình, một thuật toán cần được sử dụng để tìm


ra sự so khớp không tuyến tính giữa tỷ lệ thời gian giữa hai tín hiệu,
nó dùng để bù đắp sự chênh lệch do sự khác biệt tốc độ nói gây ra.
Kỹ thuật so khớp mẫu được sử dụng rộng rãi trong sản xuất

thương mại vào các thập niên 70 và 80, nhưng sau đó ngày càng được
thay thế bởi các phương pháp mạnh hơn (Holmes, 2001).

b) Mạng Neural

18

Viết thuê luận văn thạc sĩ
- 0972.162.399


Mạng Neural là một mô hình cố gắng mô phỏng hệ thống
nơron thần kinh của con người. Một mạng neural bao gồm một số
lượng các nút. Những nút này được sắp xếp thành từng lớp kết nối lẫn
nhau bằng trọng số khác nhau. Thông tin được đưa qua lớp vào, được

K
H
TN

xử lý qua mạng, sau đó được xuất ra ngoài thông qua lớp ra. Kết quả
trả về của mỗi nút được tính bằng hàm không tuyến tính các trọng số
của các giá trị vào.

Mạng có khả năng phân loại chính xác phụ thuộc vào trọng số

và các giá trị tối ưu được xác định trong quá trình huấn luyện. Khi

huấn luyện, thông tin một vài mẫu âm thanh, ví dụ như phổ biên độ,

H

được đưa vào mạng thông qua các nút nhập, các giá trị kết xuất được

so sánh với giá trị được yêu cầu. Sự sai khác giữa các giá trị sẽ làm

Đ

thay đổi các trọng số. Quá trình này được lập đi lập lại vài lần cho mỗi



mẫu học, làm tăng độ chính xác của mạng.
Mặc dù là một kỹ thuật thú vị và đầy hứa hẹn, nhưng mạng

C
N
TT

Neural chưa thật sự thành công trong một hệ nhận dạng tiếng nói liên
tục hoàn chỉnh.

c) Hướng dựa trên tri thức
Hệ thống dựa trên tri thức sử dụng tri thức để phân biệt sự khác

nhau giữa các âm thanh. Vào khoảng thập niên 70 và 80, nó thích hợp


K
H
O
A

trong việc ứng dụng trong hệ chuyên gia, nó dựa trên bộ luật được rút

ra từ tri thức về tín hiệu âm thanh.
Một dạng khác của hệ thống được kế thừa từ quá trình phát âm

của con người. Ở đây thay vì sử dụng bộ luật thì định nghĩa thành
phần trung gian. Theo cách này, sự phân biệt diễn ra bằng cách so

sánh tiếng nói được tổng hợp với một tiếng nói cần nhận dạng. Mặc

dù là một kỹ thuật có tiềm năng, nhưng một hệ thống như vậy có sự
giới hạn của nó.

d) Mô hình Markov ẩn (Hidden Markov models – HMM)

19

Viết thuê luận văn thạc sĩ
- 0972.162.399


Mô hình Markov ẩn là một phương pháp thống kê mạnh mẽ để
mô hình hóa tín hiệu tiếng nói, và nó thật sự vượt trội trong việc áp
dụng vào nhận dạng tiếng nói ngày nay. Một mô hình Markov ẩn được

dùng để biểu diễn cho một đơn vị của ngôn ngữ, như là từ hay là âm

K
H
TN

vị. Nó gồm có một số hữu hạn các trạng thái và sự chuyển đổi trạng
thái, sự chuyển đổi đó được thực hiện thông qua xác suất chuyển đổi,
hàm phân bố Gauss thường được chọn lựa để thực hiện điều này.

Một khi biểu diển một chuỗi mẫu quan sát, mô hình có thể xác
định xác suất gặp các mẫu quan sát đó, nhưng nếu như một chuỗi đơn

các mẫu quan sát không thể tìm ra một chuỗi các trạng thái có liên

H

quan thì nó không thể xác định trạng thái nào và ở thứ tự nào.

Xác suất chuyển trạng thái và sự phân bố xác suất phụ thuộc

Đ

vào trọng số của nó. Trong quá trình huấn luyện các trọng số này được

C
N
TT




tối ưu hóa cho phù hợp với dữ liệu huấn luyện. (hình 1.9)

K
H
O
A

Hình 1.10: HMM với 3 trạng thái và trọng số chuyển trạng thái

20

Viết thuê luận văn thạc sĩ
- 0972.162.399


Chương 2

XỬ LÝ TIẾNG NÓI
RÚT TRÍCH VECTOR ĐẶC TRƯNG

2.1

Xử lý tiếng nói

K
H
TN

Tín hiệu (signal) là tất cả sự vật hiện tượng có mang hoặc chứa một thông

tin nào đó mà chúng ta có thể hiểu, được quy ước trước. Các tín hiệu trong thế giới

thực đều ở dạng liên tục (tín hiệu tương tự), nó hết sức phức tạp, thiếu độ chính xác

cần thiết đối với máy tính. Do đó các tín hiệu này thường bị biến đổi thành các tín
hiệu số (số hóa), một dạng thông tin máy tính có thể xử lý.

H

Tiếng nói cũng là một dạng tín hiệu tương tự, do đó nó cũng cần được số

Đ

hóa.



2.1.1 Lấy mẫu tín hiệu

Hàm lấy mẫu là cầu nối giữa các hệ thống rời rạc và các hệ thống liên

C
N
TT

tục. Nó còn được gọi là: hàm Dirac Delta, hàm sàng lọc,…
Công thức 2.1

x s (t) =




∑ x (t )δ(t − nT)

n = −∞

K
H
O
A

Đối với máy tính, lấy mẫu chỉ đơn giản là cứ theo một chu kỳ thời gian

(đối với tín hiệu âm thanh và các dạng tương tự), hay là chu kỳ không gian

(đối với tín hiệu là ảnh và các dạng tương tự) ta đo tín hiệu một lần.
Quá trình trên sẽ tạo ra một chuỗi các số biểu diễn cho tín hiệu, và có

thể xử lý được bởi máy tính.

21

Viết thuê luận văn thạc sĩ
- 0972.162.399


K
H
TN


Hình 2.1: Ví dụ về lấy mẫu tín hiệu f(t) trên miền thời gian

H

2.1.2 Bộ lọc tín hiệu

Bộ lọc số có vai trò rất quan trọng trong xử lý tiếng nói, chúng được

Đ

dùng với 2 mục đích chính:

C
N
TT



- Tách tín hiệu cần thiết: Các tín hiệu ban đầu thường chứa đựng các
nhiễu hoặc các tín hiệu không mong muốn khác, các nhiễu này làm
giảm đáng kể chất lượng của tín hiệu và cần phải tách riêng các tín
hiệu cần thiết.
Ví dụ: Đối với âm thanh được thu, tín hiệu âm thường chứa
thêm các tiếng ồn của môi trường, chẳng hạn như tiếng ồ ồ của quạt
trần thổi vào micro; còn đối với ảnh chụp thì là các điểm lốm đốm
trên những tấm ảnh cũ khi được quét vào….

K
H
O

A

- Khôi phục các tín hiệu bị biến dạng: Có một số trường hợp vì một
nguyên nhân nào đó (thường là nguyên nhân liên quan đến thiết bị) sẽ
tạo ra các tín hiệu vào bị méo mó. Vì vậy cần phải chỉnh lại để tăng
chất lượng của tín hiệu số.
Ví dụ: Các micro cũ sẽ cho ra các tín hiệu âm thanh không tốt;
“con mắt” (forcus len) của các máy quét bị mờ sẽ làm cho các ảnh
được quét bị mờ theo ….

Trong thực tế kỹ thuật, có hai bộ lọc tuyến tính dùng để lọc tín hiệu như
sau:

22

Viết thuê luận văn thạc sĩ
- 0972.162.399


- Bộ lọc đáp ứng xung hữu hạn (Finite Impulse Response – FIR): hệ
có tín hiệu ra chỉ phụ thuộc vào tín hiệu vào nên các hệ này còn được
gọi là mạch không truy hồi hay mạch không đệ qui (non-recursive).
Bộ lọc có công thức sau:

K
H
TN

Công thức 2.2
q


y(n ) = b 0 x ( n ) + b1 x ( n − 1) + ... + b q x ( n − q ) = ∑ b j x ( n − j)

H

j=0

Đ

Hình 2.2: Minh họa hoạt động bộ lọc FIR

C
N
TT



- Bộ lọc đáp ứng xung vô hạn (Infinite Impulse Response – IIR): hệ
xử lý có đáp ứng xung có độ dài vô hạn hay đáp ứng xung vô hạn.
Tín hiệu ra không những chỉ phụ thuộc vào tín hiệu vào mà còn phụ
thuộc vào quá khứ của chính tín hiệu ra, vì vậy chúng còn được gọi là
các mạch có truy hồi hay đệ qui. Công thức bộ lọc:
Công thức 2.3

p

q

i =1


j= 0

K
H
O
A

y n = ∑ a i y n −i + ∑ b j x n − j

Hình 2.3: Minh họa hoạt động bộ lọc IIR

23

Viết thuê luận văn thạc sĩ
- 0972.162.399


2.1.3 Dò tìm điểm cuối (end-point detection)
Dò tìm điểm cuối là một xử lý cố gắng tìm ra chính xác khi nào người
ta bắt đầu và kết thúc nói. Nó còn được dùng để xác định khi mà người ta
không thật sự nói gì, hoặc nói những điều không mong đợi (như không có

K
H
TN

trong bộ từ vựng định trước). Khi đó, dò tìm điểm cuối giúp giảm một số

lượng khung mà trình nhận dạng cần phải xử lý, dẫn đến giảm tải việc tính
toán. Tuy nhiên, việc dò tìm điểm cuối không dễ như ta tưởng, bởi vì có sự tồn


tại của tiếng ồn nền, tiếng nói nền và sự liên kết của các âm tiết, như là sự khó
khăn trong việc dò tìm đoạn vô thanh ở phần bắt đầu và kết thúc tiếng nói.

Dò tìm điểm cuối được thực hiện qua ba bước, qua mỗi bước xác định

∑x

a)

(n) (xem phần 2.2.2.2)



n =1

2

Đ

được đặc trưng bằng: E = log

N

H

điểm cuối càng chính xác. Việc dò tìm dựa trên mức năng lượng của tín hiệu

Dò tìm thô: dựa trên kỹ thuật năng lượng ít chính xác nhất. Nó tìm một


C
N
TT

đoạn mà mức năng lượng cao hơn đoạn trước đó và cho một số khung

là điểm bắt đầu (thường khoảng 40 khung) trước khi gặp khung mức

năng lượng cao hơn. Khi một số lượng (thường khoảng 20 khung)

khung khác qua (không cần kiểm tra bất kỳ khung nào) được cho là

điểm cuối.

Dò tìm tinh: bước dò tìm tinh sẽ kiểm tra mức năng lượng của tiếng

K
H
O
A

b)

nói, nó cố lọc ra điểm đầu và cuối bằng cách cho rằng mức năng lượng

của tiếng nói thì cao hơn độ ồn nền (cao hơn một ngưỡng nào đó).

c)

Kỹ thuật VUS (Voice, Unvoice and Silence): kỹ thuật này cố phân loại


từng khung thành đoạn hữu thanh, đoạn vô thanh và khoảng lặng. Việc
phân loại dựa trên sự phân bố năng lượng trong khung, phổ biến dạng

và sự phân loại khung trước đó. Phương pháp này cố loại bỏ đi những

24

Viết thuê luận văn thạc sĩ
- 0972.162.399


×