Giới thiệu bài toán nhận dạng người nói n d i nói speaker recognition c g i là sinh trNhậ ạng ngườ , hay còn đượ ọ ắc học người nói speaker biometrics là lĩnh vực bao gồm các bài toán đị
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
CHUYÊN NGÀNH: CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC:
NGUYỄN BÌNH MINH
Hà Nội – 2018
Trang 3LỜI CAM ĐOAN Tôi – Nguy n Anh Tu n ấ – xin cam đoan
• Luận văn tốt nghi p (LVTN) Thệ ạc sĩ này là công trình nghiên cứu c a b n ủ ảthân tôi dướ ự hưới s ng d n c a Tiẫ ủ ến sĩ Nguy n Bình Minh
• Các k t qu nêu trong Luế ả ận văn tốt nghi p là trung th c, không ph i là sao ệ ự ảchép toàn văn của bấ ỳt k công trình nào khác
Hà Nộ i, ngày 08 tháng 09 năm 2018
Tác giả LVTN
Nguyễ n Anh Tu n ấ
Trang 4L I CỜ ẢM ƠN
Đầu tiên, tôi xin được g i l i cử ờ ảm ơn sâu sắc nh t t i Th y giáo Tiấ ớ ầ – ến sĩ Nguy n Bình Minh – Phó trưởng b môn H ộ ệ thống thông tin, Vi n Công ngh ệ ệthông tin và Truyền thông, Trường Đại h c Bách Khoa Hà N ọ ội Thầ đã tậy n tình hướng d n và cho tôi nh ng l i khuyên quý báu trong quá trình th c hi n luẫ ữ ờ ự ệ ận văn này
Tiếp theo, tôi xin chân thành cảm ơn các thầy cô trong Vi n Công ngh thông ệ ệtin và truy n thông, Viề ện đào tạo sau đại h cọ , Trường Đạ ọi h c Bách Khoa Hà N i ộ
đã tạo điều ki n cho ệ tôi trong quá trình h c t p và nghiên c u t i trư ng ọ ậ ứ ạ ờ
Tôi cũng xin chân thành cảm ơn Trung tâm Công ngh lõi, Vi n Ch ệ ệ ỉ huy điều khi n, ể Viện Nghiên c u và Phát tri n Viettel, Tứ ể ập đoàn Công nghi p - ệ Vi n thông Quân độ đã giúp đỡ ạo điềi , t u ki n công tác và h c t p ệ ọ ậ cho tôi trong quá trình tôi
học tập và thực hiện luận văn ạ t i Trường Đại h c Bách Khoa Hà N i ọ ộ
Cuối cùng, tôi xin bày t lòng cỏ ảm ơn tới những người thân trong gia đình, bạn
bè đã động viên và giúp đỡ để tôi hoàn thành b n luả ận văn này
Hà Nộ i, ngày 08 tháng 09 năm 2018
Tác giả LVTN
Nguyễ n Anh Tu nấ
Trang 5M C L C Ụ Ụ
LỜI CAM ĐOAN 1
LỜI CẢM ƠN 2
DANH MỤC KÝ HI U, CÁC CH ẾT TẮT 6Ệ ỮVI DANH MỤC CÁC BẢNG 7
DANH MỤC HÌNH VẼ, ĐỒ TH 8Ị M Ở ĐẦU 10
CHƯƠNG I ĐẶT V N Đ 11Ấ Ề 1 Gi i thi u bài toán nh n dớ ệ ậ ạng người nói 11
2 Phân loại bài toán nhận dạng người nói 11
3 M c tiêu cụ ủa luận văn 13
4 Ph m vi luạ ận văn 14
5 C u trúc luấ ận văn 14
CHƯƠNG II CƠ SỞ LÝ THUY T NH N DẾ Ậ ẠNG NGƯỜI NÓI 16
1 T ng quan h ổ ệthống nh n dậ ạng người nói 16
1.1 Lựa chọn đặc trưng 17
1.2 Mô hình người nói 19
2 Trích xuấ ặc trưngt đ 20
2.1 T ng quan các dổ ạng đặc trưng 20
2.2 Trích xuấ ặc trưng MFCCt đ 22
2.3 Nh n xét v trích xuậ ề ấ ặc trưng MFCCt đ 26
3 Phương pháp mô hình hóa người nói cơ bản 26
3.1 Vector Quantization (VQ) 27
3.2 Gaussian Mixture Model (GMM) 33
Trang 63.3 Nh n xét v các thuậ ề ật toán mô hình hóa người nói cơ bản 36
CHƯƠNG III CÁC MÔ HÌNH NGƯỜI NÓI NÂNG CAO 38
1 Mô hình UBM 38
2 Mô hình GMM-UBM 40
3 Mô hình GMM-SVM 43
3.1 Supervectors GMM 43
3.2 Support Vector Machines 45
4 Nh n xét v các thuậ ề ật toán mô hình người nói nâng cao 48
CHƯƠNG IV THỰC NGHIỆM VÀ ĐÁNH GIÁ KẾT QU 49Ả 1 D u th nghi m 49ữliệ ử ệ 1.1 Chi tiết các bộ ữ liệ d u g c 49ố 1.2 Các b d u dùng trong th c nghi m 51ộ ữliệ ự ệ 2 Các thu t toán dùng trong th c nghi m 51ậ ự ệ 2.1 Thu t toán trích xuậ ấ ặc trưngt đ 51
2.2 Thuật toán mô hình hóa người nói 52
3 Tham s ố đánh giá 56
4 Kịch bản thực nghiệm 57
5 Kết quả thực nghiệm 58
5.1 Cấu hình môi trường thực nghiệm 58
5.2 Kết quả ịch bả k n thực nghiệm 59
6 Nh n xét chung 75ậ CHƯƠNG V HỆ TH NG CH M CÔNG T Ố Ấ Ự ĐỘNG D A TRÊN NH N Ự Ậ DẠNG GIỌNG NÓI 77
1 T ng quan h ổ ệthống 77
Trang 72 Thiết kế ệ thống h 78 2.1 Lưu đồ ho t đ ng 78ạ ộ 2.2 Sơ đồthiết kế ớ l p 79 2.3 Sơ đồ ầ ự tu n t 82
3 Hướng d n s d ng 85ẫ ử ụ 3.1 Ghi nhận người nói 85 3.2 Định danh người nói 86 CHƯƠNG VI KẾT LUẬN VÀ HƯỚNG PHÁT TRI N TI P THEO 88Ể Ế
1 T ng k t 88ổ ế
2 Hướng phát tri n ti p theo 89ể ế DANH MỤC THAM KH O 90Ả
Trang 8DANH MỤC KÝ HI U, CÁC CH Ệ ỮVIẾT T T Ắ
T viừ ết tắt Nghĩa tiếng Anh Nghĩa tiếng Vi t ệ
Confusion Matrix Phương pháp biểu th k t qu ị ế ả
Random Forest Thuật toán h c máy R ng ng u ọ ừ ẫ
nhiên Speaker recognition Nhận dạng người nói
Speaker verification Xác nhận người nói
Speaker identification Định danh người nói
SVM Support vector machine Thuật toán h c máy SVM ọ
Text-independent Độ ậc l p n i dung ộ
Text-dependent Phụ thu c n i dung ộ ộ
UBM Universal background model Mô hình nền ph quát ổ
VQ Vector quantization Phương pháp lượng t hóa ử
vector Lưu ý: Để đả m b o tính ả đơn giản và nh t quán c a luấ ủ ận văn, mộ ốt s thu t ậ
ng ho c t t t t ti ng Anh s ữ ặ ừviế ắ ế ẽ được s d ng tr c ti p trong luử ụ ự ế ận văn thay vì dịch sang ti ng Vi t (do không có t ế ệ ừ sát nghĩa hoặc không th diể ễn đạt ng n g n b ng ắ ọ ằ
tiế ng Vi t) ệ
Trang 10DANH MỤC HÌNH V , Đ TH Ẽ Ồ Ị
Hình 1 - T ng quan h ổ ệthống nh n dậ ạng người nói 16
Hình 2 - Phân loại đặc trưng dựa trên biểu di n thông tin vật lý 18
Hình 3 - Các bước trong phương pháp tính MFCC 23
Hình 4 - Biểu di n c a 24-band filter lên ph t n s t 0-4000 Hz 25ủ ổ ầ ố ừ Hình 5 - Minh họa thuật toán VQ 27
Hình 6 - Sơ đồ mô hình hóa người nói s d ng VQ 28ử ụ Hình 7 - Minh họa K-means v i K = 3 30ớ Hình 8 - Minh họa thuật toán LBG 31
Hình 9 - Sơ đồ mô hình hóa người nói s d ng GMM 35ử ụ Hình 10 - Mô hình thích nghi MAP v i 4 thành ph n Gaussian c a UBM 42ớ ầ ủ Hình 11 Quá trình xây d- ựng supervector t ừ đoạn âm thanh người nói 44
Hình 12 - Minh họa bài toán SVM tuy n tính 55ế Hình 14 - Confusion Matrix s d ng trích xuử ụ ất đặc trưng MFCC-B 60
Hình 15 - Confusion Matrix s d ng trích xuử ụ ất đặc trưng MFCC-D 61
Hình 16 - Confusion Matrix s d ng trích xuử ụ ất đặc trưng MFCC-DD 61
Hình 17 - Confusion matrix s dử ụng GMM mô hình hóa người nói 63
Hình 18 - Confusion matrix s d ng GMM-ử ụ UBM mô hình hóa người nói 64
Hình 19 - Confusion matrix s dử ụng Random Forest mô hình hóa người nói 64
Hình 20 - Confusion matrix s d ng SVM tuyử ụ ến tính mô hình hóa người nói 65
Hình 21 - Confusion matrix s dử ụng SVM kernel RBF mô hình hóa người nói 65
Hình 22 - Confusion Matrix s dử ụng UBM để phát hiện người ngoài 68
Hình 23 - Confusion Matrix với bộ ữ liệ d u ti ng Viế ệt M-VIVOS 70
Hình 24 - Confusion Matrix với bộ ữ liệ d u ti ng Anh M-ế TIMIT 70
Hình 25 - Confusion Matrix với bộ ữ liệ d u ti ng Trung M-MANDR 71ế Hình 26 - Confusion Matrix s d ng GMM vử ụ ới dữ liệ u chứa nhi u 73
Hình 27 - Confusion Matrix s d ng GMM vử ụ ới dữ liệ u chứa nhi u 73 Hình 28 - Confusion Matrix s d ng Random Forest vử ụ ới dữ liệ u ch a nhi u 74ứ Hình 29 - Confusion Matrix s d ng L-SVM vử ụ ới dữ liệ u ch a nhi u 74ứ
Trang 11Hình 30 - Confusion Matrix s d ng RBF-SVM vử ụ ới dữ liệ u chứa nhi u 75
Hình 31 - Lưu đồ ghi nhận người nói 78
Hình 32 - Lưu đồ ể ki m th ử người nói 79
Hình 33 - Sơ đồthiết kế các lớp giao di n 80ệ Hình 34 - Sơ đồthiết kế các lớp thuật toán 81
Hình 35 – Sơ đồ ầ ự tu n t ghi nhận người nói 83
Hình 36 - Sơ đồtuầ ự địn t nh danh / chấm công người nói 84
Hình 37 Giao di - ện ghi nhận người nói 85
Hình 38 Giao di - ện định danh / chấm công người nói 86
Trang 12M Ở ĐẦU
X lý ti ng nói là mử ế ột lĩnh vực r ng l n liên quan t i nhi u vộ ớ ớ ề ấn đề khác nhau, trong đó có 2 hướng nghiên c u n i b t ứ ổ ậ được quan tâm hơn cả: nh n dậ ạng tiếng nói (speech recognition nh n d– ậ ạng điều gì đang được nói) và nh n d ng ậ ạngười nói (speaker recognition nh n d– ậ ạng ai đang nói) Bài toán nh n dậ ạng người nói có xuất phát điểm chậm hơn nhận d ng ti ng nói, bạ ế ắt đầu được nghiên c u t ứ ừ
đầu những năm 1960, tuy nhiên các k t qu nghiên c u trong nh n dế ả ứ ậ ạng người nói cũng đã đạt được nhi u thành tề ựu vượt b c Ví d ậ ụ điển hình c a nh n dủ ậ ạng người nói như các kỹ thu t nh n dậ ậ ạng và định v t i phị ộ ạm thông qua điện tho i, hay xác ạ
nh n b o m t tài kho n ngân hàng s d ng giậ ả ậ ả ử ụ ọng nói, … Nhận dạng người nói đã
và đang đượ ức ng d ng vào th c ti n trên nhi u khía cụ ự ề ạnh và đem lại nhi u l i ích ề ợ
to lớn
M t h ộ ệ thống nh n dậ ạng người nói thường bao g m 2 thành phồ ần cơ bản: thành ph n ghi nhầ ận người nói làm nhi m v hu n luyệ ụ ấ ện các mô hình người nói và ghi lưu vào cơ sở ữ ệ d li u thành ph; ần ki m th ể ử người nói làm nhi m v so sánh ệ ụđoạn h i tho i vộ ạ ới các mô hình trong cơ sở ữ ệ d li u, t ừ đó đưa ra kết lu n v ậ ề người nói K t lu n ế ậ ở đây có thể là định danh người nói (ch ỉ ra đó là ai trong tập cơ sở ữ d liệu) ho c xác nhặ ận người nói (ch p nh n / t chấ ậ ừ ối người nói v i đ nh danh t tuyên ớ ị ự
b ố)
làm sáng t ho ng c a h ng nh n d i nói, n
Để ỏ cơ chế ạt độ ủ ệthố ậ ạng ngườ luậ văn
s ẽ đưa ra tổng quan v ề các kĩ thuật trong nh n dậ ạng người nói, t p trung nh n m nh ậ ấ ạvào bài toán định danh người nói và c l p n i dung Lu n độ ậ ộ ậ văn ổt ng k m t s ết ộ ố kĩ thuậ ổ điểt c n và m i nhớ ất trong lĩnh vực, bắt đầu v i các khái niớ ệm cơ bản v t ề ự
động nh n d ng ậ ạ người nói, các kĩ thuật trích xuất đặc trưng và mô hình hóa người nói Bên cạnh đó luậ vănn còn cung cấp các so sánh, đánh giá, th c nghi m các k ự ệ ỹthuật nh n dậ ạng người nói, ng thđồ ời đi xây dựng m ứột ng d ng th c ti n h ụ ự là ệ
thống chấm công dựa trên nh n d ng gi ng nói ậ ạ ọ
Trang 13CHƯƠNG ĐẶI T V N Ấ ĐỀ
1 Giới thiệu bài toán nhận dạng người nói
n d i nói (speaker recognition c g i là sinh tr
người nói (speaker biometrics) là lĩnh vực bao gồm các bài toán định danh, xác
nh n, phân lo i các cá nhân dậ ạ … ựa trên đặc trưng giọng nói người đó Đầu những năm 1960, các nghiên cứu đầu tiên v nh n dề ậ ạng người nói được bắt đầu t i Bell ạLab do nhà nghiên c u Pruzansky khứ ởi xướng b ng vi c s dằ ệ ử ụng các b l c dộ ọ ải (filter bank) và tương quan hai phổ tín hi u s ệ ố để đưa ra một độ đo mức tương đồng (similarity measure) Đến năm 1980, Paul Mermelstein đưa ra lý thuyết v ề đặc trưng âm thanh MFCC (Mel frequency cepstral coefficient) cho phép trích xuất đặc trưng giọng nói hi u qu Ngày này, bên c nh vi c ng d ng các lý thuy t xác su t ệ ả ạ ệ ứ ụ ế ấ
để mô hình hóa gi ng nói ọ con người, học máy cũng đượ ức ng d ng và ch ng t ụ ứ ỏ
hi u qu trong vi c c i thi n chệ ả ệ ả ệ ất lượng các h ệthống nh n dậ ạng người nói
Nh n dậ ạng người nói là nh n diậ ện ngườ ừi t ng nói c a h Không có hai tiế ủ ọ
gi ng nói nào hoàn toàn gi ng nhau, b i vì s khác nhau v hình dọ ố ở ự ề ạng đường âm thanh, c u t o vòm h ng, ấ ạ ọ kích thướng khí qu n, thanh qu n và các b ph n khác ả ả ộ ậtrong các cơ quan sinh tiếng nói Ngoài các khác biệt th ể lý đó, mỗi ngườ ại cũng i l
có những đặc trưng riêng về phong cách nói chuy n, bao g m chệ ồ ất âm địa phương,
nhịp điệu nói chuy n, cách th c phát âm, thói quen l a ch n t ệ ứ ự ọ ừ ngữ… Bên cạnh
nh n d ng d a trên khuôn m t, nh n d ng d a trên giậ ạ ự ặ ậ ạ ự ọng nói đã được gi i nghiên ớ
cứu đầu tư quan tâm cũng như ứng d ng thành công trong r t nhiụ ấ ều lĩnh vực của cuộ ốc s ng, ví d ụ như trong điều tra trinh thám (phát hi n t i ph m trong các cu c ệ ộ ạ ộ
g i trên m ng vi n thông), các h ọ ạ ệthống h khách hàng qua tỗtrợ ổng đài thoại (nhận
d ng khách hàng ho c xác th c khách hàng), phân tích nhạ ặ ự ật kí người nói (xác định người nào nói khi nào)
2 Phân lo i bài toán nhạ ận dạng người nói
Lý thuy t v nh n dế ề ậ ạng người nói có th phân lo i thành các nhánh nghiên ể ạ
cứu như sau (Beigi, 2011):
Trang 14Xác nhận người nói (Speaker verification):
Trong h ệ thống xác nhận người nói, cá nhân c n ầ đưa ra tuyên bố ề đị v nh danh c a ủ mình thông qua phương thức nh p tên, ID,ậ … từ đó hệthống truy xu t ra ấ
mô hình người nói tương ứng Tiếp đó, cá nhân này sẽ nói một đoạn h i tho i ộ ạ(thường theo m t nộ ội dung định trước) Tín hi u ti ng nói cệ ế ủa đoạn h i tho i s ộ ạ ẽđược so sánh v i mớ ô hình người nói, t ừ đó làm kết qu xác nhả ận xem người này có đúng là người theo định danh đã được cung c p hay không ấ
i nói (Speaker identification):
i nói (Speaker classification):
Phân loại ngườ
Phân loại người nói được ứng d ng nhi u nh t trong phân lo i gi i tính và ụ ề ấ ạ ớphân lo i nhóm tu i d a trên giạ ổ ự ọng nói Bài toán này thường ng d ng nhi u các ứ ụ ềđặc trưng thể lý trong vi c xây d ng mô hình ệ ự
i nói (Speaker segmentation):
Phân đoạn ngườ
n âm thanh thành các ph n có ch a gi ng nói c i, ph n ch
nhạc, phần chứa tiếng thú vật, tiếng tàu xe…
i nói (Speaker detection):
Phát hiện ngườ
Trang 15Phát hi n m t hay nhi u cá nhân c ệ ộ ề ụthể trong m t chu i âm thanh Phát hiộ ỗ ện người nói ng d ng c các k thuứ ụ ả ỹ ật phân đoạn người nói và xác nhận/định danh người nói
Trong các nhánh nghiên c u này, nhánh v xác nhứ ề ận người nói và định danh người nói là các nhánh nhận được nhi u s quan tâm nhề ự ất và cũng phát triển nh t c ấ ả
v lý thuyề ết cũng như ứng d ng thụ ực ti n
ng nh n d ng Ngoài ra, các hệ thố ậ ạ người nói còn được chia làm hai loại:
H ệthống ph thuụ ộc nội dung (text-dependence):
Trong h ệ thống ph thu c n i dung thì nụ ộ ộ ội dung nói được c nh hoố đị ặc đã
biết trước Ví d ụ người nói s nói m t dãy các ch s ẽ ộ ữ ố cho trước
H ệthống độc lập nội dung (te -independence): xt
Trong h ệthống độ ậc l p n i dung không có ràng bu c v các t ộ ộ ề ừ mà người nói
s dử ụng Do đó nội dung các l i nói khi hu n luy n và ki m tra (training and test) ờ ấ ệ ể
có th hoàn toàn khác nhau H ể ệ thống độ ậc l p n i dung có nhi u thách thộ ề ức hơn
trong hai loạ i
3 M c tiêu c a luụ ủ ận văn
Luận văn ngoài ệ đi sâu nghiên cứ ết nhậ ạng ngườ
đi vào ứng d ng th c tiụ ự n để xây d ng thành m t h th ng ch m công nhân viên t ự ộ ệ ố ấ ự
động d a trên nh n d ng gi ng nói, c th : ự ậ ạ ọ ụ ể
• Nghiên c u, ứ cài đặt, so sánh, đánh giá hiệu năng và lựa ch n ọ thuật toán dùng trong định danh người nói
• Xây d ng và th nghi m h ự ử ệ ệthống ch m công dấ ựa trên cài đặt và tối ưu tham
s ốcác thuật toán đã nghiên cứu
Trang 16• Định danh d ng t p m ạ ậ ở(Open-set identification): cho phép kiểm th và phát ử
hiện người nằm ngoài tập người nói đã được mô hình hóa
• Định danh c l p n i dung (Text independent identification): cho phép ki m độ ậ ộ ểthử ớ v i câu nói b t k , không ph thu c vào tấ ỳ ụ ộ ập câu nói đã đưa vào huấn luy n ệ
Các vấn đề cơ bản của định danh người nói được nghiên c u trong luứ ận vănbao gồm:
• Bài toán trích xuất đặc trưng giọng nói (Voice feature extraction), bao gồm thuật toán MFCC
• Bài toán mô hình hóa người nói (Speaker modelling), bao g m các thu t toán ồ ậGMM, UBM, Random Forest và SVM
5 C u trúc ấ luận văn
c cái nhìn t n chi ti t công vi
Để giúp người đọc có đượ ừ khái quát đế ế ệc cũng như ế k t qu cả ủa đề tài, ph n ti p theo c a luầ ế ủ ận văn sẽ được trình bày như sau:
• Chương Cơ sởII: lý thuyết Chương này giới thi u t ng quan các thành ph n ệ ổ ầtrong h ệ thống nh n dậ ạng người nói; trình bày các đặc trưng giọng nói và phương pháp trích xuất đặc trưng; trình bày các thuật toán mô hình hóa người nói cơ bản
• Chương III: Các mô hình người nói nâng cao Chương này trình bày về các thuật toán mô hình hóa người nói nâng cao
Trang 17• Chương IV: Th c nghiự ệm và đánh giá kết quả Chương này đưa ra thông tin các b d u dùng trong th c nghi m, các thu t toán và k ch b n thộ ữ liệ ự ệ ậ ị ả ực nghi m, kệ ết quả ủ c a thực nghiệm đi kèm đánh giá.
• Chương V: H th ng ch m công t ng d a trên nh n d ng gi ng nói ệ ố ấ ự độ ự ậ ạ ọChương này trình bày về ổ t ng quan h th ng ch m công d a trên nh n d ng ệ ố ấ ự ậ ạ
gi ng nói, thiọ ết kế ủ ệ thống cũng như cách khai thác vậ c a h n hành h ệthống
• Chương VI: K t luế ận và hướng phát triển Chương này cung cấ ổp t ng k t v ế ề
nh ng k t qu ữ ế ả đã thu được, phác họa các hướng nghiên c u phát tri n tiứ ể ếp theo
Trang 18CHƯƠNG II CƠ SỞ LÝ THUY T NH N DẾ Ậ ẠNG NGƯỜI NÓI
Chương này giới thi u v ệ ề cơ sở lý thuyết được s d ng trong phát tri n các ử ụ ể
h ệthống nh n dậ ạng người nói, bao g m t ng quan c a 1 h ồ ổ ủ ệthống nh n dậ ạng người nói, các phương pháp trích xuấ ặc trưngt đ và các k ỹthuật mô hình hóa người nói cơ
b n ả
1 T ng quan h ổ ệthống nh dận ạng người nói
Một hệ thống nh n dậ ạng người nói sẽ bao g m 2 mô-ồ đun chính:
• Mô-đun ghi nh n ậ người nói: làm nhi m v xây dệ ụ ựng các mô hình tương ứng
với các cá nhân thông qua các đoạn h i thoộ ại do cá nhân đó cung cấp
• Mô-đun định danh/xác nh n: làm nhi m v nh danh/xác nhậ ệ ụ đị ận cá nhân chưa
biết thông qua đoạn h i thoộ ại do người đó nói ra
Hình 1 - T ng quan h ổ ệ thố ng nh n d ậ ạng ngườ i nói 1
1 Kinnunen et al (2010)
Trang 19i trích ch u ti bi i tín hi u thô Khố ọn đặc trưng (feature extraction) đầ ên ến đổ ệthành các vector đặc trưng thể ện các đặc điểm đặc trưng củ ừng ngườ hi a t i nói, lo i ạ
b các thỏ ống kê dư thừa Trong chế độ ghi nh n (enrollment mode), m t mô hình ậ ộngười nói được hu n luy n s dấ ệ ử ụng vector đặc trưng của người nói Trong ch ế độ
nh n diậ ện, các vector đặc trưng được trích xu t t ấ ừ các đoạ ờn l i nói c a mủ ột người không được biết trước, đem so sánh với các mô hình trong cơ sở ữ ệu để d li tính điểm tương tự Kh i ra quy t đ nh s dố ế ị ử ụng điểm để đưa ra lựa ch n cu i cùng ọ ố
c t t t c các h ng nh n di i nói hi u s d ng m t tThự ế ấ ả ệthố ậ ện ngườ ện đại đề ử ụ ộ ập người nói n n (background speaker) theo m t d ng phù hề ộ ạ ợp để nâng cao độ chính xác và hi u qu tính toán cho b nh n d ng Trong pha hu n luy n, tệ ả ộ ậ ạ ấ ệ ập người nói
n n ề được s dử ụng như các ví dụ sai trong vi c hu n luy n mô hình phân biệ ấ ệ ệt (discriminative model) ho c hu n luy n m t mô hình n n t ng th (universal ặ ấ ệ ộ ề ổ ểbackground model) t ừ đó mô hình người nói s ẽ được mô ph ng theo Trong pha ỏ
nh n di n, tậ ệ ập người nói n n ề được sử ụng để chuẩ d n hóa điểm
1.1 L a chự ọn đặc trưng
Tín hi u gi ng nói mang nhiệ ọ ều đặc trưng mà phầ ớn l n không quan tr ng cho ọ
việc phân biệt người nói Mộ ặc trưng phù hợt đ p c n: ầ
• Thay đổ ới l n gi a nhữ ững người nói; thay đổi nh v i cùng mỏ ớ ột người nói
• Có khả năng chống nhi u và bi n d ng t t ế ạ ố
• Xảy ra thường xuyên và t nhiên trong ti ng nói ự ế
• D dàng đo được từ tín ệ hi u ti ng nói ế
• Khó làm gi hoả ặc bắt chước
• Không b ị ảnh hưởng b i s c khở ứ ỏe người nói ho c biặ ến đổi gi ng nói theo ọthời gian dài
Trang 20S ố lượng các đặc trưng cũng nên nhỏ Các mô hình th ng kê truy n th ng ố ề ốnhư GMM (Gaussian Mixture Model) không th x lý d li u có s chi u quá ể ử ữ ệ ố ềnhi u S ề ố lượng m u c n thi t cho hu n luyẫ ầ ế ấ ện để thu được một ước lượng mật độđáng tin cậy tăng theo cấp s ố mũ vớ ố đặc trưng Vấn đề này đượi s c g i là ọ “the curse of dimensionality” (Kinnunen et al, 2010)
c phân lo i thành các lCác đặc trưng đượ ạ ớp khác nhau như hình dưới:
Hình 2 - Phân loại đặc trưng dự a trên bi u di n thông tin v t lý ể ễ ậ 2
Theo Kinnunen (2010), t góc nhìn c a thông tin d ng v t lý, ừ ủ ạ ậ đặc trưng có thể chia làm 5 lo iạ : (1) Đặc trưng phổ ng n (ắ short-term spectral features), (2) Đặc trưng nguồn giọng nói (voice source features), (3) Đặc trưng phổ-th i gian (spectro-ờ
2 Kinnunen et al (2010)
Trang 21temporal features), (4) Đặc trưng nhịp v n ầ (prosodic features), (5) Đặc trưng mức cao (high-level features) Đặc trưng (1) được tính trong các kho ng th i gian ngả ờ ắn
t 20-30 ừ ms, mang các đặc điểm th hi n âm s c c a tiể ệ ắ ủ ếng nói, cũng như các đặc điểm của đường âm thanh (vocal tract) Đặc trưng (2) th hiể ện đặc điểm c a ngu n ủ ồ
giọng nói (glottal flow) Đặc trưng (3), (4) trải dài trên các kho ng th i gian t hàng ả ờ ừchụ ớc t i hàng trăm ms, bao g m ng ồ ữ điệu, nhịp điệu Đặc trưng (5) cuối cùng mang các thông tin m c lứ ời nói như đặc điểm sử ụ d ng t v ng ừ ự
Trong số các đặc trưng này thì ệ ựa chọ ử ụng đặc trưng nào ộc vào mục đích của ứng d ng, tài nguyên tính toán, s ụ ố lượng d u ti ng nói, có ph ữliệ ế ụthuộc n i dung không ộ Đặc trưng (1) thích h p xây d ng ợ ự cơ sở ban đầu c a các h ủ ệ
thống nh n dậ ạng người nói vì d tính toán và cho k t qu tế ả ốt Đặc trưng (4), (5) rất
mạnh nhưng ít có tính phân biệt, d b làm giị ả Đặc trưng (5) ngoài ra còn yêu cầu
v phân tích n i dung lề ộ ời nói Do đó trong thự ếc t không có một đặc trưng nào là tốt
nhất mà đó là sự cân đối gi a kh ữ ả năng phân biệt người nói, độ chính xác và yêu
c u thầ ực tế
1.2 Mô hình người nói
B ng vi c s dằ ệ ử ụng các vector đặc trưng trích xuấ ừ các đoạt t n l i nói, mô ờhình một người nói được huấn luyện và lưu trữ trong cơ sở ữ d u liệ
ng h p ph c n i dung, mô hình là m n n i dung c
và th hi n ph thu c th i gian giể ệ ụ ộ ờ ữa các vector đặc trưng Hệthống xác thực người nói và nh n di n ti ng nói có th ậ ệ ế ể tương tự trong quá trình so sánh và có th k t hể ế ợp
v i nhau ớ Ngượ ạc l i, v i bài ớ toán độ ậc l p n i dung, cách ti p c n ộ ế ậ thường mô hình là phân ph i c a ố ủ đặc trưng hơn là phụthuộc v ềthời gian Chú ý r ng, trong nh n d ng ằ ậ ạ
ph ụthuộc nội dung, chúng ta có th d ch thể ị ời gian để cho đoạn n i dung hu n luyộ ấ ện
và ki m tra có cùng chu i các âm Tuy nhiên trong nhể ỗ ận ạng độ ậd c l p n i dung ộkhông th ể làm điều này được vì nội dung là khác nhau giữa huấn luy n và ki m tra ệ ể
Trang 22i nói c c phân lo i làm hai lo i bao g m mô hình
m u và mô hình th ng kê Mô hình m u (template model) hay còn g i là mô hình ẫ ố ẫ ọphi tham s ố(nonparametric) các vector đặc trưng huấ: n luy n và ki m th ệ ể ử được so sánh tr c ti p v i nhau v i gi s r ng c hai là b n sao không hoàn h o c a nhauự ế ớ ớ ả ử ằ ả ả ả ủ ,
v i bi n d ng giớ độ ế ạ ữa chúng được bi u di n b ng giá tr mể ằ ị ức độ tương đồng (degree of similarity) Ví dụ hương pháp Vector Quantization và Dynamic time : pwarping cho các bài toán độc lập n i dung và ph ộ ụthuộ ộc n i dung Mô hình th ng kê ố(stochastic model) hay còn g i là mô hình phi tham s (nonparametric) mọ ố : ỗi người nói được mô hình như một ngu n xác suồ ất chưa biết nhưng có hàm mật độ ố đị c nh Trong pha hu n luy n s ấ ệ ẽ ước lượng các tham s c a hàm mố ủ ật độ ừ t các ví d m u ụ ẫQuá trình so khớp được hoàn thành b i vi c tính likelihood cở ệ ủa đoạn ki m tra vể ới
mô hình Mô hình Gauss n Mixture Model và Hidden Markov Model là hai mô iahình ph ổbiến nh t cho ph ấ ụthuộc n i dung và ộ độc lập n i dung ộ tương ứng
Phân lo i theo mô hình hu n luyạ ấ ện, các mô hình người nói còn có th chia ểlàm hai dạng: ạd ng mô hình sinh (generative) và d ng mô hình phân hoạ ạch(discriminative) Các mô hình sinh như GMM và VQ ẽs thực hiện ước lượng phân
phối đặc trưng bên trong từng người nói Ngượ ạc l i, các mô hình phân hoạch như ANN (Artificial neural network) hay SVM (Support vector machine) lại đi xây
d ng mô hình biên giự ữa các vector đặc trưng của người nói
2 Trích xuấ ặc trưngt đ
2.1 T ng quan các dổ ạng đặc trưng
2.1.1 Đặc trưng phổ ngắ n
ng nói là tín hi u liên t i theo th chia nh
thành khung th i gian 20-30ms Trong m i khung này có th xem tín hiờ ỗ ể ệu là đủ ổn định, và đặc trưng phổ được trích xu t t mấ ừ ỗi khung Thông thường m i khung ỗđược ti n nh n m nh (p -emphasized) và nhân về ấ ạ re ới m t hàm c a s ộ ử ổ trơn trước khi
x lý tiử ếp Bước tiền nh n m nh nâng các tấ ạ ần số cao v n b gi m bố ị ả ởi ảnh hưởng của
Trang 23người giọng nói Đặc trưng phổ bi n nh t trong x lý ti ng nói và âm thanh là ế ấ ử ếMFCC (M -frequency cepstral coefficien ) Chi ti t v cách tính MFCC s el ts ế ề ẽ được trình bày ở ph n ti p ầ ế
2.1.2 Đặc trưng nguồ n giọ ng nói
ngu n gi ng nói bi u di n tín hi u kích thích t thanh môn
a tín hi c l c có th c trích xu t b i các Đặc trưng củ ệu đã đượ ọc ngượ ể đượ ấ ởphương pháp như: mạng nơ-ron t ự động tương quan (auto-associative neural network), phân tích wavelet (wavelet analysis)
2.1.3 Đặc trưng phổ - thời gian
ph - i gian các chuy n d formant (formant Các đặc trưng ổ thờ như ể ịch
transition) hay các điều ch ế năng lượng (energy modulations) đều mang các thông tin h u ích có th ữ ể được dùng làm đặc trưng người nói Một phương pháp thông
dụng để ợ h p nh t thông tin ấ thời gian vào đặc trưng đó là thông qua các ước lượng
đạo hàm b c 1 (h s delta ậ ệ ố – ) và bậc 2 (h s double-delta - ) Các h s này ệ ố ệ ố
bi u di n biể ến đổ ề ặi v m t th i gian cờ ủa các vector đặc trưng liền k ề nhau và thương được ghép v i các h s ớ ệ ố cơ bản c a cùng khung thành gian (ví d 13 h s MFCC ủ ụ ệ ốcùng với và s ẽ cho 39 đặc trưng trong một khung)
Ngoài ra, có m t k thu t trích xuộ ỹ ậ ất đặc trưng rất tiềm năng đang được s ử
d ng rụ ộng rãi, đó là ử ụ s d ng t n s ầ ố điều ch (modulation frequency) ế như một đặc trưng của người nói T n s ầ ố điều ch bi u di n n i dung t n s cế ể ộ ầ ố ủa biên độ sóng
ph (subband amplitude envelope) và mang các thông tin v tụ ề ốc độ nói cũng như
Trang 24cácthuộc tính văn phong Do sốchiều c a vector t n s ủ ầ ố điều ch ph thu c vào s ế ụ ộ ốđiểm FFT c a ph và s lư ng khung tính FFT nên s chiủ ổ ố ợ ố ều thường cao
M t vộ ấn đề ữ n a đó là số lượng vector hu n luy n cấ ệ ủa đặc trưng phổ - thời gian thường ít hơn so với đặc trưng ph ng nổ ắ Hơn nữa, vì các đặc trưng ổph ng n ắ
và ph dài này khác nhau v ổ ề kích thước khung, vì v y không h d dàng kậ ề ết hợp các đặc trưng ở mức độ khung Do đó cần có một kĩ thuật mô hình và h p nh t khác ợ ấhoàn toàn đểcó thể ử ụng đồ s d ng thời cả đặc trưng ph ng n và ph - ổ ắ ổ thời gian
2.1.4 Đặc trưng nhị p v n ầ
p v n (prosodic) liên quan t i các y u t không th
c a ti ng nói bao g m tr ng âm, ng ủ ế ồ ọ ữ điệu, tốc độ nói và nhịp điệu Nó tr i dài qua ảnhiều đoạn như các từ, âm tiết, đoạ ờn l i nói và ph n ánh s khác bi t v phong cách ả ự ệ ềnói, ngôn ng , ki u câu, cữ ể ảm xúc Khó khăn của nh n d ng ậ ạ người nói c l p n độ ậ ộdung ở đây đó là phải mô hình các mức độ khác nhau của ịnh p v n ầ
2.1.5 Đặc trưng mứ c cao
c cao liên quan t i cá m v v n t v ng c i nói
Các thông tin được mô hình theo các nhóm (categorical) ch ứ không dướ ại d ng s Ý ốtưởng mô hình đặc trưng mức cao này là bi n đ i mế ổ ỗi đoạ ờn l i nói thành m t chu i ộ ỗcác t t (ừ ố token), mà s xuự ất hiệ ủn c a các t t ừ ốthể ệ ự hi n s khác nhau của người nói 2.2 Trích xuấ ặc trưng MFCCt đ
xu t b Paul Mermelstein MFCC được đề ấ ởi năm 1980 Đây là phương pháp trích xuất đặc trưng ổph ng n s d ng trong nh n dắ để ử ụ ậ ạng người nói MFCC là đặc trưng cơ bản và được s dử ụng làm đầu vào cho ph n l n các nghiên cầ ớ ứu trong lĩnh
vực ậnh n dạng người nói và những lĩnh vực liên quan khác như nhận d ng ti ng ạ ếnói, nh n d ng ngôn ng ậ ạ ữ
c phát tri n d a trên nghiên c u v c u t c tính v t lý c
tai người trong vi c x lý tín hi u âm thanh: ệ ử ệ
Trang 25• Khả năng phân biệt cường độ tín hi u âm thanh nh ng t n s g n nhau là ệ ở ữ ầ ố ầ
h n ch Khi t n s tín hiạ ế ầ ố ệu càng tăng, điểm hạn ch này s ế ẽcàng thể ệ rõ hi n
• Kh ả năng nghe của tai người tuân theo định lu t Weberậ –Fechner: độ nhạy
c m c a tai v i âm thanh là t l ả ủ ớ ỷ ệ theo thang đo logarithmic: muốn tăng độ
c m nh n (perception) cả ậ ủa tai (đối v i m t tín hi u âm thanh c ớ ộ ệ ụthể) thêm
một đơn vị (additive), cường độ ủ c a tín hi u phệ ải được nhân thêm (multiplied) với m t giá tr nh t đ nh ộ ị ấ ị
MFCC cho m t ph tín hi u bao gPhương pháp tính chuỗi giá trị ộ ổ ệ ồm 05 bước như sau (Beigi, 2011) :
Hình 3 - Các bước trong phương pháp tính MFCC 3
2.2.1 Phân khung
Ở bước này, tín hiệu ban đầu s ẽ được chia thành các khung ng n ch trong ắ ỉkho ng 20-30ms Do giá tr c a m khung là r t ng n, giá tr tín hi u c a mả ị ủ ột ấ ắ ị ệ ủ ột khung có th ể được coi là không đổi (stationary Đây là điề) u kiện cơ bản để tính toán đặc trưng MFCC
2.2.2 Ướ c lư ợ ng phổ công su t ấ
Tín hi u trong m khung s ệ ỗi ẽ được x lý b i biử ở ến đổi Fourier r i r c (DFT - ờ ạDiscrete Fourier Transform) chuy n t để ể ừmiền th gian sang mi n t n s Các giá ời ề ầ ố
trị ủ c a tín hi u trong mi n t n s s ệ ề ầ ố ẽ được s dử ụng để sinh bi u di n ph công suể ổ ất (power spectrum) c a tín hi u theo công thủ ệ ức:
3 Beigi (2011)
Trang 26Trong đó:
• P(k): là biểu di n ph công su t c a tín hi u ổ ấ ủ ệ
• x(n): là biểu di n tín hi u trong mi n th i gian ệ ề ờ
2.2.3 B l ộ ọ c dả i Mel
ng giá tr t n s tín hi u âm thanh t t n s
thành độ đo Mel theo công thức:
d i (filterbank) l y ra giá tr ả để ấ ị cường độtín hiệ ạu t i m t s ộ ố xác định các giá trị Mel
S ố lượng c a các d i (band) trong b l c là tùy ch n M t b l c d i s có d ng ủ ả ộ ọ ọ ộ ộ ọ ả ẽ ạhình tam giác, th ểhiện qua công thức:
V i M là s ớ ố lượng b l c d i mong mu n, ộ ọ ả ố , là giá tr Mel c a t n s ị ủ ầ ốHình dưới th hi n m t b l c g m 24 d i áp d ng trên kho ng t n s t 0-4000Hz: ể ệ ộ ộ ọ ồ ả ụ ả ầ ố ừ
Trang 27Hình 4 - Bi u di n c a 24-band filter lên ph t n s t 0-4000 Hz ể ễ ủ ổ ầ ố ừ 4
2.2.4 Th c hi I ự ệ n DCT trên năng lượ ng log c a b l c d i ủ ộ ọ ả
IDFT (Inverse Discrete Fourier Transform) s ẽ được áp d ng trên giá tr ụ ịlogarithm của chu i giá tr ỗ ị thu được sau khi áp d ng b l c d i Mel tính toán ụ ộ ọ ả để
bi u di u Cepstrum c a tín hi u Tuy nhiên, trong th c t , thay vì s d ng IDFT, ể ủ ệ ự ế ử ụIDCT (Inverse Discrete Cosine Transform) hay được áp d ng vì chu i h s tr ra ụ ỗ ệ ố ả
của nó không tương quan với nhau, đây là điều ki n c n cho các thuệ ầ ật toán như GMM, VQ dùng đểmôhình hóa người nói (Beigi, 2011)
2.2.5 Gi các h s DCT t 2 - 13 ữ ệ ố ừ
c t , ch nh ng h s MFCC trong kho ng t 2-13 m c gi l s
dụng làm đặc trưng ệ ốH s thứ nh t b ấ ị loạ ỏi b do nó bi u di n ể cho ầ t n s ố cơ bản (fundamental frequency (F0)) là đặc trưng của ngu n thanh môn và không có nhiồ ều giá tr trong nh n d ng ị ậ ạ người nói Giá tr t 14 v ị ừ ềsau cũng không có nhi u thông ềtin có thể ử ụ s d ng trong nh n dậ ạng người nói
4 http://www.practicalcryptography.com
Trang 282.3 Nh n xét v trích xuậ ề ấ ặc trưng Mt đ FCC
Như đã trình bày, MFCC trích xuất đặc trưng dựa trên mô phỏng cơ chế ho t ạ
động của tai người, nh vờ ậy khi đưa vào các hệ th ng nh n dố ậ ạng người nói, đặc trưng MFCC cho độ chính xác tương đối cao Vì v y, mậ ặc dù ra đờ ừ năm 1980, i t cho đến nay MFCC vẫn được coi là state- -of the-art trong các phương pháp trích
xuấ ặc trưng giọt đ ng nói
Tuy nhiên các giá tr ị MFCC cũng có một nhược điểm r t lấ ớn, đó là bị biến
d ng khi có xu t hi n thông tin nhi u Nhi u nghiên c u trên th giạ ấ ệ ề ứ ế ới đã chỉ ra r ng, ằkhi đầu vào d li u âm thanh có ch a t p âm, các h th ng nh n d ng s d ng ữ ệ ứ ạ ệ ố ậ ạ ử ụMFCC b giị ảm độ chính xác tương đối nhi u (Reynolds et al (1995), Kinnuel et al ề
(2010), Beigi (2011))
3 Phương pháp mô hình hóa người nói cơ bản
ph n trên, các thu t toán mô i nói có th
chia thành 2 loại:
• Thuật toán sinh: bao g m các thu t toán th ng kê c ồ ậ ố ổ điển như Vector quantization (VQ) và Gaussian Mixture Model (GMM) th c hiự ện ước lượng phân phối củ ặc trưng cho từng ngườa đ i nói
• Thuật toán phân ho ch: bao g m các thu t toán hạ ồ ậ ọc máy như Support Vector Machine (SVM) và Artificial Neural Networks (ANNs) đi xây dựng mô hình biên giữa các người nói
Trong ph n ti p theo, luầ ế ận văn sẽ trình bày các thu t toán sinh bao gậ ồm Vector Quantization và Gaussian Mixture Model Thu t toán Vector Quantization ậ
s ẽ được trình bày bao gồm cơ sở lý thuy t, các thu t toán phân cế ậ ụm cũng như các công th c khoứ ảng cách thường đượ ử ục s d ng Thuật toán GMM cũng tương tự, bao
gồm cơ sở lý thuyết, ước lượng GMM d a trên cự ực đại hóa mong đợi (Expectation Maximization) và thu t toán UBM (Universal Background Model) mô hình n n ậ để ềđặc trưng nhằm c i thi n hiả ệ ệu năng GMM
Trang 293.1 Vector Quantization (VQ)
ng t hóa vector, là m t thu t toán nén d
liệu có m t mát d a trên nguyên lý mã kh i (principle of block coding) V m t bấ ự ố ề ặ ản chất, VQ s dử ụng phương pháp xấp x x p x m t t p nhiỉ để ấ ỉ ộ ậ ều điểm d li u v ữ ệ ềthành 1 đi m để ại diện Minh h a cho thu t toán v i dữ ệọ ậ ớ li u 1 chi u và 2 chi u: ề ề
Hình 5 - Minh h a thu ọ ật toán VQ 5
Trong minh họa trên, các điểm đại di n (dệ ấu sao đỏ) được g i là vector mã - ọcode vector, các khu vực định nghĩa bởi các đường biên màu xanh được g i là khu ọ
v c mã hóa (encoding region) T p t t c ự ậ ấ ả các vector mã được g i là sách mã - ọ code book, t p t t c các khu vậ ấ ả ực mã hóa được g i là phân vùng (partition) c a không ọ ủgian
ng vào bài toán nh n di
Áp dụ ậ ện người nói, VQ được chia làm 2 bước:
5 http://www.data-compression.com/vq.shtml
Trang 30• Bước phân c m (clustering): Phân cụ ụm các vector đặc trưng để sinh ra code book đại di n cho t ng cá nhân ệ ừ
• Bước so sánh (matching): t từ ập vector đặc trưng của người nói chưa biết, so sánh (tính khoảng cách/độ ế bi n d ng) vạ ới các code book có trong cơ sở ữ d u liệ
để xác định định danh người nói
Hình 6 - Sơ đồ mô hình hóa ngườ i nói s d ng VQ ử ụ
Một số thu t toán clustering có th ậ ểáp dụng trong VQ:
• K-means (Generalized Lloyed algorithm)
• LBG (Linde-Buzo-Gray)
• SOM (Self-organizing Map)
n ti p theo trong s trình bày v các thu t toán trên, ti
vấn đề chọn công th c tính khoứ ảng cách, hay là độ bi n d ng gi a các vector ế ạ ữ(distance / distortion measurement), cũng là một trong các y u t quyế ố ết định đến chất lượng t ng th c a thu t toán ổ ể ủ ậ
Trang 313.1.1 Các thuậ t toán phân c m ụ
Giả ử ần nhóm N điể ữ liệ ụ 1, …, CK}, m i cỗ ụm được
đại di n b i mệ ở ột điểm trung tâm (centroid) µk, k t 1 K Th t c th c hi n cừ ➔ ủ ụ ự ệ ủa K-means:
• Chọn K tâm c m làm kh i đi m {µ1ụ ở ể , …, µK}
• Lặp các bước sau cho tới khi thỏa mãn điều ki n d ng: ệ ừ
1 Gán mỗi điểm d ữ liệu vào c m ụ g n nh t: ầ ấ
Chú ý hàm d ở đây là hàm tính khoảng cách gi a 2 vector (sữ ẽ được trình bày trong phần sau)
2 C p nh t l i tâm c ậ ậ ạ ủa K cụm , với x là các điểm d u thuữliệ ộc
c m k ụ
u ki n d ng c
Điề ệ ừ ủa thuật toán:
1 Các điểm d u trong t t c ữliệ ấ ảcác cụm không thay đổi sau vòng l p ặ
2 Vượt quá m t s ộ ố lượng giới hạn các vòng l p ặ
3 Thay đổi trong t ng bi n d ng gi a 2 vòng liên ti p nh ổ ế ạ ữ ế ỏ hơn ngưỡng cho
ng ta s u ki n là d ng vòng l p n t qua s ng vòng l p
cho phép (ví d 100 vòng) hoụ ặc thay đổi trong t ng bi n d ng nh ổ ế ạ ỏ hơn ngưỡng (ví
d 0.001) T ng bi n dụ ổ ế ạng được tính theo công thức:
Trang 32trong đó là khoảng cách t ừ điểm x đến tâm c m mà x thuụ ộc vào.
u ng minh r ng thu t toán K-means ch Lưu ý các nghiên cứ đã chứ ằ ậ ỉ đưa ra kết
qu tả ối ưu cục b và k t qu này ph ộ ế ả ụthuộ ấ ớc r t l n vào vi c ch n các tâm c m khệ ọ ụ ởi điểm ban đầu Minh h a cho thu t toán v i s c m b ng 3: ọ ậ ớ ố ụ ằ
Hình 7 - Minh h a K-means v i K = 3 ọ ớ 6
b LBG
t thu t toán m r ng c a K- ng c a thuLBG được coi như mộ ậ ở ộ ủ means Tư tưở ủ ật toán này khá đơn giản: t m t cừ ộ ụm ban đầu, chia đôi cụm này làm 2 r i th c hi n ồ ự ệtìm tâm c m m i s d ng K-means Ti p t c th c hiụ ớ ử ụ ế ụ ự ện như thế cho tới khi ta đạt điều ki n d ng hoệ ừ ặc đạt đượ ố ục s c m c n thi t VQ ng dầ ế ứ ụng LBG được g i là VQ ọ
Trang 33a) Bắ ầt đ u với 1 cụm có tâm là kỳ v ng cọ ủa tất cả các điểm d u ữliệ
b) Trong m i vòng l p: ỗ ặ
i Chia mỗ ụm đang có thành hai: i c
ii S d ng K-ử ụ means để ối ưu các cụ t m m ới
u ki n d ng vòng l p c ng s là s c t t i giá tr Lưu ý điề ệ ừ ặ ủa LBG thườ ẽ ố ụm đạ ớ ịK cho trước Trong bài toán nh n diậ ện người nói K thường được ch n t 512 cho t i ọ ừ ớ
2048 Minh h a cho thuọ ật toán:
Hình 8 - Minh h a thu ọ ậ t toán LBG 7
7 Automatic Speech Recognition Course, M.I.T
Trang 343.1.2 L a ch n công th c tính kho ng cách ự ọ ứ ả
c tính kho bi n d ng giCông thứ ảng cách, hay độ ế ạ ữa 2 vector có ý nghĩa quyết
định trong vi c hình thành c m M t s công th c đư c đ xu t: ệ ụ ộ ố ứ ợ ề ấ
a Kho ng cách Euclide (Lả 2 Norm)
Lưu ý, mỗi chi u (mề ỗi đặc trưng) của vector có th ể có đơn vị cũng như dải giá tr ịkhác nhau, vì v y có th ta s c n áp d ng các k ậ ể ẽ ầ ụ ỹthuật feature scaling (rescaling / standardization / unit length) để quy các chi u v cùng 1 d i giá tr trư c khi so ề ề ả ị ớsánh
B i vì W là ma trở ận đối xứng xác định dương, ta có thể phân tích W thành:
Biến đổi vector x và y thành 2 vector m i và s d ng P: ớ ử ụ
Khi đó công thức tính kho ng cách s quy v kho ng cách Euclide thu n túy: ả ẽ ề ả ầ
Trang 35Để tăng hiệu năng tính toán, ta có thểthự c hi n bi ệ ến đổ ấ ả các điể i t t c m d ữ
liệu trước khi th c hi n VQ ự ệ
c Kho ng cách Itakura-Saito ả
Là khoảng cách được dùng nhi u trong x lý tín hi u s ề ử ệ ố để đo độ sai khác (dissimilarity) gi a 2 tín hi u, thích h p cho c ữ ệ ợ ả đơn vị Hz và mel Lưu ý khoảng cách này không ph i kho ng cách th c s do nó không thả ả ự ự ỏa mãn tính đối x ng ứtrong định nghĩa khoảng cách
3.2 Gaussian Mixture Model (GMM)
3.2.1 Finite Mixture Model (FMM):
Cho m t t p d u D = {xộ ậ ữliệ 1, …, xN}, m i ph n t có s chi u là d Mô hình ỗ ầ ử ố ề
h u h n tr n v i K thành ph n (hay là K phân phữ ạ ộ ớ ầ ối) được định nghĩa thông qua công thức như sau:
trong đó:
Trang 36Trọng s thành viên c a mộố ủ t điểm d ữ ệu xili trong thành phần k, cho trước là:
Qua công th c trên, ta có th ứ ểthấy tr ng s thành viên gi a cọ ố ữ ặp điểm d u xữ liệ i và thành ph n k ph n ánh tính bầ ả ất định, không ch c ch n v ngu n g c cắ ắ ề ồ ố ủa điểm d ữ
liệu đế ừn t thành phần nào Lưu ý ở đây mỗi điểm d ệu đượữ li c gi nh ch có th ả đị ỉ ểsinh b i duy nh t m t thành ph n ở ấ ộ ầ Trọ ng s ố thành viên cũng có thể coi là xác su t ấđiểm d liữ ệu đế ừn t thành ph n k trong K thành ph n ầ ầ
3.2.2 GMM và Expectation Maximization (EM)
GMM là FMM v i các thành phớ ần đều là phân ph i Gaussian ố
Khi đó các tham số ủ c a mô hình cần ước lượng s bao g m: ẽ ồ
Áp dụng GMM vào bài toán mô hình người nói, ta có sơ đồ như sau:
Trang 37Hình 9 - Sơ đồ mô hình hóa ngườ i nói s d ng GMM ử ụ
ng tham s c a GMM, ta s s d i hóa k
vọng EM Phương pháp này sẽ ừ ộ ố ước lượ t m t s ng khởi điểm c a , th c hi n các ủ ự ệvòng lặp để ậ c p nhật lại Các bước của phương pháp:
a) Bước E: Tính tr ng s thành viên cho t t c ọ ố ấ ả các điểm d li u v i t t c các ữ ệ ớ ấ ảthành phần
b) Bước M: Cập nh t tham s : ậ ố
Trang 38kh i t o tham s u cho EM, ta có th kh i t o ng u nhiên, ho c s
d ng K-ụ means để phân cụm Điều ki n d ng l p cệ ừ ặ ủa EM tương tự như K-means:
• Vượt quá m t s vòng l p nh t đ nh ộ ố ặ ấ ị
• Thay đổi trong log-likelihood sau vòng l p nh ặ ỏ hơn ngưỡng định trước
i bài toán nh ng gi ng nói, thông qua th c nghi
chọn b ng 32 ằ
3.3 Nh n xét v ậ ềcác thuật toán mô hình hóa người nói cơ bản
Như đã trình bày, thuật toán Vector Quantization s d ng các thu t toán ử ụ ậphân cụm, thường là K-means để ấ x p x t p d ỉ ậ ữ liệu ban đầu v thành K ề điểm d ữliệu, còn GMM s d ng thuử ụ ật toán EM để ước lượng tham s c a K phân ph i ố ủ ốGaussian từ ậ t p d li u Th c t , K-means có th ữ ệ ự ế ể coi là trường h p riêng c a thu t ợ ủ ậtoán EM Hai thuật toán đều ch n tham s khọ ố ởi đầu và c p nh t các tham s qua các ậ ậ ốvòng l p cho t i khi h i t Trong khi K-means s dặ ớ ộ ụ ử ụng cơ chế “quyết định cứng” (hard decision) (các điểm d ữ liệu được gán cho 1 c m nhụ ất định) và không có ước lượng hiệp phương sai thì EM sử ụng cơ chế “quyết đị d nh mềm” (soft decision) (các điểm d li u không thu c m t phân ph i nhữ ệ ộ ộ ố ất định nào c , mà ch có xác su t ả ỉ ấsinh ra từ phân phối đó) và có ước lượng hiệp phương sai
Như vậy, GMM cho ta nhiều thông tin hơn về phân b c a d li u thông qua ố ủ ữ ệ
t p d u hu n luyậ ữ liệ ấ ện Bên cạnh đó, GMM còn cung cấp được m t thông tin rộ ất quan trọng, đó là xác suấ ủt c a d ữ liệu đố ới v i mô hình Trong th c ti n, Vector ựQuantization chủ ế y u ch dùng trong các h th ng xác nhỉ ệ ố ận người nói v i t p câu ớ ậ
Trang 39nói tương đối h n chạ ế, thường là m t dãy ch s ộ ữ ố GMM đượ ức ng d ng cho bài ụtoán khó hơn là định danh người nói H n ch c a GMM là d a trên gi s d li u ạ ế ủ ự ả ử ữ ệtuân theo m t t p phân ph i K Gaussian có tr ng s , v i giá tr ộ ậ ố ọ ố ớ ị K thường được ch n ọthông qua thực nghiệm
Trang 40CHƯƠNG III CÁC MÔ HÌNH NGƯỜI NÓI NÂNG CAO
p trung vào gi i thi i nói nâng cao, bao Chương này tậ ớ ệu các mô hình ngườ
g m mô hình t p n n ph quát UBM, mô hình thích nghi GMM-UBM và mô hình ồ ậ ề ổphân tách SVM s d ng supervector ử ụ
1 Mô hình UBM
(Universal Background Models là mô hình cho cá
không ph ụthuộc người nói, s dử ụng để so sánh với mô hình đặc trưng một cá nhân
c ụ thể khi đưa ra quyết định ch p nh n hay t ấ ậ ừ chối trong kiểm định gi thuy t ả ế(Reynolds et al, 2000)
s cho m t quan sát O và m i nói P, ta c n quy nh xem O có
phải từ P hay không Khi đó bài toán trở thành bài toán kiểm định gi thuyếả t gi a: ữ
• Giả thuy t H0: O sinh ra b i Pế ở
• Giả thuy t H1: O không sinh ra b i P ế ở
Theo b Neyman-Pearson, quyổ đề ết định tối ưu cho phép tối thi u hóa xác su t cể ấ ủa sai l m lo i II (type II error ầ ạ – miss error), cho trước xác su t (l n nh t) c a sai lấ ớ ấ ủ ầm
loại I (type I error false alarm error) s – ẽlà:
với là ỉ ệ likelihood likelihood ratio t l ( - ), là ngưỡng quyết định ch p nh n ho c t ấ ậ ặ ừchối H0
Trong h ệthống nhận dạng người nói, ta s có m t chuẽ ộ ỗi các vector đặc trưng
đại di n cho quan sát, ệ Gi thuy t Hả ế 0 được đại di n b i mô hình ký ệ ở