Chương 1 Cơ sở lý thuyết: trình bày cơ sở lý thuyết về nhận dạng giọng nói, tiền xử lý âm thanh, trích đặc trưng, mạng Neural nhân tạo và hệ thống nhúng. Chương 2 Hệ thống nhận dạng giọng nói dùng Neural Network: thiết kế so đỗ khối và hoạt động của hệ thống, bao gồm: quá trình thu 4m, tiền xử lý, trích đặc trưng, huấn luyện bộ trọng số, nhận dạng và hiển thị kết quả. Chương 3 Xây dựng hệ thống nhúng trên BeagleBoard xM: mô tả sơ đồ hệ thống nhận dạng trên BeagleBoard xM, các thành phan phan cứng được sử dụng, các bước xây dựng hệ thong nhúng, thực hiện hệ thống nhận dạng trên BeagleBoard xM. Chương 4 Kết quả: trình bày các kết quả đạt được, kết luận, hướng nghiên cứu và phát trién.
HVTH: Nguyễn Thanh Tuấn -4- Thiết kế HTN nhận dạng giọng nói dùng Neural Network GVHD: TS.Hoàng Trang CHUONG 1: CƠ SỞ LÝ THUYET 1.1 Cơ sở lý thuyết về nhận dạng giọng nói [3][5] 1.1 Các đặc điểm của giọng nói Am thanh giọng nói có thé phân chia thành 3 trạng thái: trạng thái yên lặng hoặc nhiễu nên, đây là khoảng thời gian không có tiếng nói; trạng thái âm vô thanh chiếm khoảng 20% đầu âm, đây là khoảng thời gian mà dạng sóng tiếng nói không tuần hoàn, đặc trưng cho phụ âm; trạng thái âm hữu thanh chiếm khoảng 80% âm còn lại, trong khoảng thời gian này dạng sóng của âm thanh mang tính tuần hoàn, đặc trưng cho âm hữu thanh. Việc phân chia nay cũng mang tính chất tương đối vé ranh giới giữa 3 trạng thái, nhưng ảnh hưởng không đáng ké đến việc phân tích và nhận dạng.2 Phân loại các hệ thong nhận dạng giọng nói - - Dựa theo cách thức người nói: + Nhận dạng từ rời rạc + Nhận dạng từ liên tục - - Dựa trên bộ từ vựng: + Hệ thống từ vựng nhỏ (10 đến 100 từ). + Hệ thống nhận dạng các từ rời rạc (vượt 1000 từ). + Hệ thông nhận dạng các từ liên tục trong phạm vi giới hạn (1000 đến 5000 từ).
- - Dựa trên thông tin về các mẫu tiếng nói của người sử dụng: + Hệ thống phụ thuộc người nói: được làm cho tương thích với từng người riêng biét. + Hệ thong độc lập người nói: có thể làm việc với số lượng lớn người sử dụng. HVTH: Nguyễn Thanh Tuấn -5- Thiết kế HTN nhận dạng giọng nói dùng Neural Network GVHD: TS.Hoàng Trang + Hệ thong thích ứng với người nói: tu cap nhật thong tin về từng người sử dụng riêng biệt trong thời gian hệ thống sử dụng.3 Cac yếu tố ảnh hướng đến kết quả nhận dạng - _ Hệ thống được thiết kế cho một hay nhéu người. - - Kích thước bộ tu vựng.
- _ Tiếng nói được đưa vào bang các từ rời rac với khoảng dừng đủ lớn hay phát âm liên tục. - Sự nhằm lẫn và không rõ ràng giữa các âm trong bộ từ vựng. - Hé thống nhận dạng trong môi trường yên tĩnh hay nhiễu. - Kién thức ngữ âm học được áp dụng cho bộ nhận dạng.4 Các phương pháp tiếp cận nhận dạng giọng nói Có 3 phương pháp tiếp cận chính để nhận dạng tiếng nói: ngữ âm học, nhận dạng mâu và ứng dụng trí tuệ nhân tạo.
- Ngữ âm học: dựa vao lý thuyết về ngữ âm âm thanh, lý thuyết này cho rằng tiếng nói ton tại hữu hạn, các đơn vị âm thanh có thé phân biệt được và được đặc trưng bởi một tập các tính chất biểu hiện cho tín hiệu tiếng nói trong miền thời gian hay các tính chất phố của nó. Bước dau tiên trong phương pháp ngữ âm học là phân đoạn và gán nhãn, bước thứ hai là xác định từ hợp lệ từ dãy ngữ âm được gan nhãn trong bước dau tiên. - Nhận dạng mẫu: gồm hai bước chính là huấn luyện mẫu và so sánh mẫu. Đặc tính chủ yếu của phương pháp này là sử dụng các cơ cau toán học rõ ràng và thiết lập sự biéu diễn thích hợp các mẫu tiếng nói cho việc so sánh chính xác các mẫu huan luyện.
Tiếng nói có thể được biểu diễn ở dạng mẫu tiếng nói hoặc một mô hình thống kê, có thể được áp dụng cho một âm, một từ hoặc một nhóm từ. Trong giai đoạn so sánh mau, có một sự so sánh trực tiếp giữa tiếng nói chưa biết với mỗi mẫu được học trong giai đoạn huấn luyện để xác định đặc tính của mẫu chưa biết. Hướng kết hợp mẫu trở thành phương pháp nhận dạng rất phố biến trong những năm 90. HVTH: Nguyễn Thanh Tuấn -6- Thiết kế HTN nhận dạng giọng nói dùng Neural Network GVHD: TS.Hoàng Trang - Phương pháp trí tuệ nhân tao: phương pháp này cố gan may móc hóa hoạt động nhận dạng theo cách con người áp dụng trí khôn trong việc hình dung, phân tích và đánh giá tiếng nói dựa trên một tập hợp các tính chất âm học đo được.
Nghiên cứu cách học nói và học nghe của con người, tìm hiêu các quy luật ngữ âm, ngữ pháp, ngữ nghĩa, ngữ canh. Một trong các kỹ thuật được áp dụng trong phương pháp này là dùng mạng Neural nhân tạo để huấn luyện các đặc trưng tiếng nói và nhận dạng để ứng dụng trong thực tế. Đây chính là phương pháp được chọn nghiên cứu và sử dụng trong luận văn.5 Một hệ thống nhận dạng giọng nói dùng mạng Neural nhân tạo Bộ trọng sô Huân luyện x F$ A huan luyén ` Vv Tín hiệu âm Trích đặc Kết quả Vv Tiền xử ly Nhận dạng thanh (trưng _| nhận dạng Hình 1. 1 Sơ đồ khối nhận dạng giọng nói dùng Neural Network e Tín hiệu âm thanh: được thu từ các thiết bi thu âm và được số hóa dé xử lý.
e Tiên xử lý: cat các khoảng lặng hoặc nhiêu nên dé giảm kích thước, tăng xác suất nhận dạng. e Trích đặc trưng: phân tích tín hiệu, trích các đặc trưng cơ bản lưu thành tập các đặc trưng riêng của môi từ. e Huấn luyện: dùng mang Neural huấn luyện tập các vector đặc trưng của tập mâu huân luyện, tạo ra bộ trọng sô huần luyện làm cơ sở dữ liệu cho qua trình nhận dạng. e Nhận dạng: dùng mang Neural nhân tạo tính toán các đặc trưng của tín hiệu kết hợp với bộ trọng số huan luyện so sánh đưa ra kết quả nhận dạng.
HVTH: Nguyễn Thanh Tuấn Thiết kế HTN nhận dạng giọng nói dùng Neural Network GVHD: TS.2 Tiền xứ ly âm thanh [2] Có nhiều phương pháp tiền xử lý âm thanh dé đưa âm thanh vừa thu được đạt được một chuẩn nhất định, về cơ bản là giảm nhiễu và cắt các khoảng lặng không cần thiết. Dé tài giới thiệu hai phương pháp pho biến là phương pháp xác định ngưỡng năng lượng thời gian ngắn và phương pháp xác định tỉ lệ biên độ tín hiệu dao động qua điểm Zero. 1 T M r r Nhiecu | Tiếng nói | oe} | a a6} |iMau ie Ham nang lượng - yt fe Mell VIMAR ) thời gian ngăn q4L \ hư 0.2}- | li lệ qua diem zero K8 1000 z0 3000 #000 5000 6000 Hình 1. 2 Sự tương quan giữa tín hiệu tiếng nói và nhiễu nền Phương pháp xác định ngưỡng năng lượng thời gian ngắn: năng lượng thời gian ngắn của đoạn chứa tiếng nói luôn lớn hơn nhiều so với đoạn chỉ có nhiễu.
Do đó nếu ta chọn được mức ngưỡng phủ hợp thì ta sẽ trích được tín hiệu mang thông tin một cách tốt nhất. khuyết điểm lớn nhất của phương pháp nảy là rất khó xác định điểm đầu và điểm cuối khi nhiễu có biên độ lớn. Phương pháp xác định tỉ lệ biên độ tín hiệu dao động qua điểm Zero: là thông số cho biết số lần mà biên độ tín hiệu đi qua điểm Zero trong một khoảng thời gian xác định. Tín hiệu âm thanh là một tín hiệu gần như tuần hoàn nên tỉ lệ qua điểm Zero lớn hơn nhiều so với nhiễu.
Sau khi cắt các khoảng lặng, để giảm nhiễu có thể dùng phương pháp lọc nhiễu Wiener và để khắc phục việc tín hiệu thu quá nhỏ có thể dùng phương pháp chuân hóa biên độ tín hiệu. HVTH: Nguyễn Thanh Tuấn -8- Thiết kế HTN nhận dạng giọng nói dùng Neural Network GVHD: TS.3 Trích đặc trưng [6] Việc trích đặc trưng tín hiệu rất quan trọng, ảnh hưởng đến tính chính xác và hiệu quả của hệ thông nhận dang. Có 2 phương pháp được dùng phổ biến nhất là phương pháp LPC (Linear Prediction Coding) và phương pháp MFCC (Mel-scale Frequency Cepstal Coeffients). Dé tai sẽ giới thiệu va áp dụng phương pháp MFCC như đã phân tích ở mục 2 của phần Mở đầu.
Speech >Pre-emphasis-» Frame Ly Windowing E—>| FFT |_| Mel frequency >Cepstrum| Blocking Filter Bank Ỷ > Logged >! Delta MECC Energy Hình 1. 3 Sơ đồ giải thuật trích đặc trưng MFCC Phương pháp này dựa trên khả năng cảm nhận âm thanh của tai người. Đó là tuyến tính ở vùng tần số thấp và tăng theo thang logarit ở vùng tần số cao. Từ đặc trưng này, phương pháp MECC cho ta những đặc trưng quan trọng nhất của tiếng noi con nBƯỜI.
Đầu ra của MECC là các vectơ đặc trưng mà khi dựa vào các vectơ này ta sẽ phân biệt được các tiếng nói khác nhau. Các vecto nay được sử dụng trong cả quá trình huấn luyện và nhận dạng tiếng noi. + Pre-emphasis: bộ loc pre-emphasis được dùng dé khuếch đại tín hiệu ở các tần số cao hơn. Ham truyén của bộ lọc trong miễn thời gian được cho bởi phương trình (1.
Trong đó tham số a tiêu biểu từ 0.9 đến 1, với s; là điểm thứ i của tín hiệu tiếng nói khi chưa qua bộ lọc và S| là điểm thứ i của tin hiệu tiếng nói sau khi được pre-emphasis.1) + Frame blocking: Bởi vi tín hiệu tiếng nói là tín hiệu biến đổi chậm theo thời gian, trong một hệ thống nhận dạng tiếng nói thì tiếng nói được phân đoạn thành những khoảng thời gian ngăn được gọi là các Frame. Để cho các thông số của Frame ít thay đối, thông thường có 0% chồng lấp giữa các Frame kế cận nhau, như HVTH: Nguyễn Thanh Tuấn -9- Thiết kế HTN nhận dạng giọng nói dùng Neural Network GVHD: TS.Hoàng Trang trong hình 1. Trong các hệ thống nhận dạng tiếng nói băng phần mém, tiếng nói được chia thành những Frame có chiều dai 20ms với 10ms chong lấp. Khi tiếng nói được lay mẫu với tần số 8SKHz sẽ có 160 mẫu trong mỗi Frame và có 80 mẫu được chồng lấp giữa 2 Frame kế cận nhau.
4 Cac Frame trong phân tích tiếng nói + Windowing: việc lọc cửa sỐ thường được áp dụng cho mỗi khung tín hiệu đề giảm sự tác động của việc chia khung tín hiệu, thường dùng cửa sô Hamming: X„(n) = x(n)*h(n) (1.