Nhận dạng giọng nói bằng MFCC

43 893 0
Nhận dạng giọng nói bằng MFCC

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tiếng nói là công cụ giao tiếp vô cùng hiệu quả và không thể thiếu của con người. Ngày nay, với ý tưởng mở rộng việc giao tiếp người với máy móc qua tiếng nói thay vì những thiết bị đầu vào phức tạp và không dễ nhớ, rất nhiều nhà nghiên cứu khoa học đã đầu tư công sức vào việc xây dựng những hệ thống nhận dạng tiếng nói tự động cho nhiều kiểu giọng nói và nhiều ngôn ngữ. Đặc điểm chung của các hệ nhận dạng này là đều bắt đầu bằng quá trình tìm hiểu và mô phỏng các đặc điểm của tiếng nói, hay còn gọi là quá trình “trích chọn đặc trưng”. Công việc này đặt nền tảng quan trọng cho việc áp dụng các phương pháp nhận dạng và quyết định tới tính chính xác của toàn hệ thống.Tiếp tục những nghiên cứu trên, khóa luận này tìm hiểu những đặc điểm của tiếng nói nói chung và tiếng nói tiếng Việt nói riêng với mục đích kết xuất được các đặc trưng tiếng nói tiếng Việt dưới dạng số thực cho quá trình nhận dạng. Đồng thời áp dụng mô hình thống kê HMM để nhận dạng sử dụng phương pháp phân biệt thanh điệu để có kết quả kiểm chứng mức độ chính xác của quá trình trích chọn đặc trưng và hướng tới ứng dụng.

Tóm tắt nội dung Tiếng nói công cụ giao tiếp vô hiệu thiếu người Ngày nay, với ý tưởng mở rộng việc giao tiếp người với máy móc qua tiếng nói thay thiết bị đầu vào phức tạp không dễ nhớ, nhiều nhà nghiên cứu khoa học đầu tư công sức vào việc xây dựng hệ thống nhận dạng tiếng nói tự động cho nhiều kiểu giọng nói nhiều ngôn ngữ Đặc điểm chung hệ nhận dạng bắt đầu trình tìm hiểu mô đặc điểm tiếng nói, hay gọi trình “trích chọn đặc trưng” Công việc đặt tảng quan trọng cho việc áp dụng phương pháp nhận dạng định tới tính xác toàn hệ thống Tiếp tục nghiên cứu trên, khóa luận tìm hiểu đặc điểm tiếng nói nói chung tiếng nói tiếng Việt nói riêng với mục đích kết xuất đặc trưng tiếng nói tiếng Việt dạng số thực cho trình nhận dạng Đồng thời áp dụng mô hình thống kê HMM để nhận dạng sử dụng phương pháp phân biệt điệu để có kết kiểm chứng mức độ xác trình trích chọn đặc trưng hướng tới ứng dụng Lời cảm ơn Đầu tiên, xin chân thành cảm ơn tiến sĩ Lê Anh Cường, đồng cảm ơn tiến sĩ Lê Sỹ Vinh công tác môn Khoa Học Máy Tính - khoa Công nghệ Thông Tin - trường Đại Học Công Nghệ - Đại Học Quốc Gia Hà Nội, hai thầy hướng dẫn trực tiếp hướng dẫn hoàn thành khóa luận Nhờ động viên giúp đỡ nhiệt tình lời khuyên bổ ích, ý tưởng sáng tạo hai thầy trình hướng dẫn giúp hoàn thành khóa luận cách tốt Tiếp theo xin dành lời cảm ơn tới PGS.TS Lương Chi Mai anh Vũ Tất Thắng công tác Viện Khoa Học Công Nghệ Việt Nam, hai người giúp đỡ cho nhiều lời khuyên kinh nghiệm hữu ích gặp khó khăn, bế tắc trình hoàn thành khóa luận Ngoài ra, xin gửi lời cảm ơn tới người bạn nhóm nghiên cứu: Đàm Tiến Dũng, người sát cánh, giúp đỡ động viên nhiều từ bắt đầu tới hoàn thành Đồng cảm ơn tới bạn lớp anh chị học khóa với chia sẻ kinh nghiệm bổ ích Cuối xin gửi lời cảm ơn tới gia đình tôi, ba mẹ người ủng hộ chỗ dựa tinh thần vững cho năm học đại học nói chung việc hoàn thành khóa luận cuối khóa nói riêng Mục lục MỞ ĐẦU 1.1 Đặt vấn đề .4 1.2 Hướng nghiên cứu phương pháp sử dụng 1.3 Giới hạn mục tiêu đề tài .7 KỸ THUẬT TRÍCH CHỌN ĐẶC TRƯNG MFCC TRONG NHẬN DẠNG TIẾNG NÓI 1.4 XỬ LÝ TÍN HIỆU ÂM THANH VÀ TRÍCH CHỌN ĐẶC TRƯNG 1.5 TRÍCH CHỌN ĐẶC TRƯNG MFCC ĐẶC TRƯNG VỀ THANH ĐIỆU CỦA TIẾNG VIỆT 16 1.6 Khái niệm ngôn điệu, ngữ điệu điệu .17 1.7 Tìm đường nét F0 nghiên cứu đặc điểm điệu tiếng Việt 17 SỬ DỤNG ĐẶC TRƯNG TIẾNG NÓI NÓI CHUNG VÀ TIẾNG VIỆT NÓI RIÊNG CHO MÔ HÌNH NHẬN DẠNG TIẾNG NÓI TIẾNG VIỆT 23 1.8 Mô hình Markov ẩn (Hidden Markov Model) .23 1.9 Áp dụng mô hình HMM cho toán nhận dạng tiếng nói, sử dụng trích chọn đặc trưng MFCC 25 1.10 Sử dụng đường nét F0 phân biệt điệu tiếng Việt 34 Ở số thực làm tròn thành số nguyên gần để tiện quan sát 34 KẾT QUẢ THỰC NGHIỆM .37 1.11 Kết nhận dạng tiếng nói sử dụng đặc trưng MFCC 37 1.12 Kết phân biệt điệu .38 1.13 Nhận xét 40 KẾT LUẬN CHUNG VÀ ĐỊNH HƯỚNG NGHIÊN CỨU PHÁT TRIỂN TRONG TƯƠNG LAI 42 1.14 Các vấn đề nghiên cứu hoàn thành 42 1.15 Các vấn đề tồn 42 1.16 Định hướng nghiên cứu phát triển tương lai 43 Danh mục hình minh họa Hình : Vị trí việc trích chọn đặc trưng hệ thống nhận dạng tiếng nói Hình (nguồn [2]): Sơ đồ trình trích chọn đặc trưng MFCC Hình (nguồn [2]): Một đoạn tần âm trước sau Pre-Emphasis 10 Hình (nguồn [2]): Minh họa trình Windowing 11 Hình (nguồn [2]): So sánh Rectangular (trái) Hamming window (phải) 12 Hình (nguồn [2]): Biến đổi DFT cho Hamming window 13 Hình (nguồn [2]): Mô hình băng lọc thang đo tần số bình thường thang đo mel .14 Hình 8: Đường nét thô ngang, âm vị “a” 20 Hình 9: Đường nét thô huyền, âm vị “à” 20 Hình 10: Đường nét thô sắc, âm vị “á” 21 Hình 11: Đường nét thô ngã, âm vị “ã” 21 Hình 12: Đường nét thô nặng, âm vị “ạ” 22 Hình 13: Đường nét thô hỏi, âm vị “ả” 22 MỞ ĐẦU Chương dành để đặt vấn đề đề tài nhận dạng tiếng nói nói chung nhận dạng tiếng nói tiếng Việt nói riêng qua xác định tầm quan trọng việc tìm hiểu đặc trưng tiếng nói hệ thống nhận dạng Đồng thời, chương nghiên cứu hướng nghiên cứu sử dụng mục tiêu khóa luận đề tài 1.1 Đặt vấn đề Một mục đích xu hướng quan trọng khoa học ngày hướng tới việc tự động hóa công việc chân tay, thực tế máy móc với hiệu suất tốc độ vượt trội thực thay sức lao động người nhiều lĩnh vực điều khiển máy, chế tạo linh kiện, vật liệu… Một cách tự nhiên, điều nảy sinh nhu cầu giao tiếp người với máy móc, việc giao tiếp bình thường thông qua thiết bị đầu vào dần trở nên phức tạp cỗ máy Trong nhiều năm qua, việc nghiên cứu xây dựng hệ thống nhận dạng tiếng nói phục vụ giao tiếp người – máy nhiều nhà nghiên cứu khoa học giới đầu tư thời gian công sức đạt nhiều kết khả quan (VD: Framework nhận dạng tiếng nói Sphinx4, xây dựng công ty Sun, nhận dạng câu nằm tập từ điển khoảng 65.000 từ) [8] Đặc điểm chung hệ thống nhận dạng tiếng nói, dù sử dụng phương pháp nào, trước hết phải số hóa tín hiệu tiếng nói để máy tính hiểu được, qua tìm đặc trưng riêng tiếng nói so với đặc trưng âm khác nhạc cụ, tiếng ồn… Chính việc trích chọn đặc trưng nói vấn đề quan trọng hàng đầu cho hệ thống nhận dạng tiếng nói, trích chọn đặc trưng xác, độ xác việc nhận dạng hệ thống cao, điều hoàn toàn với tất tiếng nói ngôn ngữ, bao gồm tiếng nói tiếng Việt Tiếng nóichọn đặc trưng hệ thống nhận dạng Hình sau vị trí trình trích tiếng nói bất kì: Trích chọn đặc trưng frame frame frame Huấn luyện nhận dạng Text Hình : Vị trí việc trích chọn đặc trưng hệ thống nhận dạng tiếng nói 1.2 Hướng nghiên cứu phương pháp sử dụng Có ba phương pháp chính, hiệu để tìm hiểu đặc trưng tiếng nói, thứ mô lại trình phát tiếng nói máy phát âm (bao gồm phận bên miệng, mũi), thứ hai mô trình thu nhận âm máy cảm nhận âm (các phận bên tai) phương pháp phân tích phổ tổng hợp hai phương pháp Hiện phương pháp chọn đặc trưng mô trình phát âm thu nhận âm phương pháp “mã hóa dự đoán tuyến tính” – LPC (Linear predictive coding) [6][9] phương pháp lấy “hàm biên độ trung bình” – AMDF [12] (Average magnitude different function) mô tả cảm nhận cao độ âm tai, nhiên hạn chế hai phương pháp thể việc kết nhận dạng chưa thật cao [12] Trong khóa luận này, ta đề cập tới kĩ thuật trích chọn đặc trưng MFCC [2] kết hợp phương pháp để trích chọn đặc trưng tiếng nói tiếng Việt, sử dụng lại phương pháp AMDF [9] để trích chọn đặc trưng đặc thù tiếng Việt điệu Trích chọn đặc trưng MFCC xem phương pháp hiệu áp dụng nhiều hệ nhận dạng tiếng Sphinx công ty Sun Sử dụng kết trích chọn đặc trưng, ta áp dụng phương pháp nhận dạng hiệu dùng mô hình HMM [5] để huấn luyện nhận dạng tiếng nói, sử dụng đặc trưng điệu để phân biệt điệu tiếng Việt cho tín hiệu âm ban đầu 1.3 Giới hạn mục tiêu đề tài Mục tiêu việc tìm hiểu đặc trưng tiếng nói hướng tới việc xây dựng hệ thống nhận dạng tiếng nói tiếng Việt với độ xác cao, nhiên phạm vi thời gian khuôn khổ khóa luận cử nhân Công Nghệ Thông tin, giới hạn nội dung nghiên cứu vấn đề đây: Thứ nhất, việc trích chọn đặc trưng MFCC AMDF áp dụng cho hệ nhận dạng tiếng nói liên tục (tiếng nói nói theo câu) hệ nhận dạng rời rạc (nói từ riêng biệt), hệ thống mà khóa luận xây dựng hệ nhận dạng rời rạc, với từ điển chữ số đếm tiếng Việt (KHONG, MOT, HAI, BA, BON, NAM, SAU, BAY, TAM, CHIN), phân biệt điệu không phụ thuộc từ điển Thứ hai, hệ nhận dạng (bao gồm người nhóm nghiên cứu) xây dựng “Phụ thuộc người nói”, chưa có điều kiện thu âm để huấn luyện kiểm thử với nhiều kiểu giọng nói nên coi hệ thống xây dựng “Không phụ thuộc người nói” Hệ thống xây dựng huấn luyện nhận dạng với giọng nói người Từ việc xác định mục tiêu rõ ràng mình, định hướng tương lai nghiên cứu sâu kĩ thuật trích chọn đặc trưng kĩ thuật nhận dạng để mở rộng từ vựng nhận dạng, hướng vào ứng dụng giao tiếp người máy, điều khiển máy giọng nói ứng dụng khác giao tiếp truyền thông… KỸ THUẬT TRÍCH CHỌN ĐẶC TRƯNG MFCC TRONG NHẬN DẠNG TIẾNG NÓI 1.4 XỬ LÝ TÍN HIỆU ÂM THANH VÀ TRÍCH CHỌN ĐẶC TRƯNG Tín hiệu âm đời thực tín hiệu liên tục, hay tín hiệu tương tự Trước thực bước xử lý nào, tín hiệu âm cần số hóa Việc thực tự động thiết bị thu âm, cách lấy mẫu tín hiệu đầu vào [1] Như Đồng nghiên cứu có phần nội dung chung với khóa luận “Các kĩ thuật nhận dạng tiếng nói”, 2010 sinh viên Đàm Tiến Dũng – Đại học công nghệ vậy, tín hiệu âm đưa vào máy tính, tập mẫu liên tiếp nhau, mẫu giá trị biên độ tín hiệu thời điểm định Một tham số quan trọng việc lấy mẫu tín hiệu âm tần số lấy mẫu, Fs, tức số mẫu lấy giây Để đo lường xác, cần phải lấy mẫu chu kỳ tín hiệu tương tự đầu vào Như vậy, tần số lấy mẫu phải lớn lần tần số cao tín hiệu âm đầu vào Tuy nhiên, thực tế tai người nhận biết âm có tần số nhỏ 10.000Hz [12][3], tần số lấy mẫu 20.000Hz đủ cho việc nhận dạng với độ xác cao Trong lĩnh vực nhận dạng tiếng nói qua điện thoại, tần số lẫy mẫu cần 8.000Hz có tín hiệu có tần số nhỏ 4.000Hz truyền điện thoại [10] Các thiết bị thu âm thường có tần số lấy mẫu 16.000Hz [3] Trích chọn đặc trưng nhận dạng tiếng nói việc tham số hóa chuỗi tín hiệu âm dạng sóng đầu vào, biến đổi tín hiệu âm thành chuỗi vector đặc trưng n chiều, chiều giá trị thực Hiện nay, có nhiều phương pháp trích chọn đặc trưng như: LPC(Linear predictive coding – Dự đoán tuyến tính [6][9]), AMDF(Average magnitude different function – hàm biên độ trung bình), MFCC(Melfrequency cepstral coefficients), kết hợp phương pháp [12] Phần giới thiệu cụ thể phương pháp trích chọn đặc trưng MFCC Trong toán nhận dạng tiếng nói xét, với tần số lấy mẫu mặc định 16.000Hz, đoạn mẫu với số lượng định tạo thành frame, tín hiệu tiếng nói tập frame liên tiếp nhau, trích chọn đặc trưng MFCC cho ta tập đặc trưng cho frame tiếng nói Tại phải chia thành frame frame cụ thể chúng có đặc trưng nào, ta đề cập tới phần sau 1.5 TRÍCH CHỌN ĐẶC TRƯNG MFCC Trong nhận dạng tiếng nói, kỹ thuật trích chọn đặc trưng MFCC phương pháp phổ biến MFCC viết tắt Mel-frequency cepstral coefficients Kỹ thuật dựa việc thực biến đổi để chuyển liệu âm đầu vào (đã biến đổi Fourier cho phổ) thang đo tần số Mel, thang đo diễn tả tốt nhạy cảm tai người Nội dung tham khảo từ Speech and Language Processing, 2007, chapter Tác giả Daniel Jurafsky & Jame H.Martin âm Kỹ thuật trích chọn đặc trưng gồm bước biến đổi liên tiếp, đầu bước biến đổi trước đầu vào bước biến đổi sau Đầu vào trình trích chọn đặc trưng đoạn tín hiệu tiếng nói Vì tín hiệu âm sau đưa vào máy tính rời rạc hóa nên đoạn tín hiệu tiếng nói bao gồm mẫu liên tiếp nhau, mẫu giá trị thực, thể giá trị biên độ âm thời điểm Trích chọn đặc trưng MFCC gồm sáu bước hình vẽ sau, kết tập gồm 39 giá trị đặc trưng cho frame tiếng nói Hình (nguồn [2]): Sơ đồ trình trích chọn đặc trưng MFCC 1.5.1 Pre-emphasis Tín hiệu âm thường thu môi trường đời thường, tiếng nói bình thường người không to, trừ nói to có chủ định, nhiễu môi trường (tần số thấp) nhiều có cường độ lớn phần đáng kể (nghe dễ dàng nhận ra) tiếng nói thu âm, bước trình trích chọn đặc trưng MFCC xử lý vấn đề này, việc thực tăng cường độ tần số cao lên nhằm làm tăng lượng vùng có tần số cao – vùng tần số tiếng nói, cách dễ hiểu làm tiếng nói lớn lên để ảnh hưởng âm môi trường nhiễu trở thành không đáng kể Việc tăng cường độ vùng tần số cao lên đồng thời làm cho thông tin rõ ràng mẫu tiếng nói Hình sau mô tả trước sau trình Preemphasis đoạn tín hiệu âm thanh: Hình (nguồn [2]): Một đoạn tần âm trước sau Pre-Emphasis 1.5.2 Windowing Trong hệ thống nhận dạng tiếng nói trình bày khóa luận này, với mục đích nâng cao độ xác việc nhận dạng tiếng, thay nhận dạng từ riêng biệt, từ đoạn hội thoại phân tích thành âm vị (subphone) [7], hệ thống nhận dạng âm vị Âm vị đơn vị phát âm từ, âm vị cấu thành tiếng nói, tiếng Anh, đơn vị cấu thành phiên âm từ (chẳng hạn ONE: w-ah-n, âm vị w, ah n), cách phát âm tiếng Việt, cách viết từ hình thức văn âm vị (chẳng hạn “MOT” = “m-oo-t”, âm vị m, oo t) Vì lý đó, đặc trưng cần phải trích chọn âm vị, thay từ hay đoạn tiếng nói dài Windowing việc cắt đoạn tín hiệu âm đầu vào thành mẩu tín hiệu có thời lượng nhỏ, gọi frame Mỗi frame sau nhận dạng thuộc âm vị Nói cách khác, frame tập gồm số mẫu tín hiệu ban đầu ta đề cập phần 2.1 Một lý khác cho thấy cần thiết việc windowing tín hiệu âm thay đổi nhanh, thuộc tính biên độ, chu kỳ không ổn định Khi tín hiệu âm cắt thành đoạn nhỏ đoạn, coi tín hiệu ổn định, đặc trưng tín hiệu không đổi theo thời gian Hình vẽ sau mô tả trình Windowing: Ở đây, dấu ^ thể tham số sau điều chỉnh lại Sau cập nhật lại tham số trên, thu mô hình phù hợp mô hình cũ λ, dãy quan sát O: Cụ thể thuật toán Baum-Welch mô tả sau: Khởi tạo A, B � Lặp: Bước kỳ vọng: tính giá trị γt(i) ξt(i,j) Bước tối ưu hóa: tính lại tham số A, B � 1.9.1.3 Huấn luyện nhúng (Embedded training) Cụ thể thuật toán Baum-Welch toán nhận dạng tiếng nói mô tả phần Trong thực tế, để gán nhãn cho tập liệu dài tiếng, cần thời gian lên đến 400 tiếng Do phương pháp huấn luyện hand-labeled word training không khả thi toán có từ vựng lớn Một kỹ thuật huấn luyện khác, không đòi hỏi liệu gán nhãn sẵn, xây dựng dựa thuật toán Baum-Welch (mục 4.2.1.2), phương pháp huấn luyện nhúng (Embedded training) Phương pháp gồm hai bước sau: a Xây dựng mô hình Markov ẩn λ=(A,B, �) cho từ cần huấn luyện Các tham số A, B � khởi tạo sau: �i có giá trị mô hình bắt đầu với trạng thái i, ngược lại � i = aịj có giá trị 0.5 i = j bước chuyển từ i sang j bước chuyển tồn mô hình, ngược lại aịj = Riêng ann Khởi tạo giá trị kỳ vọng phương sai , giá trị kỳ vọng phương sai cho trạng thái kỳ vọng phương sai tất vector đầu vào Sau tính bj(ot) dựa vào bjot = exp( - ) Ta giải thích kĩ công thức phần sau b Chạy thuật toán Baum-Welch cho mô hình λ Bảng sau mô tả HMM cho từ MOT giá trị khởi tạo A �: � m o t 0 m o t m 0.5 0.5 o 0.5 0.5 t 0 Như vậy, mẫu tiếng nói training có ma trận chuyển trạng thái A (transition matrix) ma trận phân phối trạng thái B (observation likelihood) cho mẫu Bây giờ, với mẫu tiếng nói O nằm tập training cần nhận dạng, ta cần tính lại ma trận A phân phối trạng thái với mẫu tập training xây dựng Cách tính ma trận sau: Gọi Ak(i,j), Bk(j, t), Sk (k = M với M số mẫu training) ma trận chuyển trạng thái, phân phối trạng thái số lượng quan sát mẫu thứ k tập training Ma trận chuyển trạng thái A toàn tập training tính theo công thức: Aij = Tính ma trận phân phối trạng thái cho dãy quan sát O khó khăn chút Ta có ma trận Bk(j, t) với ý nghĩa mẫu thứ k, xác suất để quan sát t có trạng thái j Bk(j, t) Như vậy, coi trạng thái biến ngẫu nhiên nhận giá trị ot đó, trạng thái có phân phối định Ở ta gán phân phối phân phối chuẩn với giá trị kì vọng Phân phối ta sau: phương sai f (x | |= exp( - ) với x tạm coi giá trị không gian vector biến quan sát ot Như vậy: bjot = exp( - ) cụ thể ot vector 39 chiều thực, bjot tính lại theo công thức phân phối vector đa chiều bjot = Ở kì vọng phân phối thành phần thứ d trạng thái thứ j, hai giá trị tính theo công thức kì vọng phương sai đối không gian chiều: = = Ở Xjd giá trị chiều thứ d tất biến ot toàn mẫu tập huấn luyện xác suất tương ứng với ot mẫu thứ k Bk(j, t) Như vậy, xác suất tính toán được, ta hoàn toàn có ma trận xác suất A, B yêu cầu ban đầu 1.9.1.4 Nhận dạng (Decoding) Thuật toán Viterbi: Phần “Decoding” nhận đầu vào dãy quan sát O = o1 o2 oT (đặc trưng cho tín hiệu tiếng nói) cho dãy gán trạng thái có xác suất lớn tập training Để làm điều này, ta sử dụng giải thuật Viterbi Giả sử A = aij B = bj(ot) tương ứng ma trận chuyển trạng thái tập training phân phối trạng thái dãy quan sát O Gọi F = f(j, t) xác suất lớn để quan sát thứ t có trạng thái j, với giả thiết ok (k

Ngày đăng: 25/08/2017, 14:55

Mục lục

    1.2. Hướng nghiên cứu và phương pháp sử dụng

    1.3. Giới hạn và mục tiêu của đề tài

    1.4. XỬ LÝ TÍN HIỆU ÂM THANH VÀ TRÍCH CHỌN ĐẶC TRƯNG

    1.5. TRÍCH CHỌN ĐẶC TRƯNG MFCC 2

    1.5.3. DFT (Discrete fourier transform)

    1.5.4. Mel filter-bank and log

    1.6. Khái niệm ngôn điệu, ngữ điệu và thanh điệu 3

    1.7. Tìm đường nét F0 và nghiên cứu đặc điểm của từng thanh điệu trong tiếng Việt

    1.7.1. Tính đường nét thanh điệu 4

    1.7.1.1. Hàm biên độ trung bình (AMDF – Average Magnitude Difference Fucntion)

Tài liệu cùng người dùng

Tài liệu liên quan