MGHMM và bài toán định danh người nói

Một phần của tài liệu ĐỊNH DANH NGƯỜI NÓI ĐỘC LẬP VĂN BẢN BẰNG MÔ HÌNH THỐNG KÊ (Trang 67)

3.4.1. Xây dựng mô hình

Nội dung chính của đề tài này là áp dụng mô hình MGHMM cho bài toán định danh người nói độc lập văn bản trên tập dữ liệu mở. Mỗi người nói sẽđược mô hình hóa bằng một speaker model (mô hình người nói) đại diện bởi một mô hình MGHMM riêng biệt. Mục tiêu là có thể phân lớp một mẫu tiếng nói vào một trong các lớp người nói đã được mô hình hóa hoặc một người nói nào đó chưa biết.

Như vậy, trước hết các speaker models phải được xây dựng bằng cách tổng quát hóa các dữ liệu mẫu của người nói tương ứng. Điều này có nghĩa là ta phải huấn luyện sao cho mỗi speaker model thích nghi nhất với dữ liệu mẫu của nó.

Hình 3.9 mô tả các bước xây dựng một speaker model – đại diện bởi MGHMM – từ

dữ liệu huấn luyện. Thuật toán k-means được áp dụng cho bước khởi tạo tham số. Sau đó, mô hình MGHMM sẽ được huấn luyện bằng thuật toán EM (tương đương Baum-Welch). Cả hai bước khởi tạo và huấn luyện đều đòi hỏi dữ liệu huấn luyện của người nói tương ứng.

Mục đích của việc khởi tạo tham số mô hình theo thuật toán k-means là nhằm đem lại khả năng cao hơn cho việc đạt tối ưu toàn cục cũng nhưđẩy nhanh tốc độ hội tụ

trong huấn luyện.

Sau khi đã xây dựng được các mô hình người nói (speaker models), tiến trình nhận dạng một mẫu tiếng nói sẽ được thực hiện qua hai bước: định danh (identification) và xác minh (verification).

Hình 3.9: Các bước xây dựng một MGHMM từ dữ liệu huấn luyện.

3.4.2. Identification

Cho trước S người nói S = {1, 2, …, S} được mô hình hóa bằng các MGHMM λ1,

λ2, …, λS. Bước identification thực hiện phân lớp mẫu test X vào một trong các lớp người nói đã được huấn luyện (xác định mẫu tiếng nói đó thuộc về người nói nào). Việc phân lớp được thực hiện theo luật quyết định Bayes:

) | ( max arg 1 i S p X i ID λ ≤ ≤ =

trong đó, ID chính là kết quả nhận dạng của bước identification (cho biết người nói của mẫu test X); xác suất p(X | λi) đóng vai trò nhưđiểm (score) của mô hình λi cho vector đặc trưng X, và X sẽđược phân vào lớp của người nói có mô hình cho điểm cao nhất. Gọi điểm cao nhất này là pmax có được từ biểu thức:

) | ( max 1 max i S i p X p λ ≤ ≤ = MGHMM (null) MGHMM (initialized) MGHMM (converged) K-Means Init Training

[ Training Data ] [ Training Data ] EM

Xác suất pmax này đóng vai trò quyết định trong phương pháp so sánh ngưỡng của bước verification.

3.4.3. Verification

Kết thúc bước identification, định danh (identity) của mẫu test đã được xác định là người nói có score cao nhất. Mục tiêu của bước verification là xác minh trở lại xem mẫu test có đúng thật là của người nói đó hay thuộc về một người nói chưa biết (unknown speaker/impostor).

Cơ chế xác minh thông qua việc so sánh score (xác suất pmax có được từ bước identification) với một ngưỡng θ cho trước. Nếu score vượt ngưỡng θ, kết quảđịnh danh ở bước trước sẽđược chấp nhận (confirmed); ngược lại, mẫu test sẽđược xem như thuộc về một người nói chưa biết:

⎩ ⎨ ⎧ < ≥ = θ θ score if spea unknown score if ID confirmed on Verificati ker

Đối với bước verification, việc chọn ngưỡng thích hợp là rất quan trọng. Có 2 loại ngưỡng:

- Ngưỡng toàn cục: một ngưỡng duy nhất được áp dụng cho mọi người nói. - Ngưỡng cục bộ: mỗi người nói sẽ có một ngưỡng riêng.

Trong phạm vi đề tài này, ta chỉ xét đến ngưỡng toàn cục. Thông thường, ngưỡng tốt nhất được chọn tại điểm cân bằng lỗi trên đường DET (Detection Error Trade- off). Ngoài ra, chuẩn hóa score (score normalization) sẽ giúp cho việc chọn ngưỡng có hiệu quả hơn và giảm đáng kể tỉ lệ lỗi.

Mục đích chính của việc chuẩn hóa score là tạo sự tách biệt giữa phân bố score của những người nói trong hệ thống và phân bố score của những người nói chưa biết, nghĩa là tăng cường score cho người nói trong hệ thống và giảm thiểu score của người nói chưa biết.

Có nhiều phương pháp chuẩn hóa score khác nhau như đã trình bày trong mục 2.8, tuy nhiên trong mô hình giải quyết bài toán của đề tài này, score sẽđược chuẩn hóa theo phương pháp chuẩn hóa nhóm tự do (Unconstraint Cohort Normalization – UCN). Điểm chuẩn hóa theo UCN (scoreUCN) được cho bởi công thức:

∑ = − = K k k UCN p K p Score 1 max 1 log log

trong đó, các pk (k ∈ [1, K]) là K xác suất trong số các xác suất p(X | λi) có giá trị

lớn tiếp theo sau pmax:

pmax > p1 > p2 > … > pK > pK+1 > … > pS-1

Chương 4: THC NGHIM (adsbygoogle = window.adsbygoogle || []).push({});

4.1. Dữ liệu thực nghiệm

Tập dữ liệu tiếng nói được thu âm từ 60 người nói khác nhau, thuộc cả ba miền Bắc, Trung, Nam, và gồm cả nam lẫn nữ (30 nam, 30 nữ). Dữ liệu tiếng nói được lấy mẫu ở mức 16000Hz, 16bit theo định dạng PCM.

Tập dữ liệu này được tổ chức thành 2 nhóm: 50 người sẽ được hệ thống học mẫu (registered speakers) và 10 người đóng vai trò người mạo danh (impostors/unknown speakers).

Dữ liệu tiếng nói của mỗi người được chia thành 20 đoạn, mỗi đoạn có độ dài 3 giây. Trong đó 10 đoạn sẽđược sử dụng cho việc huấn luyện, 5 đoạn dùng cho việc test các tham số mô hình và 5 đoạn còn lại được dùng test hiệu suất của hệ thống. Riêng đối với nhóm unknown speakers, không cần phần dữ liệu huấn luyện.

Bảng 4.1: Tổ chức dữ liệu thực nghiệm.

Như vậy, từ tập dữ liệu ban đầu, ta chia thành 2 tập con:

- Training set: gồm 50 speakers, mỗi speaker có 10 files, mỗi file 3 giây. Tổng cộng là 500 files (1500 giây).

- Test set: gồm 60 speakers (50 registered speakers và 10 unknown speakers), mỗi speaker có 10 files, mỗi file 3 giây. Tổng cộng 600 files (1800 giây).

Registered Speakers 50 500 samples (1500 giây) Unknown Speakers 10 100s (300g) 500 samples (1500 giây) Training set Test set

Tập training set được dùng để huấn luyện mô hình và tập test set sẽ được dùng để

khảo sát các tham số và đánh giá hiệu năng của hệ thống.

Về mức độ đa dạng của dữ liệu test, hình 4.1 minh họa các đường pitch (còn gọi là

đường tần số gốc – fundamental frequency contour) từ mẫu tiếng nói của ba người thuộc ba vùng miền khác nhau: Hà Nội, Huế và Sài Gòn. Các đường pitch này thể

hiện độ cao giọng nói của ba người nữ khi phát âm từ “tâm”. Biểu đồ cho thấy tiếng nói người Hà Nội có tần số cao nhất, người Sài Gòn có tiếng nói ổn định ở mức tần số thấp hơn, trong khi tiếng Huế có tần số thay đổi lên xuống theo các âm vị khác nhau.

Hình 4.1: Các đường pitch của tiếng nói ba miền.

Một đặc trưng nữa cho thấy khác biệt giữa tiếng nói của ba miền là âm phổ (voice print/spectral) và độ dài (duration) của các âm vị thể hiện trên spectrogram trong hình 4.2.

Mặc dù tập dữ liệu test mang tính đa dạng vùng miền, tuy nhiên việc xây mô hình giải quyết bài toán không quan tâm đến đặc tính này. Như vậy, ngoài yếu tốđộc lập

văn bản, các mô hình người nói trong đề tài này còn nhắm đến yếu tố độc lập phương ngữ (giọng địa phương - dialect).

Hình 4.2: Spectrogram của từ “tâm” phát âm theo tiếng ba miền khác nhau.

4.2. Các độ đo đánh giá

Quyết định cuối cùng của hệ thống định danh người nói trên tập mở gồm 2 dạng: - cho biết định danh người nói (speaker identiy) của mẫu test.

- hoặc kết luận mẫu test thuộc về một người nói chưa biết.

Như vậy, một quyết định của hệ thống sẽ có khả năng mắc phải một trong 3 dạng lỗi sau:

- Lỗi OSIE (Open-Set Identification Error): lỗi phân lớp sai. Mẫu test của speaker A được phân vào lớp của speaker B.

- Lỗi OSI-FA (Open-Set Identification False Acceptance): lỗi nhận nhầm mẫu test của unknown speaker vào hệ thống.

- Lỗi OSI-FR (Open-Set Identification False Rejection): lỗi loại bỏ sai mẫu test của một registered speaker trong hệ thống.

Dựa trên 3 loại lỗi này, hệ thống định danh người nói trên tập mở sẽđược đánh giá hiệu năng thông qua các độđo: tỉ lệ phân lớp sai (IER – Identification Error Rate), tỉ

lệ chấp nhận sai (FAR - False Acceptance Rate) và tỉ lệ loại bỏ sai (FRR - False Rejection Rate).

Tỉ lệ IER thể hiện hiệu năng identification của hệ thống và độc lập so với ngưỡng, trong khi FRR và FAR phụ thuộc vào ngưỡng. Như vậy với một ngưỡng cụ thể, ta sẽ có cặp FRR và FAR tương ứng tạo thành một điểm trên đường DET (Detection Error Trade-off). Qua một tập các ngưỡng, ta sẽ xác định được đường DET với trục x biễu diễn FAR, trục y biễu diễn FRR.

Đường DET biểu diễn tương quan giữa FAR và FRR. Đồng thời, qua đường DET, ta có thể xác định được điểm cân bằng lỗi EER (Equal Error Rate) mà tại đó FAR = FRR. Hình 4.3 minh họa ví dụ về một đường DET và điểm EER. (adsbygoogle = window.adsbygoogle || []).push({});

Hình 4.3: Một ví dụ vềđường DET và điểm EER.

Ngoài ra, đường DET còn thể hiện hiệu năng verification của hệ thống. Hiệu năng càng cao khi đường DET càng tiến sát về góc dưới bên trái, tại đó FAR và FRR đều rất nhỏ. Việc chọn ngưỡng cho hệ thống cũng dựa trên đường DET, và thông thường ngưỡng được chọn tại điểm EER.

Như vậy, hiệu năng của toàn bộ hệ thống định danh người nói trên tập mở sẽ được

đánh giá qua 2 yếu tố:

- Hiệu suất phân lớp (identification accuracy): thể hiện qua tỉ lệ IER. - Hiệu suất xác minh (verification accuracy): thể hiện qua tỉ lệ EER.

4.3. Tham số mô hình

Trước khi tiến hành thực nghiệm tìm hiệu suất hệ thống, các tham số mô hình cần

được chọn giá trị thích hợp. Các tham số này được xác định thông qua thực nghiệm, gồm:

- Số vòng lặp huấn luyện I.

- Kích thước nhóm K của phương pháp chuẩn hóa UCN. - Số trạng thái N của mô hình MGHMM.

- Số phân phối Gauss M trong mỗi trạng thái của mô hình MGHMM.

4.3.1. Số vòng lặp huấn luyện

Số vòng lặp huấn luyện mô hình ảnh hưởng lớn đến hiệu năng hệ thống và chi phí thời gian, nên việc chọn số vòng lặp là khá quan trọng. Do vậy, trước khi tiến hành huấn luyện các mô hình, một thực nghiệm được thực hiện để chọn ra số bước lặp thích hợp.

Hình 4.4:Độ tăng log-likelihood qua các vòng lặp huấn luyện.

Dữ liệu huấn luyện của một speaker ngẫu nhiên được chọn ra để huấn luyện một số

cấu hình MGHMM với số bước lặp tăng dần. Hình 4.4 thể hiện độ tăng của log- likelihood theo các bước huấn luyện. Log-likelihood tăng nhanh trong 5 bước lặp

đầu tiền, tuy nhiên độ tăng giảm dần từ bước thứ 5 đến bước thứ 15. Từ bước thứ 15 về sau, log-likelihood tăng rất chậm và hầu như không thay đổi nhiều.

Việc chọn số bước lặp huấn luyện quá lớn có thể dẫn đến tình trạng các mô hình quá khớp với tập mẫu học, làm mất khả năng tổng quát hóa của mô hình. Như vậy, số bước lặp thích hợp có thểđược chọn là 13, 14 hoặc 15… Trong các thực nghiệm sau, mỗi mô hình MGHMM sẽđược huấn luyện với 15 bước lặp.

4.3.2. Kích thước nhóm K của phương pháp UCN

Trong phương pháp chuẩn hóa UCN, việc chọn giá trị thích hợp cho tham số K ảnh hưởng rất lớn đến hiệu suất verification của hệ thống (tỉ lệ EER). Để chọn ra giá trị

tối ưu cho K, một thực nghiệm được tiến hành với mô hình MGHMM có cấu hình 3 trạng thái và 15 phân phối Gauss trong mỗi trạng thái.

Hình 4.5: Tương quan giữa K và EER.

Hình 4.5 minh họa biểu đồ tương quan giữa tham số K với tỉ lệ EER. Lỗi EER đạt giá trị tốt nhất tại vị trí K = 8. Các thực nghiệm còn lại chọn K = 8 cho phương pháp UCN.

4.3.3. Cấu hình MGHMM

Thực nghiệm khảo sát N (số trạng thái) và M (số phân phối Gauss trong mỗi trạng thái) được tiến hành trên 2 chuỗi cấu hình MGHMM như trong bảng 4.2:

- Chuỗi cấu hình thứ nhất: giữ cốđịnh số trạng thái N = 3, lần lượt thay đổi số

phân phối Gauss M trong mỗi trạng thái.

- Chuỗi cấu hình thứ hai: giữ cốđịnh số phân phối Gauss trong mỗi trạng thái M = 15, lần lượt thay đổi số trạng thái N.

Bảng 4.2: Hai chuỗi cấu hình MGHMM.

Cđịnh N=3 Test M=5 test M=10 test M=15 test M=20 test M=25 (adsbygoogle = window.adsbygoogle || []).push({});

Cđịnh M=15 test N=1 test N=2 test N=3 test N=4 test N=5

Như vậy, dữ liệu được test qua 9 cấu hình MGHMM; hai cấu hình được tô đậm là giống nhau: (N = 3, M = 15) và (M = 15, N = 3). Bảng 4.3 thống kê tỉ lệ lỗi IER và EER của các cấu hình tương ứng; trong đó, tỉ lệ IER đạt tối ưu trong mọi cấu hình, EER đạt được tốt nhất ở cấu hình có N = 4 và M = 15. Bảng 4.3: Tỉ lệ IER và EER của các cấu hình MGHMM. N M % IER % EER 1 15 0 2.8 2 15 0 2.4 3 15 0 2.0 4 15 0 1.6 5 15 0 3.6 3 5 0 2.0 3 10 0 2.0 3 20 0 4.0 3 25 0 4.0

4.4. Hiệu suất hệ thống

Thực nghiệm tìm hiệu suất hệ thống được tiến hành với các tham số tối ưu tìm được

ở bước thực nghiệm tham số:

- Cấu hình MGHMM có 4 trạng thái và 15 phân phối Gauss trong mỗi trạng thái.

- Số vòng lặp huấn luyện I = 15. - Kích thước nhóm-UCN K = 8.

Hình 4.6: Hiệu suất xác minh của hệ thống.

Hiệu suất phân lớp đạt được là 100% (IER = 0%). Đường DET trong hình 4.6 cho thấy hiệu suất xác minh của hệ thống là 96% (EER = 4%).

Chương 5: KT LUN VÀ HƯỚNG PHÁT TRIN

5.1. Kết luận

Luận văn đã trình bày hướng tiếp cận áp dụng mô hình MGHMM cho bài toán định danh người nói độc lập văn bản trên tập dữ liệu mở. Mỗi người nói được mô hình hóa bằng một MGHMM huấn luyện theo thuật toán EM. Tiến trình nhận dạng một mẫu tiếng nói gồm hai bước:

1) Bước identification thực hiện phân lớp mẫu tiếng nói theo luật quyết định Bayes.

2) Bước verification áp dụng phương pháp chuẩn hóa nhóm tự do UCN để tăng hiệu suất xác minh.

Hệ thống xây dựng theo phương pháp này được thực nghiệm trên tập dữ liệu tiếng nói tiếng Việt bao gồm 60 người nói thuộc cả ba miền: Bắc, Trung và Nam. Kết quả

thực nghiệm cho thấy khả năng mô hình hóa rất tốt của mô hình MGHMM đối với bài toán: đạt 100% hiệu suất phân lớp và 96% hiệu suất xác minh.

5.2. Hướng phát triển

Trên nền tảng các kết quả đã đạt được, một số vấn đề có thể được xem xét nghiên cứu và phát triển xa hơn nhằm nâng cao hiệu suất nhận dạng:

- Mở rộng hoặc tìm phương pháp chuẩn hóa score tốt hơn nữa áp dụng cho bước verification nhằm nâng cao hiệu suất xác minh.

- Mở rộng quy mô của tập dữ liệu test với số lượng người nói nhiều hơn nữa nhằm tận dụng tối đa sức mạnh mô hình hóa của MGHMM.

TÀI LIU THAM KHO

[1] Ariyaeeinia A., Fortuna J., Sivakumaran P. and Malegaonkar A. (2006), “Verification effectiveness in open-set speaker identification,” Vision, Image and Signal Processing, IEE Proceedings, vol. 153, issue 5, pp. 618-624.

[2] Bilmes J.A. (1998), “A Gentle Tutorial of the EM Algorithm and its Application to Parameter Estimation for Gaussian Mixture and Hidden Markov Models,” Technical Report ICSI-TR-97-021, University of Berkeley, California.

[3] Bonastre J.F., Scheffer N., Matrouf D., Fredouille C., Larcher A., Preti A., Pouchoulin G., Evans N., Fauve B., and Mason J.S. (2008), “Alize/spkdet: a state-of-the-art open source software for speaker recognition,” Proc. Speaker Odyssey.

[4] Campbell J.P. (1997) "Speaker Recognition: A Tutorial", Proceedings of The IEEE, Vol. 85, No. 9, pp. 1437 - 1462.

[5] Doddington G. (1985), “Speaker recognition - Identifying people by their voices,” Proceedings of the IEEE 73, 11, pp. 1651–1164.

[6] Duda R.O., Hart P.E., Stork D.G. (2001), Pattern Classification, A Wiley- Interscience Publication, Wiley-Interscience, New York.

[7] Farrell K., Mammone R., Assaleh K. (1994), “Speaker recognition using neural networks and conventional classifiers,” IEEE Trans. on Speech and Audio Processing 2, 1, pp. 194–205.

[8] Furui S. (1981), “Cepstral analysis technique for automatic speaker verification,” IEEE Transactions on Acoustics, Speech and Signal Processing

29, 2, pp. 254–272. (adsbygoogle = window.adsbygoogle || []).push({});

[9] Gannert T. (2007), A Speaker Verification System under the Scope: Alize, Master’s Thesis, KTH Computer Science and Communication, Sweden.

[10] Gersho A., Gray R. (1991), Vector Quantization and Signal Compression, Kluwer Academic Publishers, Boston.

[11] Gish H. and Schmidt M. (1994) “Text-independent Speaker Identification,”

IEEE Signal Processing Magazine 11, pp. 18–32.

[12] Kinnunen T. (2003), Spectral Features for Automatic Text-independent Speaker Recognition, Licentiate’s Thesis, University of Joensuu, Finland.

Một phần của tài liệu ĐỊNH DANH NGƯỜI NÓI ĐỘC LẬP VĂN BẢN BẰNG MÔ HÌNH THỐNG KÊ (Trang 67)