Tải bản đầy đủ (.doc) (69 trang)

Mô hình markov ẩn và ứng dụng xây dựng hệ thống nhận dạng tiếng nói

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.25 MB, 69 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN THỊ THU HUYỀN

MÔ HÌNH MARKOV ẨN VÀ ỨNG DỤNG
XÂY DỰNG HỆ THỐNG NHẬN DẠNG TIẾNG NÓI

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

THÁI NGUYÊN - 2018


ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

NGUYỄN THỊ THU HUYỀN

MÔ HÌNH MARKOV ẨN VÀ ỨNG DỤNG
XÂY DỰNG HỆ THỐNG NHẬN DẠNG TIẾNG NÓI
Chuyên ngành: Khoa học máy tính
Mã số: 8480101

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Người hướng dẫn khoa học: TS. Vũ Vinh Quang

THÁI NGUYÊN - 2018


i



LỜI CAM ĐOAN
Tôi xin cam đoan rằng đây là công trình nghiên cứu của tôi, có sự hỗ trợ từ
Giáo viên hướng dẫn là TS. Vũ Vinh Quang . Các nội dung nghiên cứu và kết quả
trong đề tài này là trung thực và chưa từng được ai công bố trong bất cứ công
trình nghiên cứu nào trước đây. Những số liệu trong các hình phục vụ cho việc
phân tích, nhận xét, đánh giá được chính tác giả thu thập từ các nguồn khác nhau
có ghi trong phần tài liệu tham khảo. Ngoài ra, đề tài còn sử dụng một số nhận
xét, đánh giá cũng như số liệu của các tác giả, cơ quan tổ chức khác, và cũng được
thể hiện trong phần tài liệu tham khảo.
Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm
trước Hội đồng, cũng như kết quả luận văn của mình.

Thái nguyên, ngày …... tháng …... năm 2018
Tác giả

NGUYỄN THỊ THU HUYỀN


ii

LỜI CẢM ƠN
Để hoàn thành luận văn này, em xin tỏ lòng biết ơn sâu sắc đến thầy TS. Vũ
Vinh Quang, đã tận tình hướng dẫn trong suốt quá trình viết luận văn tốt nghiệp.
Em chân thành cảm ơn quý thầy, cô trong trường Đại Học Công nghệ Thông
tin và Truyền thông đã tận tình truyền đạt kiến thức trong hai năm học tập. Với vốn
kiến thức được tiếp thu trong quá trình học là nền tảng cho quá trình nghiên cứu
để
em hoàn thành luận văn.
Thái nguyên, ngày …... tháng …... năm 2018

Tác giả

NGUYỄN THỊ THU HUYỀN


iii

MỤC LỤC
LỜI CAM ĐOAN ...................................................................................................... i
LỜI CẢM ƠN ........................................................................................................... ii
DANH MỤC CÁC HÌNH ẢNH ...............................................................................v
DANH MỤC CÁC BẢNG BIỂU ........................................................................... vi
DANH MỤC CÁC TỪ VIẾT TẮT ....................................................................... vii LỜI
MỞ ĐẦU ............................................................................................................1
CHƯƠNG 1. MỘT SỐ KIẾN THỨC CƠ BẢN VỀ NHẬN DẠNG TIẾNG NÓI .3
1.1.
Khái
niệm
..................................................................................................3

chung

1.1.1.
Khái
niệm
nhận
.........................................................................3

dạng


tiếng

nói

1.1.2.
Phân
loại
nhận
...........................................................................4

dạng

tiếng

nói

1.1.3.
Hệ
thống
nhận
dạng
..............................................................7
1.2. Các nghiên cứu hiện
................................................8
1.2.1. Các nghiên cứu
......................................8

về

thời


nhận

tiếng
về

dạng

nói

nhận
tiếng

tự

dạng
nói

tiếng



nước

động
nói
ngoài

1.2.2. Các nghiên cứu về nhận dạng tiếng nói tiếng Việt ...........................................9
1.3.

Các
hướng
tiếp
cận
............................................................10
1.4.
Những
khó
khăn
nói.......................................................11

nhận
trong

dạng

tiếng

nhận

dạng

nói
tiếng

1.5. Xử lý tiếng nói....................................................................................................13
1.5.1. Khái niệm xử lý tiếng nói................................................................................13
1.5.2.
Kỹ
thuật

lấy
mẫu
................................................................................13

tín

hiệu

1.5.3.
Cấu
trúc
bộ
lọc
...................................................................................13

tín

hiệu

1.5.4.
Kỹ
thuật

cuối...............................................................................15
1.5.5.
Kỹ
thuật
rút
trích
.............................................................................16


tìm
đặc

điểm
trưng


iv
1.5.6.
Phương
pháp
tính
.......................................................................18

hệ

số

MFCC

1.6. Sơ lược về ngôn ngữ tiếng Việt .........................................................................23
1.6.1.
Giới
thiệu
về
........................................................................................23
1.6.2.
Một
số

đặc
điểm
..........................................................23

của

âm

âm
tiết

tiết
tiếng

Việt

1.6.3. Lý thuyết về âm vị...........................................................................................25
CHƯƠNG 2. TỔNG QUAN VỀ MÔ HÌNH MẠNG MARKOV ẨN ................27


v

2.1. Mô hình Markov ẩn............................................................................................27
2.2. Các bài toán cơ bản của mô hình Markov ẩn .....................................................30
2.2.1. Bài toán 1 ........................................................................................................30
2.2.2. Bài toán 2 ........................................................................................................30
2.2.3. Bài toán 3 ........................................................................................................31
2.3. Các thuật toán cơ bản
.........................................................................................31
2.3.1. Thuật toán tiến (forward)

................................................................................31
2.3.2. Thuật toán lùi (Backward) ..............................................................................32
2.3.3. Các giải pháp giải quyết các bài toán cơ bản ..................................................32
2.4. So sánh các loại mô hình Markov ẩn .................................................................33
CHƯƠNG 3. XÂY DỰNG HỆ THỐNG NHẬN DẠNG TIẾNG VIỆT.............35
3.1. Tổng quan về HTK (HMM Tool Kit) ................................................................35
3.1.1. Giới thiệu hệ thống..........................................................................................35
3.1.2. Mô hình các cấu trúc tập tin cơ bản khai báo HMM và MFCC cho nhận dạng
tiếng nói
............................................................................................................36
3.1.3. Các bước xây dựng một mô hình nhận dạng tiếng nói sử dụng HTK ............40
3.1.4. Một số Modul sử dụng trong quá trình xây dựng hệ thống nhận dạng tiếng
nói tiếng việt trong bộ công cụ HTK
......................................................................44
3.2. Xây dựng hệ thống nhận dạng chữ số Tiếng việt...............................................47
3.2.1. Xây dựng cơ sở dữ liệu chữ số tiếng việt.......................................................47
3.2.2. Bảng phiên âm 10 chữ số tiếng Việt ...............................................................47
3.2.3. Phương pháp xây dựng hệ thống nhận dạng chữ số tiếng việt
.......................47
3.2.4. Các kết quả thực nghiệm
.................................................................................48
KẾT LUẬN ..............................................................................................................51
TÀI LIỆU THAM KHẢO ......................................................................................52


vi

DANH MỤC CÁC HÌNH ẢNH
Hình 1.1: Quá trình phát âm sẽ khác nhau tùy theo người nói
...................................6

Hình 1.2: Mô hình nhận dạng tiếng nói bán độc lập người nói ..................................6
Hình 1.3: Cấu trúc cơ bản của hệ thống ASR .............................................................7
Hình 1.4: Cấu trúc hệ thống nhận dạng ngôn ngữ có thanh
điệu................................9
Hình 1.5. Ví dụ về lấy mẫu tín hiệu F(t) trên miền thời gian ...................................13
Hình 1.6. Minh họa hoạt động của bộ lọc FIR..........................................................14
Hình 1.7. Minh họa hoạt động của bộ lọc IIR...........................................................15
Hình 1.8. Dò tìm điểm cuối dựa trên mức năng lượng .............................................16
Hình 1.9. Sơ đồ rút trích vevtor đặc trưng tổng quát
................................................17
Hình 1.10. Các bước xử lý tính hệ số MFCC ...........................................................18
Hình 1.11. Sóng âm của chữ “ANH” trước khi làm phẳng (bên trái) và sau khi làm
phẳng (Bên phải)...............................................................................19
Hình 1.12. Phân đoạn tín hiệu tiếng nói thành các khung có sự chồng lấp ..............20
Hình 1.13. Cửa sổ Hamming.....................................................................................20
Hình 1.14. Cửa sổ Hanning .......................................................................................21
Hình 1.15. Cửa sổ hình chữ nhật...............................................................................21
Hình 2.1: Minh họa mô hình Markov trong nhận dạng tiếng nói với 5 trạng thái và
chèn
sp......................................................................................................28
Hình 2.2: Mô hình Markov ẩn với sáu trạng thái......................................................30
Hình 3.1: Minh họa sự giảm dần của năng lượng. ....Error! Bookmark not defined.
Hình 3.2. Các Module và các chức năng trong HTK................................................35
Hình 3.3. Các công cụ và chức năng trong HTK ......................................................36
Hình 3.4. Phân bố các tham số trong một số vector đặc trưng của HTK..................38
Hình 3.5. Các bước cơ bản xây dựng hệ thống nhận dạng tiếng nói ........................40
Hình 3.6: Mô hình HMM ..........................................................................................42


vi

i
DANH MỤC CÁC BẢNG BIỂU
Bảng 1.1: So sánh tỷ lệ lỗi nhận dạng của con người và máy tính trong một số hệ
thống nhận
dạng.........................................................................................8
Bảng 3.1: Bảng phiên âm 10 chữ số tiếng Việt ........................................................47
Bảng 3.2. Kết quả thử nghiệm hệ thống nhận dạng với bộ từ điển có chèn sp và
không chèn sp
..........................................................................................49
Bảng 3.3. Kết quả thử nghiệm hệ thống nhận dạng với dữ liệu test trùng với dữ liệu
huấn
luyện................................................................................................50


vii

DANH MỤC CÁC TỪ VIẾT TẮT
Từ viết tắt

Tiếng Anh

Tiếng Việt

AI

Artificial intelligence

Trí tuệ nhân tạo

AR


Augmented reality

Tương tác thực tại ảo

CSDL

Database

Cơ sở dữ liệu

DBMS

Database Management System

Hệ quản trị cơ sở dữ liệu

IoT

Internet of things

Internet vạn vật

IR

Information Retrieval

Hệ thống tự động truy tìm
thông tin


MIRS
MMDBMS

Multimedia Indexing & Retrieval

Hệ thống chỉ mục và truy tìm

System

thông tin đa phương tiện

Multimedia Database

Hệ thống quản trị cơ sở dữ liệu

Management System

đa phương tiện

MRI

Magnetic Resonance Imaging

VR

Virtual reality

WWW

World Wide Web


Thực tế ảo


1

LỜI MỞ ĐẦU
Tiếng nói là một 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 cùng với quá trình tiến hóa của loài người. Ngay từ khi hình
thành tiếng nói đã thể hiện được sức mạnh như: Khả năng truyền đạt thông
tin, tốc độ…
Ngày nay, nhờ sự phát triển mạnh mẽ của khoa học kỹ thuật, máy móc
dần dần thay thế các lao động bằ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 vừa tốn thời gian vừa phức tạp và cần phải
được đào tạo. Chính vì lẽ đó, nhận dạng tiếng nói sẽ đóng vai trò rất quan trọng
trong giao tiếp giữa người và máy. Nó giúp con người có thể điều khiển máy móc,
thiết bị bằng giọng nói của mình đặc biệt là các thiết bị như: máy tính, điện thoại
di động, rô bốt…
Hiện nay, cùng với sự phát triển vượt bậc của ngành khoa học nhận dạng
tiếng nói, những chiếc điện thoại quay số bằng giọng nói đã ra đời, máy tính cá
nhân với phần mềm nhận dạng tiếng nói có thể trợ giúp cho những người khuyết
tật về tay, chân hay khiếm thính. . Tuy vậy, những thành tựu trên lại là những
nghiên cứu về nhận dạng tiếng nói ngôn ngữ nước ngoài. Với tiếng Việt, số lượng
các nghiên cứu còn khá ít và dường như ít được quan tâm. Có thể nói rằng những
nghiên cứu nhận dạng tiếng nói tiếng Việt chủ yếu tập trung vào nhận dạng từ rời
rạc, hay hệ thống nhận dạng liên tục nhưng với kích thước nhỏ.
Tuy nhiên, để ngành khoa học nhận dạng tiếng nói ở Việt Nam thực sự phát
triển và đạt được những thành tựu to lớn để áp dụng vào thực tế thì lĩnh vực nhận
dạng tiếng nói cần phát triển hơn nữa. Chính vì vậy, việc nghiên cứu nhận dạng
tiếng nói đặc biệt là nhận dạng tiếng nói tiếng Việt là rất cần thiết để xây dựng các

hệ thống nhận dạng, các ứng dụng nhận dạng tiếng nói thực sự hữu ích của riêng
tiếng Việt.
Đề tài này được xây dựng với mục đích tìm hiểu, nghiên cứu, so sánh và đánh
giá các phương pháp, các hướng tiếp cận nhận dạng tiếng nói hiện nay trên thế
giới như: Tiếp cận âm học, tiếp cận trí tuệ nhân tạo, nhận dạng mẫu thống kê
(dựa vào


2

mô hình Markov ẩn (HMM), mạng Neural nhân tạo(ANN), hệ thống lai ghép giữa
mô hình Markov và mạng Neural (HMM/ANN). Trên cơ sở đó lựa chọn ra phương
pháp thích hợp nhất để áp dụng xây dựng hệ thống nhận dạng tiếng nói tiếng Việt.
Đề tài có kế thừa các kết quả nghiên cứu về nhận dạng tiếng nói ngôn ngữ
nước ngoài và một số kết quả nghiên cứu trong nước để đưa ra những điểm
chung, và riêng của ngôn ngữ tiếng Việt với ngôn ngữ nước ngoài từ đó thiết kế,
xây dựng và mở rộng bộ từ điển tiếng Việt cho hệ thống nhận dạng tiếng Việt liên
tục.
Hiện nay, có hai hướng xây dựng hệ thống nhận dạng tiếng nói: hệ thống
nhận dạng từ rời rạc và hệ thống nhận dạng từ liên tục. Có thể nói rằng để xây
dựng hệ thống nhận dạng từ liên tục là rất khó khăn so với nhận dạng từ rời rạc.
Nhưng một hệ thống nhận dạng từ liên tục lại có ý nghĩa thực tế hơn nhiều so với
hệ thống nhận dạng từ rời rạc. Chính vì yếu tố trên nên đề tài tập trung nghiên
cứu xây dựng hệ thống nhận dạng tiếng Việt liên tục với hướng tiếp cận mẫu thống
kê dựa vào mô hình Markov ẩn (HMM). Với giới hạn thời gian làm đồ án, việc xây
dựng một hệ thống nhận dạng tiếng Việt liên tục với kích thước lớn là rất khó khăn
vì vậy đề tài giới hạn nghiên cứu hệ thống nhận dạng tiếng nói tiếng Việt cho 10
chữ số.



3

CHƯƠNG 1

MỘT SỐ KIẾN THỨC CƠ BẢN VỀ NHẬN DẠNG TIẾNG NÓI
1.1. Khái niệm chung
1.1.1. Khái niệm nhận dạng tiếng nói
Nhận dạng tiếng nói nhìn chung cũng là một quá trình nhận dạng mẫu, với
mục đích là phân lớp tín hiệu tiếng nói (đầu vào) thành một dãy tuần tự các mẫu
đã được học và lưu trữ trong bộ nhớ. Các mẫu có thể là các từ hay các âm vị.
Với đặc thù tiếng nói là một dạng tín hiệu biến thiên theo thời gian và có sự
khác biệt giữa tiếng nói của những người khác nhau, tốc độ nói khác nhau hay ngữ
cảnh và môi trường âm học khác nhau. Thậm chí tiếng nói của cùng một người
cũng không giống nhau: khi người đó khỏe thì tiếng nói của họ khác khi bị ốm. Đó
chính là khó khăn cơ bản nhất của nhận dạng tiếng nói. Việc xác định những thông
tin biến thiên nào là hữu ích và những thông tin nào là vô ích cho nhận dạng tiếng
nói là rất quan trọng. Đây là một nhiệm vụ rất khó khăn mà ngay cả những kỹ thuật
xác suất thống kê mạnh cũng không thể tổng quát hóa từ các mẫu tiếng nói những
biến thiên nào là quan trọng và cần thiết cho nhận dạng tiếng nói.
Nhìn chung hiện nay các nghiên cứu về nhận dạng tiếng nói dựa trên ba
nguyên tắc cơ bản:
 Tín hiệu tiếng nói được biểu diễn chính xác bởi các giá trị phổ trong miền
thời gian ngắn (short-term amplitude spectrum). Nhờ yếu tố này ta có thể cắt
khung tiếng nói trong một khoảng thời gian nhất định để trích rút ra các đặc trưng
làm dữ liệu để nhận dạng tiếng nói.
 Nội dung của tiếng nói ở dạng văn bản là một dãy các kí hiệu ngữ âm. Do
đó ý nghĩa của một phát âm được bảo toàn khi ta phiên âm phát âm thành dãy
các ký hiệu ngữ âm.
 Nhận dạng tiếng nói là một quá trình nhận thức. Thông tin về ngữ nghĩa và
suy đoán có giá trị trong quá trình nhận dạng tiếng nói nhất là khi thông tin về âm

học không rõ ràng.


4

Ngành khoa học nhận dạng tiếng nói là một trong những ngành có lĩnh vực
nghiên cứu khá rộng. Lĩnh vực nghiên cứu của nhận dạng tiếng nói có liên quan tới
nhiều ngành khác nhau như:
 Ngôn ngữ học (linguistics): Như đã nói ở trên khi chúng ta phiên âm phát
âm thành các ký hiệu ngữ âm thì ý nghĩa của một phát âm không thay đổi. Vậy sự
hiểu biết về cấu trúc của ngôn ngữ, đặc biệt là ngữ âm và vai trò của chúng trong
việc tạo ra tiếng nói là rất quan trọng khi chúng ta xây dựng hệ thống nhận dạng
tiếng nói.
 Sinh lý học (physiology) và tâm lý học ứng dụng (applied psychology):
Kiến thức về cấu tạo bộ máy phát âm của con người, về quá trình sản sinh
tiếng nói cũng như phân tích âm học và ngôn ngữ tại bộ não để con người hiểu
được tiếng nói.
 Xử lý tín hiệu số (digital signal processing): Các kỹ thuật xử lý tín hiệu số
dùng phân tích tín hiệu tiếng nói nhằm trích rút ra đặc trưng của tiếng nói cho quá
trình nhận dạng.
 Âm học (acoustic): Nghiên cứu mối quan hệ giữa tín hiệu tiếng nói và cơ
chế sinh lý học của bộ máy phát âm của con người.
 Lý thuyết nhận dạng: Các thuật toán dùng để phân loại dữ liệu thành các
tập mẫu dựa trên sơ sở tính toán khoảng cách giữa các đặc điểm của mẫu.
 Lý thuyết thông tin và khoa học máy tính (information and computer
theory): Các thuật toán dùng để tính toán mô hình tham số của các mô hình
thống kê, các thuật toán mã hóa và giải mã (lập trình động, thuật toán giải mã
Viterbi) để quá trình nhận dạng tốt nhất.
1.1.2. Phân loại nhận dạng tiếng nói
Nếu xét về độ dài các câu từ cần nhận dạng ta có thể phân thành nhận dạng

từ liên tục và nhận dạng từ rời rạc. Ngoài ra ta còn có thể phân loại theo sự phụ
thuộc hay độc lập người nói.


5

a. Nhận dạng từ liên tục và nhận dạng từ rời rạc
Nhận dạng từ liên 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, như một câu nói hay một đoạn văn được đọc bởi người dùng.
Các hệ thống nhận dạng loại này rất phức tạp, nó phức tạp bởi lẽ quá trình xử lý
tiếng nói liên tục là khó khăn hơn nhiều so với từng từ riêng lẻ. Quá trình xử lý
tiếng nói liên tục còn phụ thuộc vào việc người dùng nói nhanh hay chậm. Nếu
người dùng nói không có khoảng nghỉ thì việc tách từ là khó khăn. Và chính kết quả
của quá trình tách từ này có ảnh hưởng rất lớn tới các bước tiếp theo trong quá
trình nhận dạng.
Trái lại, trong nhận dạng từ rời rạc thì các phát âm được nhận dạng chỉ bao
gồm một từ, hay một nhóm nhỏ các từ mà ở đó có các khoảng nghỉ trước và sau
khi phát âm mỗi từ. Nhận dạng tiếng nói với các từ rời rạc thường được ứng dụng
trong các chương trình dạng câu lệnh- điều khiển. Quá trình nhận dạng tiếng nói
với các từ rời rạc là dễ hơn nhiều so với quá trình nhận dạng tiếng nói liên tục.
b. Nhận dạng phụ thuộc người nói và độc lập người nói
Một hệ thống nhận dạng tiếng nói phụ thuộc người nói là một hệ thống
dường như chỉ phục vụ cho một người, nó sẽ không hiểu người khác nói gì nếu
như không có quá trình huấn luyện lại từ đầu. Do đó nên hệ thống nhận dạng tiếng
nói phụ thuộc người nói khó được chấp nhận rộng rãi bởi lẽ là quá tốn kém nếu bỏ
ra kinh phí lớn chỉ để xây dựng hệ thống phục vụ cho một cá nhân, hay không phải
ai cũng có đủ khả năng kiến thức và sự kiên nhẫn để ngồi huấn luyện lại hệ thống.
Rõ ràng rằng hệ thống nhận dạng tiếng nói loại này khó được áp dụng vào thực tế
nhất là nơi công cộng.
Để khắc phục những nhược điểm trên thì hệ thống nhận dạng tiếng nói độc

lập người nói là ưu việt hơn nhiều. Hệ thống nhận dạng tiếng nói độc lập người nói
là lý tưởng hơn, có ứng dụng rộng rãi hơn và đáp ứng được hầu hết các yêu cầu đề
ra với một hệ thống nhận dạng tiếng nói. Tuy nhiên, việc xây dựng một hệ
thống nhận dạng độc lập người nói có độ chính xác cao cũng gặp không ít khó
khăn.
Trong thực tế mỗi vùng miền có một giọng nói khác nhau, mỗi người có một


6
giọng nói khác nhau, thậm chí cùng một người giọng nói cũng khác nhau ở những


7

thời điểm khác nhau (Hình 1.2). Đó là yếu tố ảnh hưởng rất lớn đến mức độ chính
xác trong nhận dạng tiếng nói. Để khắc phục nhược đ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 với lượng dữ liệu huấn luyện lớn
và đa dạng hơn nhiều lần. Nhưng làm được yêu cầu trên là khó và độ chính xác
trong nhận dạng cũng chưa phải là tối ưu. Do đó, trong thực tế để giải quyết chất
lượng nhận dạng người ta thường kết hợp cả hai phương pháp trên và xây dựng
hệ thống nhận dạng bán độc lập người nói. Phương pháp này được thực hiện bằng
cách thu một số lượng lớn các mẫu khác nhau để huấn luyện. Khi sử dụng hệ
thống sẽ điều chỉnh cho phù hợp với người nói bằng cách để người dùng trải qua
một quá trình ngắn để huấn luyện hệ thống (ví dụ như phần mềm nhận dạng tiếng
nói được tích hợp trong Ofice của Microsoft).

Hình 1.1: Quá trình phát âm sẽ khác nhau tùy theo người nói

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



8

1.1.3. Hệ thống nhận dạng tiếng nói tự động
Hệ thống nhận dạng tiếng nói tự động (Automatic Speech Recognition –
ASR) là hệ thống tự động chuyển đổi tiếng nói thành chữ viết hay thành một
trong các chức năng của thiết bị. Các thành phần của một hệ thống nhận
dạng tiếng nói bao gồm:
 Rút trích đặc trưng tiếng nói: Biến đổi tiếng nói (tín hiệu âm thanh)
thành chuỗi các vector đặc trưng cho quá trình nhận dạng đồng thời thực hiện quá
trình dò tìm điểm đầu cuối của tiếng nói và lọc nhiễu.
 Phân lớp và nhận dạng: Đây thực chất là quá trình dựa vào mô hình
âm thanh, từ điển phát âm và mô hình ngôn ngữ của hệ thống để nhận dạng.
 Giải mã: Quá trình giải mã có thể đơn giản là quá trình xuất ra chuỗi văn bản
cần nhận dạng từ tín hiệu âm thanh vào hoặc đó là một quá trình phân tích chuỗi
nhận được ứng với việc thực hiện tác vụ nào đó.

Hình 1.3: Cấu trúc cơ bản của hệ thống ASR
Hiện nay ASR có một số ứng dụng trong các lĩnh vực như: Điều khiển bằng
tiếng nói (quay số điện thoại…), trong điện tử viễn thông (tổng đài điện thoại…).


9

1.2. Các nghiên cứu hiện thời về nhận dạng tếng nói
1.2.1. Các nghiên cứu về nhận dạng tiếng nói ở nước ngoài
Nghiên cứu nhận dạng tiếng nói đã được bắt đầu từ cuối thập niên 40 của
thế kỉ 20, công nghệ nhận dạng tiếng nói đã có bước đi khá dài và cũng đã đạt một
số thành tựu đáng kể. Một số phần mềm nhận dạng tiếng nói đã có mặt trên thị
trường như các phần mềm nhận dạng tiếng nói đọc chính tả của IBM, phần mềm

nhận dạng nói thật hay nói dối, …Và đặc biệt là với ngôn ngữ tiếng Anh hiện nay
đã tạo được bộ cơ sở dữ liệu quý là: là bộ từ điển Beep và CSLU. Trong lĩnh vực
nghiên cứu các ứng dụng nhận dạng tiếng nói trong viễn thông thì Speech Works là
hãng phần mềm khá nổi tiếng. Hiện nay trên thế giới đã có nhiều trung tâm nghiên
cứu về nhận dạng tiếng nói như: CSLU, Bell Labs, IBM Research Center, Microsoft
Research…
Nhìn chung môi trường thu âm tiếng nói có ảnh hưởng rất lớn đến độ
chính xác của quá trình nhận dạng. Ở Mỹ hệ thống nhận dạng các số của thẻ tín
dụng ngân hàng được đọc bởi người bán hàng tại các hệ thống cửa hàng bán lẻ
có độ chính xác là 98% trong khi cùng hệ thống này trong môi trường phòng thí
nghiệm thì độ chính xác lên tới 99,7%. Theo một đánh giá của Barbara s. (2001),
high- Performance Automatic Speech Recognition via Enhanced Front-end Analysis
and Acoustic Modeling [1] ta có bảng so sánh tỷ lệ lỗi nhận dạng của các hệ thống
nhận dạng tiếng Anh so với khả năng nhận dạng của con người như sau (bảng 1.1):
Bảng 1.1: So sánh tỷ lệ lỗi nhận dạng của con người và máy tính trong một số hệ
thống nhận dạng
Hệ thống

Kích thước từ vựng

nhận dạng

Hệ thống nhận dạng

Con

tếng nói (Máy tính)

người


Liên tục

10

0.72%

0.009%

Các chữ cái

26

5%

1%

2000

36.7%

3.8%

Giọng nói tự nhiên

Qua bảng trên ta có thể thấy rằng tỷ lệ lỗi nhận dạng của con người là
thấp hơn nhiều so với tỷ lệ lỗi nhận dạng bằng máy và tỷ lệ này càng được thể
hiện rõ hơn trong môi trường nhiều nhiễu.


10


Bên cạnh các hệ thống nhận dạng tiếng nói ngôn ngữ châu Âu thì các hệ thống
nhận dạng tiếng nói cũng đã được nghiên cứu ở Trung Quốc, Nhật Bản, Thái Lan.
Nhìn chung, đã có nhiều nghiên cứu nhận dạng tiếng nói tiếng Trung đã được thực
hiện, một số hệ thống nhận dạng tiếng trung kích thước lớn đã được xây dựng.
Còn với ngôn ngữ Thái Lan, các nghiên cứu chủ yếu ở mức độ nhận dạng từ rời rạc.
Tuy nhiên, với hệ thống nhận dạng từ liên tục thì hệ thống nhận dạng 10 chữ số
Thái cũng đã đạt độ chính xác 96,89% .
1.2.2. Các nghiên cứu về nhận dạng tiếng nói tiếng Việt
Nhận dạng tiếng nói tiếng Việt đi sau thế giới rất lâu và những kết quả đạt
được còn rất hạn chế. Cho tới thời điểm hiện nay, các nghiên cứu nhận dạng tiếng
nói tiếng Việt còn rất ít và tập trung nhiều vào nghiên cứu nhận dạng từ rời rạc.
Hệ thống nhận dạng tiếng nói tiếng Việt giống như hệ thống nhận dạng các
ngôn ngữ có thanh điệu khác, bao gồm hai quá trình nhận dạng song song đó là:
nhận dạng các từ không có thanh điệu và nhận dạng thanh điệu rồi tổng hợp để
đưa ra quyết định. Hình 1.4 mô tả một hệ thống nhận dạng ngôn ngữ có thanh
điệu nói chung và tiếng Việt nói riêng:

Hình 1.4: Cấu trúc hệ thống nhận dạng ngôn ngữ có thanh điệu
Nghiên cứu về nhận dạng tiếng Việt được thực hiện đầu tiên Nhóm
nghiên cứu của PGS.TS Lương Chi Mai - Viện công nghệ thông tin. Trong những đã
qua Nhóm nghiên cứu đã đưa ra nhiều đề xuất và những kết quả quan trọng trong
lĩnh vực nhận dạng tiếng nói tiếng Việt trên các bài báo khoa học như: “Về xử lý
tiếng Việt trong công nghệ thông tin”,…
Ngoài ra, nghiên cứu của tiến sĩ Nguyễn Thành Phúc đã đưa ra hệ thống nhận
dạng tiếng Việt với mạng Neural và đưa ra mô hình phiên âm tiếng Việt.


11


Vào năm 2005, nhóm BK02 Đại học Bách khoa thành phố Hồ Chí Minh đã
xây dựng chương trình nhận dạng tiếng nói tiếng việt với mã nguồn mở của
Microsoft tuy nhiên kết quả còn nhiều hạn chế.
Nhìn chung, những nghiên cứu về nhận dạng tiếng nói tiếng Việt còn rất ít và
điều quan trọng nhất là chúng ta chưa có một bộ từ điển và bộ cơ sở dữ liệu tốt
cho tiếng Việt.
1.3. Các hướng tiếp cận nhận dạng tếng nói
Nghiên cứu về nhận dạng tiếng nói được bắt đầu vào những năm 40 của thế kỉ
20 và đã đạt được những thành tựu đáng kể. Các nghiên cứu nhận dạng tiếng
nói dựa trên 3 hướng tiếp cận chính: Tiếp cận Âm học, tiếp cận Nhận dạng mẫu
thống kê (chủ yếu dựa trên mô hình Markov ẩn), tiếp cận Trí tuệ nhân tạo.
 Hướng tiếp cận Âm học: Dựa vào các đặc điểm âm học được rút ra từ phổ
âm thanh. Tuy nhiên kết quả của hướng tiếp cận này còn thấp vì trong thực tế các
đặc trưng âm học có sự biến động rất lớn. Hơn nữa hướng tiếp cận này đòi hỏi tri
thức rất đầy đủ về âm học. Chính vì các yếu tố trên nên hướng tiếp cận này ít
được lựa chọn trong nghiên cứu nhận dạng tiếng nói.
 Hướng tiếp cận Nhận dạng mẫu thống kê: Sử dụng các phương pháp
máy học dựa trên thống kê để học và rút ra mẫu tham khảo (từ điển) từ lượng
dữ liệu lớn. Sau đó, các mẫu cần nhận dạng được rút trích đặc trưng và phân
vào lớp mà xác suất mẫu cần nhận dạng thuộc vào lớp đó là lớn nhất. Hướng này
đang được sử dụng nhiều (chủ yếu là dựa vào mô hình Markov ẩn) và đã đạt được
nhiều thành công như trong nhận dạng tiếng nói ngôn ngữ Tiếng Anh, tiếng Trung
Quốc.
 Hướng tiếp cận Trí tuệ nhân tạo: Là sự kết hợp của cả hai hướng tiếp cận
âm học và tiếp cận nhận dạng mẫu thống kê. Hướng tiếp cận này kết hợp được cả
tri thức của chuyên gia và phương pháp nhận dạng mẫu thống kê. Tuy nhiên, hiện
nay phương pháp này chưa được áp dụng nhiều trong nghiên cứu nhận dạng tiếng
nói vì nó đòi hỏi một tri thức rất lớn. Đây sẽ là hướng tiếp cận trong tương lai của
nhận dạng tiếng nói.



12

Với mục đích nghiên cứu các phương pháp nhận dạng tiếng nói trên thế giới
hiện nay để áp dụng vào bài toán nhận dạng tiếng nói ngôn ngữ tiếng Việt,
phần tiếp theo của luận văn này sẽ đi sâu vào phân tích mô hình Markov ẩn để xây
dựng hệ thống nhận dạng tiếng nói ngôn ngữ tiếng Việt. Mô hình Markov ẩn được
lựa chọn bởi những lý do sau: Đây là mô hình được sử dụng rộng rãi trên thế giới
trong lĩnh vực nhận dạng nói chung và nhận dạng tiếng nói nói riêng. Với những
thành quả đã đạt được trên thế giới trong lĩnh vực nhận dạng tiếng nói, chúng ta
có thể thừa hưởng những thành quả này để áp dụng vào bài toán nhận dạng tiếng
nói ngôn ngữ tiếng Việt nhất là hiện nay ở nước ta chưa có nhiều nghiên cứu về
nhận dạng tiếng nói.
1.4. Những khó khăn trong nhận dạng tếng nói
Qua các nghiên cứu về nhận dạng tiếng nói ngôn ngữ nước ngoài và Việt
Nam, ta có thể rút ra được những khó khăn cơ bản trong việc xây dựng một
hệ thống nhận dạng tiếng nói như sau:
 Điều kiện môi trường: Tiếng nói có chất lượng thấp (nhiều nhiễu,…) do môi
trường thu âm, do thiết bị thu âm… là vấn đề rất khó giải quyết triệt để cho các hệ
thống nhận dạng tiếng nói. Trong môi trường phòng thí nghiệm, kết quả nhận dạng
có độ chính xác cao hơn so với môi trường bên ngoài, đặc biệt là môi trường có
nhiều nhiễu. Theo Olivier S. (1995), tỷ lệ lỗi của hệ thống nhận dạng tiếng nói với
tiếng nói có tỉ số tín hiệu trên nhiễu SNR > 40dB (SNR-Signal ti Noise Ratio)
thường tăng gấp nhiều lần (có thể lên tới 10 lần) so với tiếng nói có SNR>18dB.
 Sự phụ thuộc người nói: Như đã nói ở trên, hệ thống nhận dạng tiếng nói
có thể độc lập người nói (speaker independent) hoặc phụ thuộc người nói
(speaker dependent). Để xây dựng một hệ thống nhận dạng độc lập người nói dành
cho nhiều người là khó khăn hơn nhiều so với việc xây dựng hệ thống nhận dạng
tiếng nói chỉ dành riêng cho từng người. Sự khó khăn này là do mỗi vùng miền,
mỗi người có một giọng nói khác nhau, ngay bản thân một người nói tiếng nói của

họ cũng không giống nhau tại các thời điểm khác nhau. Theo Tebelskis j.(1995), thì
tỉ lệ lỗi nhận dạng của hệ thống nhận dạng tiếng nói độc lập người nói thường
cao gấp 3 đến 5 lần so với hệ thống nhận dạng tiếng nói phụ thuộc người nói.


13

 Kích thước của từ điển nhận dạng: Kích thước bộ từ điển của hệ thống
nhận dạng càng lớn thì tỷ lệ hệ thống nhận dạng nhầm giữa các từ, các câu càng
cao. Đặc biệt, tiếng Việt là một ngôn ngữ rất phong phú về cách phát âm nên để
xây dựng một bộ từ điển lớn cho hệ thống tiếng nói tiếng Việt gặp rất nhiều khó
khăn.
 Sự biến đổi trong lời nói: Tốc độ của phát âm cũng ảnh hưởng tới độ chính
xác của hệ thống nhận dạng. Với những từ được phát âm rời rạc thì việc xây dựng
hệ thống nhận dạng dễ dàng và có độ chính xác cao hơn so với những từ phát
âm liên tục. Con người có thể hiểu được những tiếng cười, tiếng ho, tiếng “à, ơ”
trong lời nói, tuy nhiên đê máy hiểu được là vô cùng khó khăn.
Nhìn chung độ chính xác của hệ thống nhận dạng tiếng nói được đánh giá
trên cơ sở mức từ và mức câu. Để đánh giá độ chính xác của hệ thống nhận dạng ở
mức
từ ta dùng công thức sau:
N S D I
N

*100%

Trong đó:
N: Là tổng số từ cần nhận dạng.
S: Số từ bị nhận dạng nhầm (Substitution).
D: Số từ bị xóa (Delete).

I: Số từ bị chèn (Insertion).
Với hệ thống nhận dạng liên tục, mức câu độ chính xác được đánh giá theo
công thức:
N S
N

*100%

Trong đó:
N: Tổng số câu cần nhận dạng.
S: Số câu nhận dạng sai.


14

1.5. Xử lý tếng nói
1.5.1. Khái niệm xử lý tiếng nói
Tín hiệu (signal) là cá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. Hầu hết 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 đối với máy tính. Do đó, để máy tính có thể hiểu được các loại tín hiệu
chúng ta thường phải số hóa các loại tín hiệu này.
Tiếng nói cũng là một dạng tín hiệu tương tự, do đó để máy tính cũng như các
thiết bị có thể hiểu tín hiệu tiếng nói chúng ta cũng cần phải số hóa nó.
1.5.2. Kỹ thuật 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 tục. nó
còn được gọi là: hàm Dirac delta, hàm sàng lọc,…
Xs(t)=
Đối với máy tính, có thể hiểu lấy mẫu đơn giản chỉ là việc cứ theo một chu kỳ
thời gian (với tín hiệu tiếng nói) ta đo tín hiệu một lần. Quá trình này 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.

Hình 1.5. Ví dụ về lấy mẫu tín hiệu F(t) trên miền thời gian
1.5.3. Cấu trúc bộ lọc tín hiệu
Trong xử lý tiếng nói bộ lọc có vai trò rất quan trọng, chúng được dùng với
hai mục đích chính:


15

 Tách các 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ì vậy, cần phải tách riêng các tín hiệu cần thiết và loại bỏ
các tín hiệu nhiễu, dư thừ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 tới các thiết bị) sẽ làm cho các tín
hiệu vào bị méo mó. Yếu tố này sẽ ảnh hưởng tới chất lượng nhận dạng vì vậy cần
phải căn chỉnh lại để tăng chất lượng của tín hiệu số.
Trong thực tế kỹ thuật, để xử lý tiếng nói người ta thường dùng hai bộ lọc
tuyến tính sau:
a. Bộ lọc đáp ứng xung hữu hạn (Finite Impulse Response –FIR)
Bộ lọc đáp ứng xung hữu hạn là hệ có tín hiệu ra chỉ phục thuộc vào tín hiệu
vào nên hệ này còn được gọi là mạch không truy hồi hay mạch không đệ quy (non
– recursive).
Bộ lọc đáp ứng xung hữu hạn có công thức như sau:


×