Nhận dạng người nói phụ thuộctừ khóa (text
dependent speaker recognition) làkỹ thuật nhậndạng
người nói có khảnăng ứngdụngrấtlớn, vídụ như
đăng nhập vào cáchệ thống an ninhbằngmật khẩu
tiếng nói hay truycậpbằng tiếng nói vào cáchệ thống
giaodịch ngân hàng trênmạng điện thoại thông qua
mãsố cá nhân (số PIN). Dotậndụng được các thông
tin biết trước lànội dung tiếng nói khi huấn luyệncũng
như khi nhậndạng nên độ chính xác nhậndạngtăng
lên trong khi thời gian huấn luyện và nhậndạnglại
giảm nhiều sovới nhândạng người nói không phụ
thuộctừ khóa (text independent speaker recognition).
Tuy nhiênhạn chếcủakỹ thuật này là không cósự
thay đổi trongmật khẩu nênhệ thốngdễbịtấn công
bởi nhữngkẻ giảmạobằng cách ghi âmlạimật khẩu
vàtấn cônghệ thống. Để chốnglại điều này, nhiềuhệ
thống đã thay đổi cáccụmtừmật khẩu. Chẳnghạn
trong trườnghợpcụmtừ là cácsố,hệ thốngsẽ sinh
mộtcụmtừmật khẩu làmột dãysố ngẫu nhiên nào đó
và thông báo nómỗi khi có người đăng nhậphệ thống.
Các nghiêncứu chỉ rarằng việcsửdụng các dãysố và
mộtsố cáctừcố định trongcụmtừmật khẩu khá hiệu
quả khi chốnglạisự giảmạo theo kiểu ghi âmtừ khóa
[1]. Trong pha huấn luyện, những người đăng kýsẽ nói
cácsố vàmộtsố cáctừcố định. Khi nhậndạng,hệ
thốngsẽ thay đổicụmtừmỗilần đăng nhập trongtập
cáctừ được huấn luyện.Mặc dù việc nhậndạng này
vẫn là phụ thuộctừ khóa song nó làm chosự giảmạo
trở nên khó khănhơnrất nhiều vì không biết được
chính xáccụmtừmật khẩutự sinhcủahệ thống. Các
hệ thống nhưvậy đượcgọi là cáchệ nhậndạng người
nói phụ thuộctừ khóa thay đổi (text prompted speaker
recognition).
7 trang |
Chia sẻ: vietpd | Lượt xem: 2363 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Đề tài Xây dựng và khảo sát độ dài từ khóa trong nhận dạng người nói phụ thuộc vào từ khóa Tiếng Việt theo mô hình Markov ẩn, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Tạp chí BCVT & CNTT kỳ 3 10/2007
- 93 -
Abstract: A text-dependent speaker identification
system for Vietnamese language was proposed. Vietnamese
isolated digits 09 and their concatenations were used for
speaking text. Well-known Hiden Markov Model (HMM)
was conducted for recognition engine. The problem is that
how many word of the Vietnamese text so that the system
is most effective. Studying the identification rate shows
optimum number of words of the text for the system.
I. GIỚI THIỆU
Nhận dạng người nói phụ thuộc từ khóa (text
dependent speaker recognition) là kỹ thuật nhận dạng
người nói có khả năng ứng dụng rất lớn, ví dụ như
đăng nhập vào các hệ thống an ninh bằng mật khẩu
tiếng nói hay truy cập bằng tiếng nói vào các hệ thống
giao dịch ngân hàng trên mạng điện thoại thông qua
mã số cá nhân (số PIN)... Do tận dụng được các thông
tin biết trước là nội dung tiếng nói khi huấn luyện cũng
như khi nhận dạng nên độ chính xác nhận dạng tăng
lên trong khi thời gian huấn luyện và nhận dạng lại
giảm nhiều so với nhân dạng người nói không phụ
thuộc từ khóa (text independent speaker recognition).
Tuy nhiên hạn chế của kỹ thuật này là không có sự
thay đổi trong mật khẩu nên hệ thống dễ bị tấn công
bởi những kẻ giả mạo bằng cách ghi âm lại mật khẩu
và tấn công hệ thống. Để chống lại điều này, nhiều hệ
thống đã thay đổi các cụm từ mật khẩu. Chẳng hạn
trong trường hợp cụm từ là các số, hệ thống sẽ sinh
một cụm từ mật khẩu là một dãy số ngẫu nhiên nào đó
và thông báo nó mỗi khi có người đăng nhập hệ thống.
Các nghiên cứu chỉ ra rằng việc sử dụng các dãy số và
một số các từ cố định trong cụm từ mật khẩu khá hiệu
quả khi chống lại sự giả mạo theo kiểu ghi âm từ khóa
[1]. Trong pha huấn luyện, những người đăng ký sẽ nói
các số và một số các từ cố định. Khi nhận dạng, hệ
thống sẽ thay đổi cụm từ mỗi lần đăng nhập trong tập
các từ được huấn luyện. Mặc dù việc nhận dạng này
vẫn là phụ thuộc từ khóa song nó làm cho sự giả mạo
trở nên khó khăn hơn rất nhiều vì không biết được
chính xác cụm từ mật khẩu tự sinh của hệ thống. Các
hệ thống như vậy được gọi là các hệ nhận dạng người
nói phụ thuộc từ khóa thay đổi (text prompted speaker
recognition).
Trên phương diện ngữ âm, tiếng Việt là một ngôn
ngữ đơn âm tiết do vậy độ dài từ khóa ở đây được xác
định là số âm tiết trong từ khóa. Trong trường hợp
cụm từ khóa là các số tự nhiên từ 0 đến 9, từ khóa (tức
mật khẩu từ sinh của hệ thống) sẽ là một dãy số ngẫu
nhiên nào đó, ví dụ 5372693 là một từ khóa có độ dài
là 7 âm tiết. Vấn đề đặt ra ở đây là độ dài từ khóa tự
sinh của hệ thống bằng bao nhiêu thì hợp lý. Nếu quá
ngắn độ chính xác nhận dạng sẽ khó được đảm bảo,
ngược lại nếu quá dài thời gian nhận dạng sẽ tăng lên
nhưng độ chính xác nhận dạng liệu có tăng như mong
muốn hay chỉ tiêu tốn thêm thời gian nhận dạng. Với
các ngôn ngữ khác vấn đề này cũng đã được đặt ra. Ví
dụ như với tiếng Thái, cũng là một ngôn ngữ đơn âm
tiết và có thanh điệu như tiếng Việt, các tác giả trong
[6] đã sử dụng các đặc trưng là các hệ số LPCC và
mạng nơron perception nhiều lớp (MLP) để phân lớp
người nói các con số bằng tiếng Thái, kết quả cho thấy
khi độ dài từ khóa lớn hơn 4 độ chính xác nhận dạng
hầu như không tăng hoặc tăng không đáng kể. Bài viết
này trình bày các kết quả khảo sát độ chính xác nhận
Xây dựng và khảo sát độ dài từ khóa trong nhận dạng người
nói phụ thuộc vào từ khóa tiếng Việt theo mô hình Markov ẩn
Developing and Studying the Length of the Text in Vietnamese Text
Dependent Speaker Recognition by HMM
Ngô Minh Dũng, Đặng Văn Chuyết
Tạp chí BCVT & CNTT kỳ 3 10/2007
- 94 -
dạng người nói với các độ dài cụm từ mật khẩu khác
nhau của một hệ thống nhận dạng người nói phụ thuộc
từ khóa thay đổi theo mô hình Markov ẩn (HMM) với
tập từ khóa huấn luyện là các âm tiếng Việt từ số 0 đến
số 9 .
Bài viết gồm 5 phần. Ngoài phần giới thiệu này,
phần 2 sẽ trình bày về lựa chọn vector đặc trưng và mô
hình phân lớp cho người nói khi xây dựng hệ nhận
dạng người nói phụ thuộc từ khóa là các âm tiết tiếng
Việt. Phần 3 trình bày cơ sở dữ liệu tiếng nói để huấn
luyện, kiểm tra hệ thống và lựa chọn phương pháp
nghiên cứu. Phần 4 xây dựng một hệ nhận dạng người
nói phụ thuộc từ khóa thay đổi theo mô hình HMM.
Phần 5 là kết quả khảo sát mô hình được đề xuất theo
độ dài từ khóa và kết luận đánh giá.
II. LỰA CHỌN VECTOR ĐẶC TRƯNG VÀ MÔ
HÌNH PHÂN LỚP NGƯỜI NÓI
Cũng giống như khi xây dựng các hệ nhận dạng tự
động, hai vấn đề luôn được đặt ra khi xây dựng hệ
nhận dạng người nói đó là trích chọn đặc trưng nào và
lựa chọn mô hình phân lớp như thế nào cho nhận dạng
người nói.
1. Trích chọn các đặc trưng người nói
Việc trích chọn đặc trưng người nói có một ý nghĩa
hết sức quan trọng, tác dộng trực tiếp tới độ chính xác
nhận dạng của hệ nhận dạng người nói. Với các hệ
nhận dạng người nói nói chung, các đặc trưng về người
nói được trích chọn có thể chia ra 2 nhóm. Nhóm một
bao gồm các loại đặc trưng mang thông tin về tiếng nói
như các tần số formant, tần số âm cơ bản, hay năng
lượng… Nhóm hai gồm các loại đặc trưng mang thông
tin về đường bao phổ như các hệ số dự đoán tuyến tính
(LPC), các hệ số cepstrum, các hệ số cepstrum dự
đoán tuyến tính (LPCC) hay các hệ số ceptrum tần số
Mel (MFCC).... Các nghiên cứu về nhận dạng người
nói đều chỉ ra rằng, các đặc trưng thuộc nhóm hai hiệu
quả hơn so với nhóm một. Trong số các loại đặc trưng
mang thông tin về đường bao phổ, họ các hệ số
ceptrum có khả năng phân biệt người nói tốt hơn so
với các đặc trưng khác do các hệ số này khai thác khá
tốt các đặc tính của tuyến âm, một trong các đặc tính
quan trọng nhất phân biệt giọng nói người này với
người khác.
Để xây dựng hệ nhận dạng người nói phụ thuộc từ
khóa cho tiếng Việt chúng tôi chọn các hệ số MFCC
làm đặc trưng trích chọn vì so với các đặc trưng khác
việc tính toán MFCC không quá phức tạp. Và một
thực tế là rất nhiều hệ nhận dạng người nói hiện nay
trên thế giới sử dụng các hệ số MFCC làm đặc trưng
trích chọn. Việc lựa chọn số hệ số MFCC dựa trên
những yêu cầu khác nhau về độ chính xác nhận dạng
hay tốc độ tính toán, tùy theo từng tác giả, có thể chọn
bằng 12 như tác giả J.E. Higgins and R.I.Damper
trong [2], bằng 15 như Chai Wutiwiwachai và các
cộng sự trong [3] hay thậm chí là 20 như tác giả Minh
N Do trong [4]. Với hệ thống nhận dạng khảo sát ở
đây chúng tôi đã chọn số hệ số MFCC bằng 19 sau khi
đã bỏ đi hệ số đầu tiên. Việc lựa chọn số hệ số MFCC
này dựa trên kết quả khảo sát độ chính xác nhận dạng
người nói của các âm tiết tiếng Việt đã được chúng tôi
trình bày trong [12]. Còn việc loại bỏ hệ số MFCC đầu
tiên do hệ số này mang thông tin về thành phần một
chiều, một thông tin không có ý nghĩa phân biệt người
nói [5].
Tất cả các đặc trưng người nói trên được gọi chung
các đặc trưng tĩnh. Bên cạnh đó còn có các đặc trưng
động biểu diễn tốc độ cũng như gia tốc thay đổi của
các đặc trưng tĩnh. Các đặc trưng động này còn được
gọi là các tham số Delta và Delta-Delta của các đặc
trưng nguyên mẫu (tức các đặc trưng tĩnh). Rất nhiều
hệ nhận dạng người nói được xây dựng dựa trên các
đặc trưng nguyên mẫu kết hợp với các tham số Delta
cũng như các tham số Delta-Delta của chúng như trong
[2] chẳng hạn và kết quả nhận dạng thực sự đã tăng
lên so với khi chỉ dùng các đặc trưng nguyên mẫu. Một
khảo sát nhận dạng người nói dựa trên mô hình HMM
và các đặc trưng MFCC trong [11] đã chỉ ra sai số
nhận dạng người nói giảm từ 11.22% xuống còn
10.33% khi các đặc trưng là các hệ số MFCC được kết
hợp với tham số Delta và xuống còn 10.05% khi kết
hợp thêm cả với tham số Delta-Delta.
Tuy nhiên, việc kết hợp này cũng có một số nhược
điểm. Thứ nhất, việc kết hợp này sẽ làm không gian
Tạp chí BCVT & CNTT kỳ 3 10/2007
- 95 -
vector đặc trưng tăng lên 2 đến 3 lần so với không gian
vector đặc trưng nguyên mẫu, và do vậy sẽ phải đòi
hỏi nhiều dữ liệu hơn cho huấn luyện cũng như khi
nhận dạng người nói, và hệ lụy là thời gian tính toán
cũng phải tăng lên. Hơn nữa, do phạm vi thay đổi của
các tham số Delta và các đặc trưng nguyên mẫu là
không như nhau do vậy cần phải chuẩn hóa trước khi
kết hợp chúng vào trong một không gian vector đặc
trưng duy nhất và điều đó cũng làm tiêu tốn thêm thời
gian xử lý. Bên cạnh đó là việc xác định giá trị tối ưu
cho kích thước cửa sổ hồi quy khi xác định các tham
số Delta và Delta-Delta là không dễ dàng khi mà tốc
độ cũng như gia tốc thay đổi của các hệ số của đặc
trưng nguyên mẫu là không như nhau. Cuối cùng, một
số khảo sát cho thấy nếu chỉ sử dụng các tham số
Delta thì độ chính xác nhận dạng người nói thấp hơn
nhiều so với khi chỉ sử dụng các đặc trưng nguyên mẫu
[5]. Điều này chứng tỏ các đặc trưng tĩnh mang thông
tin về người nói nhiều hơn so với các đặc trưng động.
Đứng trước sự lựa chọn giữa độ chính xác và tốc độ
xử lý, trong nghiên cứu ở đây chúng tôi chỉ sử dụng
các đặc trưng nguyên mẫu là 19 hệ số MFCC.
2. Mô hình phân lớp người nói
Do trong các hệ nhận dạng người nói phụ thuộc từ
khóa, số lượng từ khóa thường bị giới hạn trong một số
từ (word) hoặc một số cụm từ/câu cố định (phrase),
nên mô hình người nói của các hệ này thường dựa trên
chính các từ hoặc các cụm từ cố định đó. Việc xác
định từ hay cụm từ hay một đơn vị ngôn ngữ nào đó để
xây dựng mô hình người nói cần phải được đặt ra
trước khi lựa chọn mô hình thích hợp. Thông thường
các đơn vị ngôn ngữ dùng để xây dựng mô hình người
nói là các cụm từ, từ và dưới mức từ (âm tiết (syllable)
hay âm vị (phoneme) …). Các mô hình người nói dựa
trên các đơn vị ngôn ngữ khác nhau có các ưu nhược
điểm khác nhau và việc lựa chọn đơn vị nào là tùy
thuộc vào từng ứng dụng cụ thể. Một khảo sát hệ nhận
dạng người nói tiếng Anh trong [9] cho thấy mô hình
người nói dựa trên các cụm từ có khả năng nhận dạng
người nói tốt nhất, tiếp đến là mô hình dựa trên các từ,
trong khi các mô hình dựa trên âm vị cho kết quả kém
nhất. Tuy nhiên, nhược điểm chính của các mô hình
cụm từ là từ khóa bị cố định hoàn toàn và vì thế tính
bảo mật không cao. Ngược lại mô hình dựa trên âm vị
rất linh hoạt, chỉ với một số nhỏ các âm vị cũng có thể
tạo ra vô số các từ khóa khác nhau. Dung hòa giữa 2
loại này chính là các mô hình dựa trên các từ. Về tính
khả thi, việc dán nhãn tự động cho các âm vị là một
bài toán rất khó trong khi đó với mức từ, bài toán dán
nhãn vẫn có tính khả thi hơn nhiều đặc biệt với lối nói
rời rạc. Còn với tiếng Việt thì sao? Khác với tiếng Anh
là ngôn ngữ đa âm tiết (mỗi từ gồm nhiều âm tiết),
tiếng Việt là ngôn ngữ đơn âm tiết và ranh giới giữa
đơn vị phát âm nhỏ nhất (âm tiết) trùng với ranh giới
giữa đơn vị ngôn ngữ có nghĩa nhỏ nhất (hình vị ) [13],
do vậy không như tiếng Anh, vai trò của âm tiết trong
ngữ âm tiếng Việt lớn hơn rất nhiều. Rõ ràng việc xây
dựng các mô hình người nói cho tiếng Việt dựa trên
đơn vị ngôn ngữ là âm tiết / hình vị sẽ giúp làm dễ
dàng hơn khi dán nhãn tự động các âm tiết cũng như
khi tổ hợp chúng để tạo ra các từ khóa khác nhau.
Hiện có nhiều mô hình phân lớp nhận dạng cho hệ
nhận dạng người nói phụ thuộc từ khóa đã được nghiên
cứu như phương pháp đối sánh mẫu áp dụng thuật
toán gói thời gian động (DTW) [5], nhận dạng bằng
mạng nơron perception nhiều lớp (MLP) [7], hay sử
dụng mô hình thống kê như mô hình Markov ẩn
(HMM) [2] [8]…. Trong đó nhận dạng bằng mô hình
HMM được đánh giá là có tính hiện thực cao, do mô
hình này còn đề cập đến yếu tố thay đổi theo thời gian
của tiếng nói. Trong một khảo sát so sánh khả năng
nhận dạng người nói phụ thuộc từ khóa của cả 3 loại
mô hình DTW, MLP và HMM các tác giả trong [10]
cũng chỉ ra mô hình HMM cho độ chính xác cao nhất.
Nhìn chung một mô hình HMM có thể coi như bộ
sinh trạng thái hữu hạn, áp dụng trong nhận dạng
người nói thì mỗi trạng thái của mô hình này có thể
biểu diễn một âm vị hay một vị trí tương đối tĩnh của
cơ quan cấu âm, còn chuỗi quan sát là chuỗi các vector
đặc trưng được trích chọn. Thông tin thời gian được
mã hóa bằng việc chuyển từ trạng thái này sang trạng
thái khác theo chuỗi chuyển tiếp. Thời gian tiêu tốn
trên mỗi trạng thái không giống nhau tùy thuộc vào
tiếng nói mỗi người. Do vậy chúng tôi đã chọn mô hình
Tạp chí BCVT & CNTT kỳ 3 10/2007
- 96 -
Markov ẩn có hàm mật độ xác suất liên tục (continue
density HMM) với các trạng thái chuyển đổi từ trái
qua phải để biểu diễn các âm tiết của người nói tiếng
Việt
Do cấu tạo của mỗi âm tiết tiếng Việt có ít nhất là 1
âm vị và nhiều nhất là 5 âm vị [13], nên việc chọn số
trạng thái cho mô hình HMM biểu diễn một âm tiết
tiếng Việt có thể thay đổi từ 3 cho đến 7 trạng thái tùy
thuộc từng âm tiết. Tuy nhiên, nếu chúng ta coi mỗi
trạng thái chỉ đơn giản là tương ứng với một vị trí
tương đối tĩnh của cơ quan cấu âm thì việc chọn số
trạng thái bằng 7 cho mô hình HMM biểu diễn mỗi âm
tiết tiếng Việt là hợp lý nhất.
Thực tế với hệ thống nhận dạng khảo sát ở đây
chúng tôi đã chọn mô hình Markov ẩn có hàm mật độ
xác suất liên tục (CDHMM) với 7 trạng thái chuyển
đổi từ trái qua phải (bao gồm cả 2 trạng thái bắt đầu
và kết thúc) để xây dựng mô hình cho từng người nói
trong hệ nhận dạng này. Một nghiên cứu khảo sát độ
chính xác nhận dạng người nói dựa trên âm tiết tiếng
Việt trước đây của chúng tôi [12] cũng chỉ ra rằng việc
lựa chọn số trạng thái bằng 7 cho loại mô hình này là
giá trị tối ưu. So với tiếng Hán, một ngôn ngữ cũng có
đặc trưng đơn âm tiết và có thanh điệu như tiếng Việt,
khi sử dụng mô hình HMM chuyển đổi trạng thái từ
trái qua phải với các đặc trưng là các hệ số LPCC để
xây dựng mô hình người nói cho từng âm tiết tiếng
Hán, các tác giả trong [10] đã chỉ ra số trạng thái bằng
6 cho độ chính xác nhận dạng người nói tốt nhất.
III. CƠ SỞ DỮ LIỆU TỪ KHÓA VÀ LỰA
CHỌN PHƯƠNG PHÁP NGHIÊN CỨU
Như đã nói ở trên, để nghiên cứu khả năng nhận
dạng người nói theo độ dài từ khóa chúng tôi chọn cụm
từ khóa là các số và hệ thống sẽ sinh một cụm từ mật
khẩu là một dãy số ngẫu nhiên. Tập từ khóa huấn
luyện là các âm tiếng Việt từ số 0 đến số 9, đó là các
âm tiết: “Không”, “Một”, “Hai”, “Ba”, “Bốn”, “Năm”,
“Sáu”, “Bẩy”, “Tám”, “Chín”. Cơ sở dữ liệu gồm 140
người nói (61 nam, 79 nữ độ tuổi từ 20 đến 55 và đều
nói giọng Bắc bộ), mỗi người nói 15 lần các âm tiết
trên trực tiếp vào micro của máy tính trong những
khoảng thời gian khác nhau, trong môi trường văn
phòng. Một chương trình cho phép thu và ghi tự động
tín hiệu âm thanh của mỗi âm tiết trong khoảng thời
gian 1 giây. Với từng âm tiết, mỗi lần phát âm của mỗi
người được lấy mẫu ở tần số 11025 Hz, mã hóa PCM,
16 bit, mono và lưu dưới một file wav riêng. Với mỗi
người nói, các file âm thanh dữ liệu của 10 lần phát âm
đầu được dùng để huấn luyện hệ thống, còn các file
của 5 lần sau được dùng để kiểm tra.
Với một cơ sở dữ liệu là các âm tiết rời rạc thuộc
từng file âm thanh khác nhau như vậy, việc nghiên cứu
khả năng nhận dạng người nói theo độ dài từ khóa có
thể được thực hiện bằng một trong hai phương pháp
sau.
Phương pháp thứ nhất, thực hiện việc sinh ra dãy số
ngẫu nhiên trong miền thời gian bằng cách kết hợp
ngẫu nhiên các âm tiết rời rạc từ các file dữ liệu âm
thanh của các số từ 0 đến 9. Với mỗi dãy số sinh ra,
xây dựng một hệ nhận dạng người nói phụ thuộc từ
khóa và đánh giá độ chính xác nhận dạng của nó.
Khảo sát so sánh độ chính xác nhận dạng của các hệ
nhận dạng người nói phụ thuộc từ khóa này theo độ dài
từ khóa. Phương pháp này khá tốn kém do số lượng
dãy số ngẫu nhiên sinh ra rất lớn nên chỉ có thể khảo
sát trên một số hệ nhận dạng người nói đại diện nào đó
mà thôi.
Phương pháp thứ hai, thực hiện việc sinh ra dãy số
ngẫu nhiên trong miền tham số. Cách này thay vì phải
xây dựng rất nhiều các hệ nhận dạng người nói phụ
thuộc từ khóa như trên, trong pha huấn luyện ta chỉ
xây dựng 10 hệ nhận dạng người nói ứng với các 10 từ
khóa lần lượt là các âm tiết từ “không” đến “chín”.
Quyết định đầu ra của hệ thống sẽ là sự kết hợp đầu ra
của 10 hệ nhận dạng người nói phụ thuộc từ khóa này.
Việc khảo sát độ chính xác nhận dạng người nói theo
độ dài từ khóa sẽ được thực hiện bằng cách thay đổi số
lượng kết hợp đầu ra của các hệ nhận dạng này. Như
vậy về bản chất phương pháp này chính là xây dựng
một hệ nhận dạng người nói phụ thuộc từ khóa thay
đổi không chỉ nội dung mà cả độ dài từ khóa. Rõ ràng
phương pháp thứ hai này tỏ ra khả thi hơn phương
pháp đầu và chúng tôi đã quyết định chọn phương
Tạp chí BCVT & CNTT kỳ 3 10/2007
- 97 -
pháp này để nghiên cứu khảo sát.
IV. XÂY DỰNG HỆ NHẬN DẠNG NGƯỜI NÓI
PHỤ THUỘC TỪ KHÓA THAY ĐỔI
Như mọi hệ nhận dạng tự động khác, nhận dạng
người nói phụ thuộc từ khóa thay đổi cũng bao gồm
hai pha, pha huấn luyện (hay pha học) và pha nhận
dạng. Để xây dựng hệ nhận dạng người nói phụ thuộc
từ khóa thay đổi là các chuỗi số khác nhau trước hết hệ
thống phải được huấn luyện tập từ khóa là các âm tiết
từ số 0 đến số 9 như đã nói ở trên (pha huấn luyện).
Trong pha này, hệ thống được huấn luyện như khi xây
dựng các hệ nhận dạng người nói phụ thuộc từ khóa là
các âm tiết rời rạc từ 0 đến 9 (hình 1a). Đầu tiên tín
hiệu tiếng nói từ các file âm thanh dữ liệu được loại bỏ
các khoảng lặng. Sau đó tín hiệu này được phân
khung, mỗi khung khoảng 25ms với độ chồng khung
50% và được hiệu chỉnh (bù suy giảm vùng tần số cao)
bằng một bộ lọc thông cao. Sử dụng hàm cửa sổ
Hamming để tối thiểu hóa sự ngắt quãng của tín hiệu
tại điểm đầu và cuối của mỗi khung. Tiếp đến các hệ
số MFCC (vector đặc trưng) sẽ được trích chọn trên
mỗi khung tín hiệu.
Trong quá trình huấn luyện, với mỗi người nói,
chuỗi các vector đặc trưng của 10 lần phát âm đầu ứng
với từng âm tiết nói trên sẽ được đưa vào huấn luyện.
Áp dụng thuật toán vọng
số cực đại EM
(Expectance
Maximization) cho quá
trình huấn luyện để tính
toán các tham số của các
mô hình HMM cho từng
người nói.
Trong pha nhận dạng,
nguyên lý làm việc của hệ
nhận dạng người nói.phụ
thuộc từ khóa có độ dài
không đổi được xây dựng
từ các hệ nhận dạng người
nói phụ thuộc từ khóa đơn
âm tiết như trên sơ đồ
(hình 1b). Đầu tiên bộ tạo
số ngẫu nhiên tạo chuỗi số
bất kỳ có độ dài M.
Người được nhận dạng sẽ
phải phát âm chuỗi số này
một cách rời rạc từng số
một vào hệ thống. Ở đây,
để tiện việc kiểm tra, bất
kỳ lần nào trong số 5 lần
phát âm còn lại của mỗi
âm tiết từ 0 đến 9 của mỗi
người nói có trong cơ sở
dữ liệu sẽ được dùng để
Hình 1a: Pha huấn luyện hệ nhận dạng người nói phụ thuộc từ khóa thay đổi
Hình 1b: Pha nhận dạng hệ nhận dạng người nói phụ thuộc từ khóa thay đổi
Tạp chí BCVT & CNTT kỳ 3 10/2007
- 98 -
kiểm tra. Quá trình trích chọn đặc trưng (các hệ số
MFCC) được tiến hành như trong pha huấn luyện.
Chuỗi vector đặc trưng trích chọn từ mỗi âm tiết được
coi là chuỗi quan sát, áp dụng thuật toán Viterbi để
tính xác suất tích lũy của chuỗi quan sát phù hợp nhất
với mỗi mô hình trong quá trình nhận dạng của hệ
thống. Tổ hợp xác xuất tích lũy từ các âm tiết được
thực hiện theo phương pháp tổng logarit các xác suất
thành phần Quyết định nhận dạng người thứ i trong cơ
sở dữ liệu N người nói được thực hiện theo hàm quyết
định sau:
( )( )arg max arg max log ,
M
n
m
i y p x ω m n
=
é ù= =ë û å
1
Trong đó:
yn: điểm số đối sánh của người thứ n trong tập dữ
liệu N người nói (1 £ n £ N)
M: độ dài từ khóa
p(x|w(m,n)): xác suất của mô hình markov ẩn
(w(m,n)) của âm tiết thứ m của người thứ n với chuỗi
quan sát x.
Như vậy, nếu lấy thời gian phát âm trung bình của
một âm tiết tiếng Việt vào khoảng 300ms thì hệ nhận
dạng người nói này có thời gian tín hiệu tiếng nói dùng
cho pha huấn luyện là