Xây dựng hệ thống nhận dạng tiếng nói sử dụng mô hình lượng tử hóa vector

58 27 0
Xây dựng hệ thống nhận dạng tiếng nói sử dụng mô hình lượng tử hóa vector

Đ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

TRƯỜNG ĐẠI HỌC VINH KHOA ĐIỆN TỬ - VIỄN THÔNG - Đ HIỆ i HỆ H H H I H I Ử ỬH A Giảng vi n h ng d n: Sinh vi n th c hiện: Đ n u ễn M số sinh vi n: 1151083788 Vinh, 5/2016 O n n ỜI Ả Ơ Trong trình học tập, tu d ỡng rèn luyện Khoa Điện Tử - Viễn thông, Tr ờng Đại Học Vinh em đ đ ợc trang bị kiến thức chuy n mơn nh kinh nghiệm th c tế để hoàn thành đ ợc đồ án tốt nghiệp Em xin chân thành cảm ơn thầy, giáo Khoa Điện Tử - Viễn thông đ quan tâm, h ng d n, truyền đạt lại kiến thức kinh nghiệm cho em suốt thời gian học tập tài tr ờng Đặc biệt em xin chân thành cảm ơn đến thầy giáo ThS Đặng Thái Sơn đ tận tình bảo, h ng d n chia kinh nghiệm quý báu để em hồn thành đ ợc đồ án Trong trình làm đồ án em đ cố gắng hồn thành nh ng khơng tránh đ ợc sai sót, em mong nhận đ ợc s đóng góp ý kiến quý thầy cô bạn Ắ Đ Đồ án trình bày cách thức nguyên tắc để tạo hệ thống nhận dạng tiếng nói Tìm hiểu thuật tốn mơ hình nhận dạng tiếng nói điển hình, ph ơng pháp trích Vector đặc tr ng Đồng thời xây d ng hệ thống nhận dạng tiếng nói d a tr n hai mơ hình mơ hình MFCC mơ hình l ợng tử hóa Vector VQ Mơ b c th c trích rút Vector đặc tr ng MFCC ph ơng pháp VQ Cuối so sánh nhận định kết đạt đ ợc Hệ thống nhận dạng tiếng nói đ ợc xây d ng mơ tảng lập trình Matlab Các ứng dụng hệ thống h ng phát triển đề tài đ ợc đề cập đồ án ABSTRACT This thesis presents methods and principles to build a speaker recognition system Researching the typical recognition algorithms and models, the feature exactions Otherwhile, this project was built a speaker recognition system using two methods They are MFCC model and VQ model Simulating the processing steps of MFCC and VQ methods Comparing and considering the results at the end Speaker recognition system was built up and simulated by using Matlab code The Applications and futher development of system was also presented in this thesis M CL C LỜI CẢ Ơ TÓM TẮ Đ ÁN M C L C I ĐẦU LỜI DANH SÁCH HÌNH VẼ .7 DANH SÁCH CÁC TỪ VI T TẮT .8 H Ơ I ỔNG QUAN VỀ Ĩ H V C NH N D NG GIỌNG NÓI .9 1.1 Gi i thiệu 1.2 Các h ng tiếp cận việc t động nhận dạng tiếng nói 10 1.3 Một số ứng dụng hệ thống nhận dạng tiếng nói 11 1.4 Những khó khăn hạn chế hệ thống ARS 13 H Ơ H Ơ H Í H O ĐẶ 14 2.1 Mơ hình LPC (Linear Predictive Coding model) .15 2.1.1 Các biểu thức phân tích LPC .16 2.1.2 Các b c th c thuật tốn LPC để trích đặc tr ng tín hiệu 18 2.2 Mơ hình MFCC (Mel-Frequency Ceptrum Coefficients) 20 2.2.1 Frame Blocking 21 2.2.2 Cửa sổ hoá (Windowing) 22 2.2.3 Biến đổi Fourier nhanh (FFT) .22 2.2.4 Chuyển đối Mel-Frequency 23 2.2.5 Wrapping biến đổi DCT 24 2.3 Vấn đề xác định điểm đầu điểm cuối tín hiệu (speech detection) 25 H Ơ HU T TỐN VÀ MƠ HÌNH NH N D NG 27 3.1 Mơ hình Markov n 27 3.1.1 Chuỗi Markov 27 3.1.2 Các thành phần mơ hình Markov .28 3.1.3 Mơ hình Markov n .30 3.1.4 Các thành phần mơ hình Markov n 30 3.1.5 Ba toán HMM 31 3.2 Mơ hình l ợng tử hóa Vector 43 3.2.1 Khái niệm 43 3.2.2 Các yếu tố tổ chức VQ 45 3.2.3 Khoảng cách Euclid .46 3.2.4 Thuật toán tạo chùm 46 H Ơ NG HỆ TH NG NH N D NG GIỌNG NÓI BẰNG H Ơ H NG TỬ HÓA VECTOR 50 4.1 Xây d ng thuật toán nhận dạng ph ơng pháp MFCC đơn 50 4.2 Xây d ng hệ thống nhận dạng ph ơng pháp l ợng tử hóa Vector 51 4.3 Kết 52 K T LU N 53 TÀI LIỆU THAM KHẢO 54 PH L C .55 I ĐẦU LỜI Tiếng nói ph ơng tiện trao đổi thơng tin tiện ích vốn có ng ời Ư c mơ “máy nói”, “máy hiểu tiếng nói” đ không xuất từ câu chuyện khoa học viễn t ởng xa x a mà cịn động l c thúc nhiều nhà nghiên cứu, nhóm nghiên cứu gi i Tuy vậy, việc có đ ợc “máy nói” mang tính t nhi n nh “máy hiểu tiếng nói” th c thụ cịn xa vời Chính thế, việc nắm bắt đ ợc kỹ thuật nh công nghệ tiên tiến cho việc xử lý tiếng nói th c s cần thiết Hệ thống nhận dạng tiếng nói (Automatic Speech Recognition – ASR) có đ ợc ứng dụng tuyệt vời nhiều lĩnh v c đời sống, lĩnh v c giao tiếp ng ời máy (Human Machine Interface) đ ợc áp dụng thành công Hiện gi i đ có nhiều nghiên cứu thử nghiệm hệ thống nhận dạng tiếng nói đạt đ ợc thành t u nh : Via Voice Mellennium (IBM), Via Voice Standard (IBM), CSLU, HTK Toolkit,… nhận dạng tiếng Anh, số hệ thống nhận dạng tiếng nói ngôn ngữ khác nh Trung Quốc, Ý, Đức,… Ở Việt Nam có trung tâm l n nghiên cứu lĩnh v c xử lý tiếng nói tiếng Việt là: Viện công nghệ thông tin Trung tâm nghiên cứu quốc tế thông tin đa ph ơng tiện, truyền thông ứng dụng (MICA)-ĐH Bách Khoa Hà Nội Ngồi cịn có luận án tiến sỹ, thạc sỹ n c li n quan đến vấn đề xử lý tiếng nói Nhiệm vụ luận văn nghi n cứu th c giải thuật tách từ, trích đặc tr ng tiếng nói, th c việc huấn luyện nhận dạng tiếng nói tiếng Việt dùng ph ơng pháp l ợng tử vector (VQ) kết hợp ph ơng pháp tách vector đặc tr ng MFCC ph ơng pháp tách vector đặc tr ng MFCC đơn Đồng thời tìm hiểu mơ hình nhận dạng khác nh mơ hình Marko n hay Neuron Network, ph ơng pháp tách đặc tr ng khác nh LPC hay PCA…; A H HH H Ẽ Hình 1.1 Mơ hình tổng qt hệ nhận dạng tiếng nói Hình 2.1 Trích đặc tr ng tiếng nói .15 Hình 2.2 Các b c th c thuật toán LPC .17 Hình 2.3 Các b c th c thuật toán MFCC 19 Hình 2.4 Phổ tần số tín hiệu tiếng nói 1s 20 Hình 2.5 Phổ tần số tín hiệu khoảng thời gian ngắn 21 Hình 2.6 Cửa sổ Hamming 22 Hình 2.7 Quan hệ tần số thang Mel tần số thang Hz .23 Hình 2.8 Dãy cửa sổ lọc Mel 24 Hình 3.1 Minh họa mơ hình Markov 26 Hình 3.2 Ví dụ minh họa 27 Hình 3.3 Ví dụ minh họa 28 Hình 3.4 Minh họa thủ tục tiến .32 Hình 3.5 Minh họa b c quy nạp thủ tục Forward .33 Hình 3.6 Ví dụ minh họa cho thuật toán Forward 34 Hình 3.7 Minh họa thủ tục lùi 35 Hình 3.8 Minh họa thủ tục Backward 36 Hình 3.9 Minh họa thủ tục Backward 36 Hình 3.10 Các trạng thái lần l ợt t ơng ứng 38 Hình 3.11 Minh họa c l ợng Baum-Welch 40 Hình 3.12 Số l ợng vector đặc tr ng tr c sau l ợng tử hóa 43 Hình 3.13 L u đồ giải thuật LBG 46 Hình 3.14 L u đồ giải thuật LBG 47 Hình 3.15 L u đồ giải thuật Binary Split .48 Hình 3.16 Giải thuật Binary Split 49 Hình 4.1 Hệ thống nhận dạng sử dụng ph ơng pháp MFCC .50 Hình 4.2 Hệ thống nhận dạng tiếng nói sử dụng mơ hình VQ .51 Hình 4.3 Giao diện kết ch ơng trình 52 DANH SÁCH CÁC TỪ VI T TẮT Tên viết tắt ĩa t ếng việt Tên tiếng Anh CSR Continuous Speech Recognition Nhận dạng tiếng nói liên tục DCT Discrete Cosine Transform Chuyển đổi cosin riêng biệt DTW Dynamic Time Warping S làm cong thời gian FFT Fast Fourier Transform Chuyển đổi Fourier nhanh HMM Hidden Markov Model Mơ hình HMM IWR Isolated Word Recognition Nhận dạng từ riêng biệt LBG Linde-Buzo-Gray Linde-Buzo-Gray LPC Linear Predictive Coding Mã d đốn tuyến tính MFCC VQ Mel-frequency Cepstral Coefficient Hệ số Mel-frequency Cepstral L ợng tử hóa Vector Vector Quantization H Ơ 1.1 I Ổ QUA Ề Ĩ H H IỌ I t ệu Nhận dạng tiếng nói ng ời q trình hồn hảo, s quan sát đối t ợng cần nhận dạng, ghi nhận lại đặc tr ng đối t ợng, phân l p đối t ợng có sử dụng khả phán đoán suy luận để phân biệt đối t ợng v i đối t ợng khác (trong tập gần nh vô hạn đối t ợng) Trong đó, nhận dạng t động – nhận dạng cơng cụ máy vi tính đơn giản q trình phân biệt tín hiệu v i tín hiệu khác (trong tập hữu hạn tín hiệu), trình đ ợc th c cách th c b Tiền xử lý, trích vector đặc tr ng c tổng quát sau: Tín hiệu dùng để nhận dạng Tín hiệu dùng để huấn luyện Học l p, phân mẫu Nhận dạng, so kh p mẫu Ng ỡng luật định Kết Tập hợp từ điển, l p tín hiệu Hình 1.1 Mơ hình tổng qt hệ nhận dạng tiếng nói - Thu nhận tín hiệu trích đặc tr ng: Thu nhận tín hiệu cần nhận dạng, khử nhiễu lọc tín hiệu (tiền xử lý) rút đặc tr ng tín hiệu (vector đặc tr ng) - Học mẫu: kết nhóm, phân l p nhóm vector đặc tr ng nhóm tín hiệu (bằng thuật giải Heristic, cách sử dụng mạng Neural, siêu phẳng dùng thuật toán K-means, Batchelor-Wilkins, ……) Q trình tạo l p tín hiệu, l p đặc tr ng cho nhóm tín hiệu - Nhận dạng, so kh p mẫu: Tìm mối liên hệ tín hiệu cần nhận dạng l p tín hiệu đ ợc tạo b c tr c (bằng cách thông qua quy tắc ng ời láng giềng gần chẳng hạn) Nếu nh tín hiệu so kh p (và mức độ so kh p thỏa ng ỡng đó) ứng v i l p tín hiệu hệ thống nhận dạng xác định tín hiệu tín hiệu thuộc vào nhóm tín hiệu v i tỉ lệ định gọi độ xác hệ thống nhận dạng (tỉ lệ dĩ nhi n cao tốt) c ướn t ếp cận tron v ệc tự độn n ận dạn t ến 1.2 Một cách tổng quan, có h ng tiếp cận hệ thống nhận dạng tiếng nói : Ph ơng pháp: Ngữ âm-Âm học (Acoustic-Phonetic) Ph ơng pháp: Nhận dạng mẫu (Pattern-recognition) Sử dụng: Trí tuệ nhân tạo (Artifical Intelligence) Ph ơng pháp ngữ âm - âm học d a lý thuyết âm học ngữ âm cho có hữu hạn đơn vị âm học riêng biệt ngơn ngữ đ ợc đặc tr ng tập thuộc tính biểu tín hiệu tiếng nói biểu diễn phổ B c ph ơng pháp phân đoạn tín hiệu tiếng nói thành vùng có đặc tính âm học đặc tr ng cho đơn vị ngữ âm gán cho vùng nhãn ngữ âm B c thứ xác định từ có nghĩa từ chuỗi nhãn ngữ âm Mặc dù vậy, ph ơng pháp gặp phải nhiều khó khăn triển khai th c tế nh : - S đòi hỏi vốn kiến thức l n đặc diểm âm học đơn vị ngữ âm - S l a chọn đặc tr ng đ ợc th c cách khơng chắn - Khơng có thuật toán hay thủ tục đủ mạnh để th c dán nhãn tín hiệu huấn luyện đủ mạnh cho nhiều khu v c khác đ ợc chấp nhận đông đảo nhà chuyên gia ngôn ngữ học Ph ơng pháp nhận dạng mẫu sử dụng tr c tiếp mẫu thành phần tiếng nói mà khơng quan tâm nhiều đến đặc tính mặt ngữ âm Trong hầu hết thuật tốn nhận dạng mẫu, có b c huấn luyện nhận dạng Các kiến thức hệ đ ợc xây d ng qua thủ tục huấn luyện Hệ ghi nhận đặc tính tín hiệu tiếng nói đ ợc “học” thơng qua tham số đặc tr ng Tín hiệu cần đ ợc nhận dạng đ ợc tính tốn để đ a kết có xác suất gần 10 Hình 3.12 Số lượng vector đặc trưng trước sau lượng tử hóa Speaker Speaker Speaker centroid sample VQ distortion Speaker centroid sample Hình 3.13 Minh họa phương pháp lượng tử hóa VQ VQ ph ơng pháp ánh xạ vector không gian l n thành số l ợng hữu hạn vector nằm khơng gian đó.Mối vùng khơng gian rộng l n gọi bó (cluster) đặc tr ng tâm gọi “codeworld” Tập hợp code word gọi “codebook” Hình bên nguy n lý để minh họa cho giải thuật Trong hình minh họa này, có giọng nói chiều không gian 44 acoustic vector đ ợc trình bày Vịng trịn acoustic vector ng ời thứ nhất, hình chữ nhật acoustic vector ng ời thứ Trong trình huấn luyện, thuật tốn tạo chừm (sẽ đ ợc trình bày sau) đ ợc dùng để tạo VQ codebook Những điểm mạnh lượng tử hố vector:  Giảm thiểu khơng gian l u trữ vector phổ  Giảm thời gian tính tốn độ giống vector phổ Trong nhận dạng tiếng nói, l ợng l n phép tính dùng để tính s giống hai cặp phổ D a vào VQ, việc tính tốn đ ợc giảm xuống qua việc tìm s giống cặp vector codebook bảng tìm kiếm  Biểu diễn rời rạc mặt âm học tiếng nói Nhờ gán nhãn cho frame từ, q trình chọn codebook tốt cho từ hệ nhận dạng tiếng nói đơn d a tr n nh n Điều thấy rõ Ch ơng 5: Mơ hình Markov n Khuyết điểm VQ:  Việc l ợng tử vector chắn dẫn đến sai số l ợng tử hóa Điều dẫn đến thơng tin phổ bị sai lệch  Việc chọn kích th c codebook cho VQ khơng đơn giản Tăng kích th c giảm sai số l ợng tử nh ng lại dẫn đến vấn đề không gian l u trữ vector Codebook Vì cài đặt VQ, phải cân nhắc yếu tố: sai số l ợng tử, thời gian tìm kiếm vector codebook khơng gian l u trữ vector codebook 3.2.2 Các yếu tố tổ chức VQ Để xây d ng codebook VQ tổ chức thuật tốn phân tích VQ, cần yếu tố sau: - Một tập l n vector phổ v1,v2,v3,…,vL tập huấn luyện cho VQ Nếu kích th c codebook VQ M=2B (codebook B bit) cần L>>M để tìm đ ợc M vector tối u Th ờng chọn L=10M - Độ đo d cặp phổ để phân nhóm vector khâu huấn luyện, hay phân l p vector khâu đánh nh n - Ph ơng pháp xác định nhân để phân hoạch L vector phổ thành M nhóm 45 - Ph ơng pháp phân l p vector ngõ vào Một vector sau qua khâu phân l p đ ợc đại diện nhãn (mã) TẬP VECTOR HUẤN LUYỆN THUẬT TOÁN K-MEAN CODEBOOK LƯỢNG TỬ HĨA CHỈ SỐ CODEBOOK Hình 3.14 Sơ đồ khối cấu trúc VQ huấn luyện phân lớp 3.2.3 Khoảng cách Euclid Khoảng cách Euclid vector n chiều a (a1, a2, …, an ) b( b1, b2, …,bn) đ ợc tính nh sau: (3.29) 3.2.4 Thuậ ốn ạo chùm Giải thuật LBG Giải thuật gọi thuật toán Lloyd hay K-means hay Linde-Buzo-Gray (LBG) (1) Khởi tạo: Chọn ngẫu nhiên M vector tập huấn luyện L làm tập từ mã (codeword) ban đầu codebook (2) Tìm lân cận gần nhất: V i vector huấn luyện v, tìm codeword codebook có khoảng cách gần v i vector (d a vào độ méo) gán thuộc cell codeword (3) Cập nhật nhân: V i cell, cập nhật codeword sử dụng trọng tâm tất vector huấn luyện cell 46 (4) Đệ qui: Lặp lại b c sai số l ợng tử nhỏ giá trị ng ỡng cho phép L u đồ giải thuật: Bắt đầu Khởi tạo Tìm lân cận gần Cập nhật nhân Độ méo < Ng ỡng Kết thúc Hình 3.15 Lưu đồ giải thuật LBG Điều bất lợi thuật toán phải c l ợng thật tốt điểm khởi đầu vector codeword Đây vấn đề khó khăn Minh họa giải thuật ví dụ sau: Cho tập liệu, tạo codebook gồm phân vùng, v i codeword khởi động điểm: (2, 2), (4, 6), (6, 5), (8, 8) 47 Hình 3.16 Giải thuật cụm thơng tin Giải thuật Binary Split Một biến thể thuật toán giải thuật Binary Split (1) Thiết kế codebook vector Đây nhân toàn tập vector huấn luyện (2) Nhân đơi kích th c codebook cách chia vector codebook yn thành vector: (3.30) Ở đây, n thay đổi từ đến kích th c codebook e tham số phân chia, th ờng đ ợc chọn tầm 0.01 ≤ e ≤ 0.05 (3) Dùng thuật toán K-means tr n để xác định tập nhân tố codebook đ chia (tức codebook có kích th c gấp đôi) 48 (4) Lặp lại b c codebook đạt đ ợc kích th L u đồ giải thuật: Bắt đầu Tạo codebook vector Nhân đơi kích th codebook c Xác định tập nhân tốt Kích th c

Ngày đăng: 01/08/2021, 10:40

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

  • Đang cập nhật ...

Tài liệu liên quan