Thanh 6 (thanh nặng)

Một phần của tài liệu Nhận dạng tiếng Việt sử dụng biến đổi Wavelet và mô hình Markov ẩn (Trang 98)

Trường hợp A:

Các tiếng được lựa chọn để khảo sát là:

Cộ, đoạn, dụng, giận, gọi, loại, trọng, vẹn, động, lạnh, thượng, mạ, ngoại, tạ, vị, hạo, mạnh, mạo, thị, vậy, vị, điệu, định, dụ, hiện, phụ, tạn, tạo.

Hình 5.6a: thanh nặng (trường hợp a) Hiệu tần số cơ bản: nữ 53Hz, nam 71Hz.

Giá trị phương sai của tần số cơ bản: ở giọng nữ (8 – 22) Hz, ở giọng nam (23 – 35) Hz.

Âm vực: nữ (252 – 151) Hz, nam (166 – 85) Hz.

Giá trị trung bình của trường độ: nữ 214 ms , nam 204 ms.

Giá trị phương sai của trường độ: nữ 63 ms, nam 45 ms.

Trường hợp B:

Các tiếng được lựa chọn để khảo sát là:

Gặp, một, đạt, được, nhật, bật, bặt, thuật, đặt, đọc, nhạc, việt, thạch, lực, cập.

Hình 5.6b: Thanh nặng (trường hợp b) Hiệu tần số cơ bản: nữ 33Hz, nam 42Hz.

Giá trị phương sai của tần số cơ bản: ở giọng nữ (13 – 24) Hz, ở giọng nam (20 – 26) Hz.

Âm vực: nữ (247 – 163) Hz, nam (156 – 95) Hz.

Giá trị trung bình của trường độ: nữ 145 ms , nam 116 ms.

Giá trị phương sai của trường độ: nữ 67 ms, nam 39 ms.

Thanh nặng có 5 biến điệu, đường nét nói chung đi xuống rất gấp và ngắn. Nhận xét:

Quá trình vận động của tần số cơ bản của các thanh điệu được chia làm 2 phần:

- Phần ổn định: Phần ổn định là sự vận động của tần số cơ bản ở phần vần của âm tiết với tư cách là yếu tố mang những dấu hiệu khu biệt âm vị học chủ yếu của các thanh điệu.

- Phần động: Phần động là sự vận động của tần số cơ bản của phụ âm đầu hữu thanh trong các âm tiết.

Nếu phần ổn định của thanh điệu được xem như là trung tâm và phần động được xem như là ngoại biên thì người ta có thể nhận thấy tính chất động của phần ngoại biên là một yếu tố rất quan trọng, đóng vai trò như một vùng đệm đảm bảo tính ổn định cho những đặc trưng ngữ âm cơ bản và chức năng khu biệt âm vị học của các thanh điệu.

Trong khuôn khổ luận văn, chúng tôi chỉ nghiên cứu đến phần chủ yếu quyết định thanh điệu, tức là xem như thanh điệu nằm ở phần vần của âm tiết.

Qua khảo sát, kết quả về âm vực của các thanh như sau: - Nhóm cao: ngã, sắc

- Nhóm thấp: ngang, huyền, hỏi, ngã, nặng.

- Riêng thanh ngã, 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, nên chúng tôi xếp thanh ngã vào cả hai lớp. Sự phân lớp này được ứng dụng vào mô đun phân lớp tiếng nói trong nhận dạng tiếng Việt.

Kết quả về trường độ của các thanh như sau: - Nhóm dài: ngang, huyền, hỏi, ngã, sắc - Nhóm ngắn: sắc, nặng.

hai dạng của thanh nặng đều có trường độ ngắn. Còn dạng (b) của thanh sắc (trong trường hợp âm tắc) cũng thuộc dạng ngắn trong khi dạng (a) của thanh sắc vẫn thuộc dạng có trường độ dài.

5.3 Giải pháp nhận dạng tiếng Việt theo mô hình âm vị

Mặc dù trong tiếng Việt số tiếng là giới hạn (chỉ khoảng 7000-8000 tiếng), nhưng nếu đứng ở góc độ nhận dạng tiếng nói thì số lượng đó là đáng kể. Do đó, khả năng ứng dụng mô hình âm vị vào trong tiếng Việt để cho có thể tăng số từ trong bộ từ vựng hệ thống nhận dạng là rất đáng xem xét.

Ở đây, sau khi xem xét, tôi nhận thấy mặc dù thanh điệu ảnh hưởng toàn bộ tiếng trong Tiếng Việt, nhưng nó ảnh hưởng lớn nhất vẫn là ở các nguyên âm. Do đó, ta có một giải pháp cho việc nhận dạng theo mô hình âm vị đơn giản hóa về vấn đề thanh điệu như sau:

Một giải pháp cho việc áp dụng mô hình âm vị vào nhận dạng Tiếng Việt:

Ta xét các âm vị bao gồm các dạng sau:

- Các phụ âm bao gồm: b, d, đ, g, h, k, l, m, n, p, r, s, t, v, x, ch, th, kh, qu, nh - Các nguyên âm bao gồm cả dấu thanh điệu: a, á, à, ả, ạ, ã, â, ấ, ầ, ẫ,

ẩ, ậ, ă, ằ, ắ, ẳ, ẵ, ặ, e, é, è, ẻ, ẽ, ẹ, ê, ế, ề, ể, ễ, ệ, i, í, ì, ỉ, ĩ, ị, o, ó, ò, ỏ,

õ, ọ, ô, ố, ồ, ổ, ỗ, ộ, ơ, ớ, ờ, ở, ỡ, ợ, u, ú, ù, ủ, ũ, ụ, ư, ứ, ừ, ử, ữ, ự, ai, ái, ải, ãi, ại….

Cấu trúc nhận dạng theo mô hình âm vị sẽ dùng mô hình HMM trái phải, mỗi âm vị là một mô hình. Chúng ta thấy mặc dù đã đơn giản hóa mô hình âm vị nhưng số lượng mô hình HMM vẫn là quá lớn và không mang lại hiệu quả cần thiết.

Như vậy chúng ta vẫn sẽ sử dụng mô hình nhận dạng nguyên từ mà không phân tách âm vị, mỗi một từ sẽ là một mô hình HMM. Và khi đó, nhận dạng thanh điệu cho các từ là khâu không thể thiếu của hệ thống nhận dạng.

5.4 Xây dựng mô hình nhận dạng thanh điệu tiếng Việt

Hình 5.8 Mô hình nhận dạng thanh điệu tiếng Việt (a) công đoạn huấn luyện, (b) công đoạn nhận dạng.

5.4.1 Khối tiền xử lý

Tiếng nói được thu qua micro trong môi trường thực có nhiễu nên cần phải được xử lý triệt nhiễu và nâng cao chất lượng. Phương pháp sử dụng là phương pháp triệt nhiễu dùng biến đổi wavelet cải tiến (Xem 4.3.2).

Trong công thức 4.9 hằng số tỷ lệ  được chọn bằng thực nghiệm là 0.38, q = 0.2, độ dài tương ứng của khung Lfrm và đoạn Lseg cũng được chọn bằng thực nghiệm là 64ms và 512ms.

Trong công thức 4.12 để đơn giản chọn  = 0.5

Sau khi được triệt nhiễu, tín hiệu tiếng nói sẽ được phân đoạn thành các khung chồng lấp, tiếp theo đó sẽ được nhân với cửa sổ Hamming 512 điểm để làm trơn phần đầu và cuối khung (Xem 2.2.1.2, 2.2.1.3).

5.4.2 Khối trích chu kỳ pitch

Như đã khảo sát trong phần 5.2, yếu tố chủ yếu ảnh hưởng đến thanh điệu là tần số cơ bản F0 nên giá trị này cần phải được xác định trong mỗi khung tiếng nói.

Hình 5.9: Tín hiệu tuần hoàn của nguyên âm [o] trong tiếng ‘hỏi’

F0 được trích theo phương pháp dùng CWT (Xem 4.5.2).

5.4.3 Tạo vector đặc trưng V(F0)

Trong nhận dạng tiếng Trung Quốc (Mandarin), Yang et all định nghĩa vector đặc trưng như sau:

Công thức 5.1

bản F0 chúng tôi sử dụng vector đặc trưng cải tiến từ vector Mandarin có 10 thành phần như sau:

Công thức 5.2

Trong đó:

- ft là tần số cơ bản tại khung tín hiệu t. - ft+1 là tần số cơ bản tại khung tín hiệu t+1 - et là năng lượng tại khung tín hiệu t

- emax là năng lượng cực đại trong phần hữu thanh - d là chiều dài của phần hữu thanh (tính bằng số khung) - fmax là tần số cơ bản cực đại trong vùng hữu thanh - fmin là tần số cơ bản cực tiểu trong vùng hữu thanh

- fst là tần số cơ bản ở khung đầu tiên trong vùng hữu thanh - fed là tần số cơ bản ở khung cuối cùng trong vùng hữu thanh

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

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 MM 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ó trường hợp là 5a và 5b, thanh 6 có 2 trường hợp là thanh 6a và 6b.

Hình 5.10: Quá trình khởi tạo 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ụ.

5.4.5 Nhận dạng

Hình 5.11: Sơ đồ khối hệ nhận dạng thanh điệu tiếng Việt

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.5 Các kết quả nhận dạng thanh điệu

Sử dụng mô Hình HMM 6 trạng thái, 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 định để đưa ra kết luận cho 6 thanh.

Tách riêng huấn luyện 100 mẫu, test 100 mẫu đối với nhận dạng 6 thanh :

Kết quả:

Kết quả nhận dạng hệ thống nhận dạng thanh điệu cài đặt trên phần mềm MATLAB 7.0.1

Đúng 114 tiếng (95 %); Sai 5 tiếng (5 %)

Ngang Huyền Ngã Hỏi Sắc Nặng Tỉ lệ đúng Ngang 20 100 % Huyền 20 100 % Ngã 18 2 90 % Hỏi 1 18 1 90 % Sắc 1 1 18 90 % Nặng 20 100 %

Chương 6. XÂY DỰNG HỆ THỐNG NHẬN DẠNG TIẾNG VIỆT NGUYÊN TỪ RỜI RẠC HOÀN CHỈNH

6.1. Phương pháp sử dụng 6.1.1. Tổng quát 6.1.1. Tổng quát

Trong chương 5, chúng ta đã xây dựng hệ thống nhận dạng thanh điệu tiếng Việt với độ chính xác 95 %. Đó là một tỉ lệ khá cao so với các nghiên cứu về nhận dạng thanh điệu tiếng Việt. Tuy nhiên tỉ lệ này vẫn chưa đủ để ứng dụng trong một hệ nhận dạng tiếng Việt hoàn chỉnh.

Việc phân lớp thanh điệu thành 2 lớp thanh cao và thanh thấp đạt độ chính xác 99.8 % là rất cao. Vì vậy, chúng tôi ứng dụng modul nhận dạng thanh điệu 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 tổng quát;(a) công đoạn huấn luyện; (b) công đoạn nhận dạng

6.1.2 Tiền xử lý

Tiếng nói được xử lý giống như trong hệ thống nhận dạng thanh điệu (Xem 5.3.1)

6.1.3 Huấn luyện mẫu

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 phân khung và dùng SCWT phân tích thành các vector đặc trưng.

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.

Để 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).

6.1.4 Công đoạn nhận dạng

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 đoạn nhận dạng

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.

Bước 2: nhận dạng trong lớp từ điển đã xác định.

6.2 Cài đặt hệ thống nhận dạng tiếng Việt nguyên từ rời rạc hoàn chỉnh. 6.2.1 Môi trường xây dựng hệ thống 6.2.1 Môi trường xây dựng hệ thống

Để tận dụng sự hỗ trợ của MATLAB về các hàm toán học, các ToolBox Signal Processing, Wavelet, Statistics (HMM) chúng tôi chọn môi trường cài đặt hệ thống là MATLAB 7.01.

6.2.2 Bộ từ dùng cho huấn luyện và nhận dạng:

Bài toán nhận dạng ở đây phục vụ cho việc điều khiển Robot bằng tiếng nói bao gồm 6 từ điều khiển (trái, phải, tiến, lùi, thẳng, dừng) để điều khiển robot chuyển động theo các hướng.

Dữ liệu dùng để huấn luyện được thu với tần số lấy mẫu 16 KHz. Bộ từ dùng để huấn luyện điển gồm 6 từ thu từ 20 người nói khác nhau với tổng số từ là 120 từ. Bộ từ dùng cho nhận dạng độc lập với bộ từ dùng để huấn luyện với số lượng tương đương.

Trong đó:

Lớp 1 (nhóm thanh cao) gồm có thanh sắc, ngã: trái, tiến.

Lớp 2 (nhóm thanh thấp) gồm thanh ngang, huyền, ngã, hỏi, nặng.: phải, lùi, dừng, thẳng

6.2.3 Tạo vector đặc trưng V(SCWT)

Như trong 4.4.4 đã đề cập, MFCC và SCWT cho kết quả tương đương nhau nhưng MFCC có ưu điểm tính toán nhanh hơn. Mặc dù vậy với mong muốn đề xuất một phương pháp nhận dạng tiếng Việt mới, chúng tôi đã sử dụng SCWT làm vector đặc trưng cho hệ thống nhận dạng.

Các hệ số SCWT của các khung tiếng nói được đ ưa qua lọc thông thấp và hạ mẫu từ 16KHz xuống 100 Hz. Phân tích Ceptral được sử dụng để giảm số lượng hệ số SCWT xuống 12 hệ số Ceptral với độ tin cậy và tập trung cao hơn được sử dụng làm vector đặc trưng cho hệ thống nhận dạng.

6.2.4 Phân lớp

Trích F0 theo giải thuật dùng CWT trong 4.5.2

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).

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. Do dữ liệu tiếng nói trong từ điển là giọng nam nên chúng tôi chọn P = 20.

6.2.5 Mô hình HMM cho các từ nhận dạng

Hình 6.4 Mô hình ngôn ngữ của hệ nhận dạng

6.2.6 Kết quả nhận dạng

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 98 2 98% Nhóm thanh thấp 1 99 99%

Bảng 6.1 Kết quả phân lớp thanh điệu

2. Kết quả nhận dạng tiếng:

Nhận dạng trên tập huấn luyện:

Trái Phải Tiến Lùi Thẳng Dừng Tỉ lệ đúng

Trái 20 100 % Phải 20 100 %

Một phần của tài liệu Nhận dạng tiếng Việt sử dụng biến đổi Wavelet và mô hình Markov ẩn (Trang 98)

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

(120 trang)