Huấn luyện cho mô hình

Một phần của tài liệu Nghiên cứu các đặc trưng tiếng Việt áp dụng vào nhận dạng tiếng nói tiếng Việt (Trang 81)

Trong mô hình nhận dạng thanh điệu tiếng việt chúng tôi sử dụng 8 mô hình HMM tươngứng cho 6 thanh điệu. Ởđây chúng tôi sử dụng 8 mô hình vì thanh có 5 có 2 trường hợp là 5a và 5b, thanh 6 có 2 trường hợp là thanh 6a và 6b (như đã trình bày trong phần IV) .

Hình 5.7: quá trình khi to các tham s

Các tham số của mô hìnhđược khởi tạo theo thuật toán sau:

Với mỗi mô hình, lấy tất cả các vector đặc trưngứng với mô hình này Tất cả các vector được chia thành các đoạn bằng nhau tuỳ vào số trạng thái của mô hình.

Ta tính các tham số thống kê (giá trị trung bình và phương sai) cho mỗi

đoạn tươngứng với một trạng thái trong mô hình.

Sử dụng thuật toán Viterbi để phân đoạn lại, sau đó tính toán các tham số thống kê và cập nhật trở lại mô hình.

Lặp lại bước cuối cho đến khi hội tụ.

Đây là một thuật toán để khởi tạo các tham số cho mô hình, tuyđây không phải là công việc chính, nhưng nó góp phần làm tăng độ hội tụ của việc tính các tham số

của mô hình.

Trong quá trình huấn luyện cho mô hình chúng ta có thể sử dụng thuật toán Baum – Welch để tính các tham số. Trong trường hợp này, thường gọi là sự khởi tạo trực tiếp và thường khởi tạo giá trị trung bình bằng 0 và phương sai bằng 1.

5.5. Nhn dng

Quá trình nhận dạng thanh điệu của một tiếng được mô tả bằng hình sau:

Hình 5.8: Mô hình nhn dng thanh điu tiếng Vit

Tín hiệu tiếng nói sau khi đã qua tiền xử lý, trích tần số cơ bản, tạo các vector

đặc trưng dựa vào vector V(F0). Các vector đặc trưng này được đưa qua một bộ nhận dạng (sử dụng thuật toán Viterbi để tìm ra chuỗi trạng thái có xác suất lớn nhất) và

đầu ra là kết quả nhận dạng. Tuy nhiên, vì thanh 5 và thanh 6 được chia thành 2 trường hợp, nên đến đây vẫn chưa phải là kết quả cuối cùng, ta phải dựa vào 2 luật sau để quyết định:

nếu là thanh 5a hay thanh 5b đều quyết định là thanh 5 (thanh sắc)

nếu là thanh 6a hay 6b đều quyết định là thanh 6 (thanh nặng)

5.6. Mt s kết qu nhn dng thanh điu tiếng Vit

Tổng cộng và khảo sát thử trên: 257 tiếng khác nhau, thu mẫu 4000 tiếng, trung bình mỗi tiếng thu mẫu 15 lần, kết quả nhận dạng lại trên những mẫu đã học.

1. Vi vector đặc trưng gm 11 thành phn:

Với các thông số của mô hình markovẩn khác nhau có kết quả tươngứng như sau: 5 trạng thái, 1 mixer : 92,24%

5 trạng thái, 4 mixer : 94,72% 6 trạng thái, 4 mixer : 94,91% 7 trạng thái, 4 mixer : 95,51%

2. Vi vector đặc trưng gm 11 thành phn:

yt= [ log( ft) ,|log( ft– ft+1) | , log( ft+ ft+1) , | log(e – et) | , log( d ) ,

log( fmax) , log( fmin) , log( fmax– fst) , log( fmax– fed), log( fst– fmin) log( fed– fmin) ]

Với các thông số của mô hình markovẩn có kết quả tươngứng như sau: 7 trạng thái, 4 mixer : 92,38%

3. Vi vector đặc trưng gm 9 thành phn:

yt = [ ft , ft– ft+1 , e – e t , fmax , fmin , fmax – fst , fmax – fed , fst – fmin , fed– fmin ]

Với các thông số của mô hình markov ẩn có kết quả tươngứng như sau: 6 trạng thái, 4 mixer: 92,23%

4. Vi vector đặc trưng gm 9 thành phn:

Với các thông số của mô hình markovẩn có kết quả tươngứng như sau: 6 trạng thái, 4 mixer: 94,66%

5. Vi vector đặc trưng gm 13 thành phn:

yt= [ ft, ft– ft+1, e – e t , d , fmax , fmin , fmax– fst , fmax– fed , fst– fmin, fed– fmin , fst , fed , fst– fed ]

Với các thông số của mô hình markovẩn có kết quả tươngứng như sau: 6 trạng thái, 4 mixer: 94,49%

6. Vi vector đặc trưng gm 12 thành phn:

yt= [ ft, ft– ft+1 , ft + ft+1, e – e t, d , fmax , fmin , fmax– fst, fmax– fed , fst– fmin , fed– fmin, fmax– fmin ]

Với các thông số của mô hình markovẩn có kết quả tươngứng như sau: 6 trạng thái, 4 mixer: 95,28%

7. Vi vector đặc trưng gm 10 thành phn:

yt= [ ft, ft– ft+1 , e – e t, d , fmax , fmin , fmax– fst, fmax– fed, fst– fmin, fed– fmin ]

Với các thông số của mô hình markov ẩn khác nhau có kết quả tương ứng như

sau :

Nhận dạng với 8 mô hình (phân chia mỗi thanh sắc và nặng thành 2 trường hợp)

6 trạng thái, 4 mixer, bỏ phần bắt đầu và kết thúc 10%: 95,39% 6 trạng thái, 4 mixer, bỏ phần bắt đầu và kết thúc 5% : 95,09%

Nhận dạng 6 mô hình cho 6 thanhđiệu (không phân chia thanh sắc và nặng) 6 trạng thái, 4 mixer, bỏ phần bắt đầu 10%: 97,67%

Tách riêng huấn luyện 300 mẫu, test 200 mẫu đối với nhận dạng 6 thanh : 6 trạng thái, 4 mixer, bỏ phần bắt đầu 10%: 95,69%

6 trạng thái, 4 mixer, bỏ phần bắt đầu 10%, nhận dạng 8 mô hình cho 8 thanh (mỗi thanh sắc và nặng chia thành 2 trường hợp) , sau đó dùng luật quyết

Kết quả: Tổng cộng 4000 tiếng Đúng 3941 tiếng(98,5 %) Sai 59 tiếng (1,5%) Ngan g Huyền Ngã Hỏi Sắc Nặng Tỉ lệ đúng Ngang 657 6 99.1% Huyền 657 100% Ngã 657 24 5 95.77% Hỏi 3 657 1 99.39% Sắc 13 656 98.06% Nặng 3 1 1 2 657 98.95% Kết quả nhận dạng lại trên những mẫu đã học đúng khoảng ~98.5%.

Chương 6.

Thiết kế mô hình nhn dng tiếng nói tiếng Vit

Để giải quyết được bài toán nhận dạng tiếng Việt thì nhận dạng thanh điệu là rất cần thiết. Tuy không triệt để (không nhận dạng được toàn bộ các từ) nhưng có thể

làm tăng bộ từ vựng trong nhận dạng (bộ từ vựng có thể lớn hơn 200 từ ) với độ chính xác 90 - 96%. Ngoài ra để giải quyết được triệt để bài toán nhận dạng chúng ta cần kết hợp với mô hình ngôn ngữ, hoặc giải quyết bằng phương pháp nhận dạng âm vị

kết hợp với mô hình ngôn ngữ và nhận dạng thanh điệu.

Trong nghiên cứu của luận văn, nhận dạng tất cả các thanh điệu đạt khoảng 98,5% trên số lượng từ vựng là 257 từđược thu mẫu 4000 lần. Tỷ lệ trên là tương đối cao so với các nghiên cứu trước đây (84%) nhưng vẫn chưa dùng tốt cho nhận dạng. Chúng tôi đã tiến hành phân lớp thanh điệu thành 2 lớp: thanh cao và thanh thấp, kết quả phân lớp đạt được 99.71%. Vì vậy, chúng tôi chỉ ứng dụng mô đun nhận dạng thanh điệu tiếng Việt vào việc phân lớp. Nhờ đó có thể nâng được số lượng từ trong từđiển lên đáng kể mà vẫn giữđược độ chính xác cao.

Hình 6.1: Mô hình tng quát;

(a) công đon hun luyn; (b) công đon nhn dng

6.1. Công đon hun luyn

Cũng như trong nhận dạng thanh điệu tiếng Việt, tín hiệu tiếng nói cũng phải qua bước tiền xử lý, công đoạn huấn luyện cho mô hình, côngđoạn nhận dạng mẫu.

Hình 6.2: Côngđon hun luyn mu

Bộ dữ liệu sau khi thu, được tạo thành 2 bộ từ điển tương ứng với 2 lớp thanh

điệu: thanh cao và thanh thấp. Trong đó bộ từđiển thanh cao gồm: thanh sắc và thanh ngã, bộ từ điển thanh thấp gồm: thanh ngang (thanh không dấu), thanh huyền, thanh ngã, thanh hỏi, thanh nặng, thanh ngã. Ở đây chúng tôi phân thanh ngã ở cả hai từ điển, bởi vì:

Theo tài liệu thống kê của I. S. Bystrov và M. V. Gordina (1976) thì tần số xuất hiện của thanh ngã là thấp nhất trong các thanh (chỉ 7%).

Thanh ngã là thanh nếu chỉ phân lớp vào lớp thanh cao thì làm cho tỉ lệ

nhận dạng đúng bị giảm xuống và ngược lại, vì sự biến đổi của nó chạy dài từ vùng tần số thấp đến vùng tần số cao.

Do đó cách giải quyết của chúng tôi là đưa thanh ngã vào cả hai bộ từ điển

Tín hiệu tiếng nói sau khi qua các bước tiền xử lý được tiến hành rút trích đặc trưng. Tất cả dãy dữ liệu của tín hiệu được chia thành các khung (frame) và dùngLPC

phân tích thành các vector với số phần tử ít hơn hẳn.

Các vector đặc trưng này sẽ được dùng để huấn luyện. Kết quả huấn luyện là các mô hình HMM cho các từ theo từng lớp từ điển. Ứng với mỗi lớp từ điển, chúng ta có một bộ các mô hình HMM.

Mặt khác, để sử dụng việc phân lớp, chúng tôi sử dụng đặc trưng F0. Theo khảo sát của luận văn, thanh điệu tiếng Việt được chia làm hai lớp phân tách nhau bỡi thanh ngang. Do đó, dữ liệu đưa vào sau khi tiền xử lý, chúng tôi tách riêng các từ

thanh ngang đem trích F0. Giá trị trung bình của F0 của các thanh ngang sẽ là giá trị

ngưỡng phân lớp. Giá trị này sẽ được cộng thêm P trong quá trình phân lớp, (P là phương sai của F0). (Tham khảo phần IV).

Theo khảo sát, giá trị phương sai của tần số cơ bản của thanh ngang: ở giọng nữ (8 – 16) Hz, ở giọng nam (20 – 24) Hz. Trong chương trình Demo, dữ liệu tiếng nói là giọng nam nên chúng tôi chọn P = 20.

6.2. Công đon nhn dng

Sau khi huấn luyện mẫu, ta sẽ có các bộ từđiển tươngứng với các lớp. Nếu mô hình HMM nhận dạng được X tiếng, và giả sử ta có thể phân các tiếng thành A lớp; như vậy tổng số từ vựng ta có thể nhận dạng được sẽ tăng lên khoảng ~ X*A tiếng.

Hình 6.3: côngđon nhn dng

Bắt đầu công đoạn nhận dạng, tín hiệu tiếng nói sẽ được đưa qua bộ xác định lớp thanh điệu. Tại đây các công việc trích pitch và phân lớp sẽđược tiến hành.

Sau khi đã xác định được lớp, chương trình sẽ lấy bộ từ vựng tương ứng của lớp đó lên để tiến hành việc nhận dạng từ. Như vậy, thay vì phải nhận dạng X*A từ

(sẽ vượt quá khả năng của mô hình HMM), chúng ta chỉ cần nhận dạng A từ của lớp thứ Xi.

Tóm lại, công đoạn nhận dạng ởđây chúng tôi chia làm hai bước: Bước 1: xác định lớp từđiển.

Chương 7. Hin thc hoá mô hình nhn dng tiếng Vit 7.1. Nhn dng tiếng đơn Các tiếng dùng nhận dạng: STT Tiếng Lp STT Tiếng Lp STT Tiếng Lp 1 Không 2 2 Mt 2 3 Hai 2 4 Ba 2 5 Bn 1 6 N ăm 2 7 Sáu 1 8 By 2 9 Tám 1 10 Chín 1 11 Mười 2 12 Báo 1 13 Biết 1 14 Bình 2 15 Bóng 1 16 Cháy 1 17 Chèn 2 18 Chương 2 19 1 20 Ca 2 21 Đài 2 22 Đi 2 23 Đin 2 24 Đổi 2 25 Đoái 1 26 Đọc 2 27 Dng 2 28 D 2 29 Giá 1 30 Gi 2 31 Giúp 1 32 Hi 1 33 2 34 In 2 35 Lưu 2 36 M 2 37 Mi 1 38 Chy 2 39 Ph 1 40 Phút 1 41 Qut 2 42 Son 2 43 Tt 1 44 Thành 2 45 Tho 2 46 Thiếu 1 47 Thi 2 48 Thoát 1

49 Th 1 50 Tính 1 51 Tc 1

52 Chuyn 2 53 Vit 2 54 Xoá 1

55 Xung 1 56 Đỡ 2

Trong đó:

Lớp 1 (nhóm thanh cao) gồm có: sắc, ngã.

Lớp 2 (nhóm thanh thấp) gồm có: ngang, huyền, ngã, hỏi, nặng.

Các đặc trưng: Chúng tôi sử dụng phương pháp phân tích LPC để rút trích đặc trưng với các giá trị tham số như sau:

Các hệ số LPC N M P Q K Giá trị 25 ms 10 ms 10 12 3

Rút trích đặc trưng thanh điệu (F0) bằng thuật toán AMDF (M = 10ms, N = 5ms). Các tham số mô hình HMM: Số trạng thái: 5 Số Mixture: 4 Kết qu: 1. Bảng kết quả phân lớp thanh điệu:

Nhóm Nhóm thanh cao Nhóm thanh thấp Kết quả

Nhóm thanh cao 6098 22 99,64% Nhóm thanh thấp 22 7618 99,71%

2. Kết quả nhận dạng tiếng: N hn dng trên tp hun luyn: Số tiếng nhận dạng: 13760, đạt kết quả: 100% N hn dng trên tp d liu mi: Số tiếng dùng huấn luyện: 9174 Số tiếng dùng để thử: 4586 Các tiếng sai: Báo Sáu (1 lần)

Đi Điện (1 lần)

Số tiếng đúng: 4584, đạt tỉ lệ: 99,96%

7.2. Nhn dng câu

Chúng tôi biến đổi sang nhận dạng từđơn, bằng cách tách các tiếng và đưa vào nhận dạng từ rời.

Quá trình nhận dạng câu được tiến hành như sau:

Hình 7.1: mô hình nhn dng câu

Sau khi nhận dạng hết các từ trong câu, dùng luật để quyết định câu nói. Cách tính điểm và luật quyết định được miêu tả như sau:

Tính vị trí tiếng thứ i hiện tại của câu nói và nhận dạng tiếng đó.

Tại vị trí thứ i của mỗi câu nói tươngứng, nếu tiếng nhận dạng được thuộc câu nào thì câuđó sẽđược cộng thêm 1 điểm.

Kết thúc việc nhận dạng hết các từ trong câu, câu nào có số điểm cao nhất chính là kết quả.

Chương 8. Kết lun

8.1. Kết lun

Qua thời gian nghiên cứu và cài đặt, luận văn đã làm được một số công việc như sau:

Khảo sát một số đặc tính ngữ âm tiếng Việt, trong đó ứng dụng được

đặc điểm về thanh điệu vào hệ nhận dạng.

Cài đặt hệ nhận dạng sử dụng mô hình HMM liên tục.

Cài đặt hệ nhận dạng 6 thanh điệu tiếng Việt đạt hiệu quả khoảng 98,5%.

Đề nghị phương phápứng dụng đặc điểm thanh điệu tiếng Việt vào việc phân lớp trong hệ nhận dạng tiếng nói tiếng Việt và cài đặt thử nghiệm

đạt hiệu quả nâng số từ vựng nhận dạng được lên đến khoảng 60 từ.

Đề nghị và cài đặt thử nghiệm mô hình nhận dạng câu.

Trong giới hạn thời gian làm luận văn, chúng tôi chỉ mới có những bước đầu nghiên cứu tiếp cận theo hướng các đặc điểm ngữ âm tiếng Việt, vì vậy chắc chắn đề

tài còn nhiều thiếu sót. Tuy nhiên với một số ý tưởng và kết quả đã đạt được, chúng tôi hy vọng rằng luận văn này sẽ góp phần xây dựng các hệ thống nhận dạng tiếng Việt ngày càng hoàn chỉnh hơn.

Chương trình Demođược cài đặt trên hệ thống với các thông số như sau: Máy PC Celeron 1.2 Gb Bus 100, 96 Mb Ram.

Card âm thanh hiệu Creative

Micro dùng để thu dùng để thu âm dạng cầm tay.

Tiếng nói được thu với tần số lấy mẫu 16000Hz, kích thước mỗi mẫu là 16 bit.

Tiếng nói được rút trích đặc trưng bằng phương pháp LPC với chiều dài frame phân tích là N = 25 ms, phần chồng lấp M = 10 ms, số chiều vector LPC là p = 12.

8.2. Hướng phát trin:

Do trong thời gian ngắn, lượng dữ liệu thu vào có giới hạn dẫn đến kết quả

chưa được đánh giá chính xác. Điều này có thể cải tiến bằng cách thu nhiều mẫu hơn, xử lý để tăng độ chính xác, thu mẫu của nhiều người để có các thống kê, khảo sát tốt hơn, và xây dựng mô hình nhận dạng độc lập người nói.

Khảo sát thêm các đặc trưng ảnh hưởng đến thanh điệu như: phoóc măng, trường độ, ảnh hưởng của phụ âm nhằm nâng cao chất lượng nhận dạng thanh điệu, cũng như chất lượng phân lớp thanh điệu để từ đó có thể phân nhiều lớp hơn. (Hiện tại chỉ phân làm 2 lớp).

Tăng thêm số đặc điểm ngữ âm dùng để phân lớp như: nguyên âm, phụ âm, trường độ…

Tài liu tham kho

[1] B. H. Vu, “Về đặc trưng cơ bản của thanh điệu tiếng Việt ở trạng thái tĩnh”, 1999.

[2] Đinh Lê Thư – Nguyễn Văn Huệ, “Cơ cấu ngữ âm tiếng Việt”, NXB giáo dục, 1998

[3] Hồ Ngọc Điệp – Luận văn tốt nghiệp Khoa CNTT –ĐH KHTN, 1999

[4] L. R Rabiner, “A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition”, Proc. IEEE, 77(2), pp. 257-286, 1989. [5] Hà Việt Uyên Synh - Luận án thạc sĩ Khoa CNTT –ĐH KHTN, 1999.

[6] Lê Văn Lợi, “Thanh học – Các bệnh về giọng nói, lời nói và ngôn ngữ”, NXB Y học, 1999.

[7] Nguyễn Đức Hoàng Hạ– Luận văn tốt nghiệp Khoa CNTT –ĐH KHTN, 2002 [8] Nguyễn Quốc Cường, “Tone Recognition for Vietnamese”, 2001

[9] Steven W. Smith, “Digital Signal Processing”, 1999

[10] Steve Young et all, “The HTK Book”, the Cambridge University Engineering Department, July 2000

[11] Thái Hùng Văn - Luận án thạc sĩ Khoa CNTT –ĐH KHTN, 2000. [12] T.T. Doan. “Ngữ âm tiếng việt”, 1977

[13] Võ Tuấn Kiệt - Luận án thạc sĩ Khoa CNTT – ĐH KHTN, 1999.

[14] W.J Yang et all, "Hidden Markov Model for Mandarin Lexical Tone

Một phần của tài liệu Nghiên cứu các đặc trưng tiếng Việt áp dụng vào nhận dạng tiếng nói tiếng Việt (Trang 81)

Tải bản đầy đủ (PDF)

(116 trang)