Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 75 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
75
Dung lượng
2,64 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SĨ ĐỀ TÀI Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron Học viên: Bùi Văn Công Chuyên ngành: Đo lường hệ thống điều khiển Khoa Điện- Đại học Bách Khoa Hà Nội Giáo viên hướng dẫn: PGS TSKH Trần Hoài Linh Khoa Điện- Đại học Bách Khoa Hà Nội Hà Nội - 2008 Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron LỜI CẢM ƠN Đồ án cao học “Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron ” kết không cá nhân mà có hỗ trợ, giúp đỡ nhiều người Trước hết, em xin chân thành cảm ơn PGS-TSKH Trần Hoài Linh kiến thức mà thầy truyền đạt Thầy người cho em ý tưởng xây dựng ứng dụng Đồng thời, thầy trực tiếp hướng dẫn theo dõi trình xây dựng hoàn thiện đồ án Xin cảm ơn nhiệt tình truyền đạt kiến thức kỹ thuật cán Trung tâm MICA trình tìm hiểu công nghệ thực đồ án Cuối cùng, xin cám ơn bạn bè tôi, người bên cạnh động viên, giúp đỡ học tập sống -2- Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron MỤC LỤC LỜI CẢM ƠN .2 MỤC LỤC .3 DANH MỤC CÁC TỪ VIẾT TẮT DANH MỤC CÁC HÌNH VẼ Chương .7 GIỚI THIỆU CHUNG 1.1 Điểm qua tình hình nhận dạng tiếng nói .8 1.2 Điểm qua tình hình nghiên cứu mạng nơ-ron .11 1.3 Căn nhận dạng tiếng nói 12 1.4 Dynamic Time Warping 15 1.5 Tiêu chí nội dung luận văn 16 Chương 18 ĐẶC ĐIỂM ÂM HỌC CỦA TIẾNG NÓI VÀ TIẾNG VIỆT 18 2.1 Âm lời nói- Bản chất cấu tạo 18 2.1.1 Khía cạnh âm học âm 18 2.1.2 Khía cạnh sinh học âm .19 2.1.2.1 Bộ máy phát âm 19 2.1.2.2 Các kiểu tạo âm 21 2.2 Nguyên âm 23 2.2.1 Âm tố 23 2.2.2 Đặc trưng chung nguyên âm 23 2.2.3 Xác định nguyên âm .24 2.3 Phụ âm .24 2.3.1 Về phương thức cấu âm 25 2.3.2 Về vị trí cấu âm 27 2.3.3 Cấu âm bổ sung 29 2.4 Các tượng ngôn điệu 29 2.4.1 Âm tiết .30 2.4.2 Thanh điệu 32 2.4.3 Trọng âm .33 2.4.4 Ngữ điệu 35 2.5 Sự biến đổi ngữ âm lời nói 35 2.5.1 Thích nghi 36 2.5.2 Đồng hóa .37 2.5.3 Dị hóa 37 2.6 Sự phân biệt mặt biểu đạt ngôn ngữ 37 2.6.1 Âm vị, âm tố biến thể âm vị 37 2.6.2 Âm vị siêu đoạn tính 39 -3- Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron 2.7 Một số đặc điểm riêng tiếng Việt 40 Âm tiết 40 Chương 43 MÔ HÌNH NHẬN DẠNG TIẾNG NÓI 43 3.1 Mô hình Markov ẩn 43 3.1.1 Khái niệm 43 3.1.2 Thuật toán 45 3.1.2.1 Thuật toán tiến (Forward) 45 3.1.2.2 Thuật toán lùi (Forward-Backward) 46 3.1.3 Những hạn chế HMMs 47 3.2 Mô hình mạng nơ-ron nhân tạo 48 3.2.1 Các đơn vị xử lý hay nơ-ron (Processing units) .50 3.2.2 Các liên kết (connections) 50 3.2.3 Giải thuật 51 3.2.4 Huấn luyện mạng 55 3.2.5 Phân loại mạng nơ-ron 56 3.2.5.1 Học có đạo 56 3.2.5.2 Học có đạo bán phần (semi - supervised learning) .58 3.2.5.3 Học không đạo (unsupervised learning) 58 3.3 Kết luận hai mô hình 58 Chương 60 THIẾT KẾ ỨNG DỤNG NHẬN DẠNG TIẾNG NÓI 60 4.1 Phân tích yêu cầu toán 60 4.2 Phương án xây dựng chương trình 61 4.2.1 Vấn đề Xử lý tín hiệu đầu vào 61 4.2.2 Thiết kế vận hành mạng nơ-ron 62 Cơ sở liệu .63 Phương pháp nhận dạng mạng nơ-ron nhân tạo ANN 64 a Tạo đặc tính 64 b Huấn luyện mạng MLP .64 c Hoạt động học MLP 65 d Sơ đồ thuật toán thiết kế mạng MLP tối ưu: .68 4.3 Chạy chương trình nhận dạng tiếng nói 70 Kết chạy chương trình 71 4.4 Đánh giá kết đạt hướng phát triển 72 TÀI LIỆU THAM KHẢO .74 -4- Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron DANH MỤC CÁC TỪ VIẾT TẮT ANN Artificial Neural Networks HMM Hidden Markov Models RTDNN Recurrent Time-Delay Neural Network DTW Dynamic Time Warping MFCC Mel Frequency Cepstral Coefficient LPC Linear Predictive Coding MLP Multi Layer Perceptron TDNN Time Delay Neural Network LVQ Learned Vector Quantization AMDF Average Magnitude Difference Function -5- Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron DANH MỤC CÁC HÌNH VẼ Hình 1: Mô hình hệ thống nhận dạng tiếng nói 13 Hình 2: Biến đổi từ tín hiệu tiếng nói sang Frame tiếng nói .14 Hình 3: Mẫu cho từ “TẮT” theo hai cách khác 14 Hình 4: Dynamic Time Warping 16 Hình 1: Hệ thống phát âm người 20 Hình 2: Cơ cấu phát âm .27 Hình 3: Cấu âm tăng dần đầu âm tiết giảm dần cuối âm tiết .30 Hình 4: Âm tiết tiếng Việt 40 Hình 5: Âm đầu 41 Hình 6: Âm 42 Hình 1: Mô hình Markov ẩn 43 Hình 2: Phân cấp cấu trúc HMMs .44 Hình 3: Thuật toán tiến (forward) 45 Hình 4: Thuật toán backward 46 Hình 5: Tử số công thức (7) 47 Hình 6: Cấu trúc nơ-ron : (a) không xắp xếp; (b) phân lớp; (c) Hồi quy; (d) tích hợp 51 Hình 7: (a) nơ-ron thường, (b) nơ-ron sigma-pi 52 Hình 8: (a) đường thẳng, (b) ngưỡng, (c) Sigmoidal 53 Hình 9: Tính toán thành phần vào .54 Hình 10: Chia nhỏ vùng định 55 Hình 11:Mạng Perceptrons (a) đơn lớp; (b) đa lớp 57 Hình 12: Mạng recurrent (a) Mạng Jodan; (b) mạng Elman .58 Hình 1: Mô hình tổng quát toán 61 Hình 2: Mô hình huấn luyện 63 Hình 3: Mô hình nhận dạng 63 Hình 4: Hệ thống nhận dạng dùng mạng nơ-ron 64 -6- Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron Chương GIỚI THIỆU CHUNG Chương tìm hiểu vấn đề có liên quan tới nhận dạng tiếng nói, xu hướng nay, kết đạt lĩnh vực nhận dạng tiếng nói giới Tiếp đến đưa tiêu chí cho luận văn dựa vào thông tin kể Không phủ nhận ngôn ngữ phương tiện dùng để giao tiếp người Chúng ta học nói cách tự nhiên từ sinh ra, mà không cần đến khái niệm tiếng nói? Hay âm tiết? v.v mà đơn giản bắt chước Quá trình học nói diễn theo thời gian trưởng thành người, điều đến tự nhiên sống, đến mức ta không nhận phức tạp tiếng nói Khi học ngoại ngữ hoàn toàn mới, cảm nhận phức tạp tiếng nói, tất nhiên ngoại trừ trường hợp thiên tài có khả bẩm sinh ngôn ngữ, học ngoại ngữ tuần lễ Bộ máy phát âm người quan sinh học với đặc điểm không cố định, phát âm không hoạt động máy cứng nhắc mà phụ thuộc nhiều vào người nói trạng thái cảm xúc người nói Cùng với câu người nói ta cảm nhận khác với thời điểm khác Kết phát âm liên quan tới nhiều yếu tố: Giọng nói địa phương, cao độ, âm lượng, tốc độ giọng nói, v.v Trong truyền đạt tiếng nói từ người sang người khác; từ nơi sang nơi khác tiếng nói bị méo tiếng ồn xung quanh hay thiết bị truyền tin (ví dụ điện thoại hay micro v.v ) Tất lý nêu cho ta thấy nhận dạng tiếng nói vấn đề phức tạp máy tính, chí người Tuy nhiên, thay phương tiện nhập thông tin truyền thống bàn phím, chuột, v.v giọng nói tốt Chính mà giao tiếp giọng nói có nhiều ứng dụng tương lai, ví dụ: Dịch vụ giải đáp qua điện thoại, sở liệu hỏi đáp, máy viết tả, máy dịch ngoại ngữ tự động v.v… Những ứng dụng hấp dẫn thúc đẩy người nghiên cứu nhận dạng tiếng nói từ năm 1950 Đặc biệt năm 1970 thu hút nhiều chuyên gia lĩnh vực trí thức, thống kê, toán học, ngôn ngữ học v.v Mặc dù vậy, chưa xuất máy tính ngang -7- Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron với người lĩnh vực nhận dạng tiếng nói, để làm điều có lẽ cần phải có thêm nhiều hiểu biết người việc nhận biết tiếng nói Điều làm cho người có khả nhận biết tiếng nói tốt đến thế? Người ta nhận thấy não người máy tính có khác biệt lớn cách thức xử lý thông tin: Máy tính xử dụng vi xử lý có tốc độ tính toán nhanh, phức tạp, với chương trình cụ thể rõ ràng, với nhớ đánh địa chỉ: Ngược lại, não người lại làm việc dựa tập hợp tập hợp tính toán song song đơn giản gọi nơ-ron , với mối nối gọi khớp thần kinh (synapses) có khả thay đổi theo kinh nghiệm nhận theo thời gian Chính lý mà người ta nghiên cứu mạng nơ-ron nhân tạo (Artificial Neural Networks - ANNs) Lịch sử lĩnh vực có nhiều thăng trầm, đến khoảng năm 1980 trở thành thực bắt đầu ứng dụng cho toán khó nhận dạng tiếng nói Năm 1990 có nhiều nhà nghiên cứu chứng thực giá trị ANNs nhận dạng tiếng nói, chúng để nhận dạng âm tiết hay nhận dạng phát âm chữ số Tuy nhiên, để nhận dạng tiếng nói cách đầy đủ toán khó Sau điểm qua tình hình chung nhận dạng tiếng nói giới, tình hình nghiên cứu mạng nơ-ron từ đưa tiêu chí cho luận văn 1.1 Điểm qua tình hình nhận dạng tiếng nói Có nhiều hệ thống nhận dạng tiếng nói xây dựng Để đánh giá hệ nhận dạng tiếng nói tốt hay xấu, điều phụ thuộc nhiều vào mục đích hệ Dưới điểm qua vấn đề liên quan tới nhận dạng tiếng nói số kết nhận dạng tiếng nói từ trước tới ¾ Số lượng từ vựng độ phân biệt phát âm: Có thể thấy rõ ràng để phân biệt tập hợp nhỏ đơn giản nhiều số lượng từ tăng lên Ví dụ để nhận dạng từ tập hợp từ có 200 từ lỗi 3%, tập hợp 5000 từ lỗi 7% hay cao Tuy nhiên, kết nói đạt điều kiện ghi âm tương đối lý tưởng độ phân biệt rõ ràng Trong trường hợp độ phân biệt phát âm từ không rõ ràng, chí với tập hợp từ nhỏ cho tỹ lệ lỗi cao Ví dụ để nhận dạng 26 từ chữ tiếng Anh ( coi chữ từ) khó, có nhiều từ phát âm chúng độ phân biệt cao (xét -8- Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron khía cạnh thính giác, tức nghe người lẫn khía cạnh liệu tín hiệu ), chẳng hạn cách phát âm từ tiếng Anh sau giống nhau: B, C, D, E, G, P, T, V, Z, với trường hợp 8% lỗi tốt ¾ Hệ thống phụ thuộc người nói hệ thống độc lập: Hệ thống phụ thuộc người nói hệ thống dành riêng cho người đó, hệ thống độc lập hệ thống sử dụng cho người Dễ thấy với từ người nói khác có khác đáng kể, chí khác xa Vì mà thực hệ thống độc lập khó nhiều so với hệ thống phụ thuộc Giữa hệ thống độc lập phụ thuộc, loại hệ thống hệ thống nhiều người sử dụng, loại dùng cho nhóm người, tất nhiên khả thực hệ thống nằm hai loại kể ¾ Nhận dạng độc lập, tiếng nói liên tục: Nhận dạng từ độc lập ta biết tín hiệu cần nhận dạng từ, nhiệm vụ phải từ Nhận dạng tiếng nói liên tục nhận dạng câu nói thực giao tiếp người Nhận dạng từ độc lập nhận diện dễ dàng nhiều so với nhân dạng tiếng nói liên tục, nhân cách từ rõ ràng Thông thường lỗi nhận dạng từ độc lập vào khoảng 3% tới 9% ¾ Ràng buộc ngôn ngữ: Một đặc điểm tốt bỏ qua tiếng nói ngôn ngữ Mỗi ngôn ngữ có ràng buộc định, ngữ nghĩa hay cú pháp câu Những ràng buộc cho phép ta loại bỏ từ hay câu mà có thực tế ¾ Những điều kiện ngoại cảnh: Khả hệ thống tốt bị ảnh hưởng ngoại cảnh Những yếu tố bao gồm tiếng ồn môi trường ghi âm (như tiếng động xung quanh nơi ghi âm), độ méo âm ( gây vang vọng âm phản xạ phòng), chất lượng thiết bị ghi âm khác (cùng thiết bị tồi tốt dùng thiết bị chất lượng khác cho lần ghi âm ), tốc độ phát âm (ngắn hay dài, nhanh hay chậm ) v.v… ¾ Viavoice Dragon Naturally Speaking: Với nỗ lực nghiên cứu nhiều năm, hai sản phẩm tốt lĩnh vực nhận dạng tiếng nói Viavoice IBM Dragon Naturally Speaking Dragon System Tỷ lệ nhận dạng Viavoice 88%, với vốn từ vựng vào khoảng 260.000 từ (phiên Viavoice Gold), Dragon Naturally Speaking nhỉnh chút, vào khoảng 89% Viavoice tổng hợp kết nghiên cứu IBM từ cách 30 năm, Dragon thành lập từ năm 1982 Tuy -9- Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron vậy, Dragon Naturally Speaking đánh giá cao hơn, sản phẩm đươc tạp chí PC World US bình chọn sản phẩm nhận dạng tiếng nói tốt năm 1999 Với tỷ lệ 88% 89% cố gắng hai công ty nói trên, nhiên với tỷ lệ máy tính thua xa người khả nhận dạng tiếng nói, điều cho ta thấy nhiều để cần nghiên cứu với nhận dạng tiếng nói tương lai ¾ Những vấn đề khác: Để đánh giá khả hệ thống nhận dạng, tạo điều kiện cho phát triển hệ thống nhận dạng, người ta tạo sở liệu tiếng nói chuẩn Cơ sở liệu bao gồm tập hợp lớn từ câu, nhiều người phát âm Tuy nhiên, ngôn ngữ khác cần có sở liệu tiếng nói khác Khi nghiên cứu nhận dạng tiếng nói ta quan tâm tới hai vấn đề ngữ âm thời gian Vấn đề ngữ âm xét đến giọng nói địa phương, độ cao thấp, độ lớn âm v.v , vấn đề thời gian lại quan tâm tới tốc độ phát âm Trong hai vấn đề nêu vấn đề thời gian giải đơn giản Một thuật toán tiếng có từ lâu có tên Dynamic Time Warping giải vấn đề này, tìm hiểu chi tiết phần sau Thuật toán đươc sử dụng nhiều hệ thống nhận dạng tiếng nói Vấn đề ngữ âm khó nhiều, có nhiều quan điểm khác nhau, có nhiều hướng khác nghiên cứu ngữ âm nhận dạng tiếng nói Những hướng nghiên cứu kể đến sau: • Sử dụng tập mẫu: Tiếng nói cần nhận dạng trích lọc đặc trưng, tiếp đến so sánh với tập hợp từ mẫu ghi âm để chọn gần giống • Sử dụng sở trí thức: Theo hướng người ta xây dựng hệ thống chuyên gia trí thức lĩnh vực âm thanh, từ vựng, cú pháp v.v Tuy nhiên cách khó khả thi • Sử dụng mô hình thống kê: Tiếng nói thống kê mẫu hóa (có thể sử dụng giải pháp Hidden Markov Models - HMMs mà nghiên cứu sau này) sử dụng thủ tục học tự động Tuy nhiên giải pháp có nhiều nhược điểm ta thấy sau Những nhược điểm mô hình thống kê giải mạng nơ-ron nhân tạo • Sử dụng mạng nơ-ron nhân tạo: Với tiến nghiên cứu não người, người ta biết nhiều điều hoạt động não Mạng nơ-ron nhân tạo cố gắng để mô lại hoạt động Đặc tính - 10 - Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron Hình 1: Mô hình tổng quát toán Như thấy, yêu cầu toán đơn giản, việc xây dựng lại liên quan đến nhiều kiến thức mạng nơ-ron xử lý tiếng nói như: Các kỹ thuật xử lý tín hiệu tiếng nói bản: tiền xử lý tín hiệu, cửa sổ lọc, tính FFT, cửa sổ cepstre, … Kỹ thuật phân tích tín hiệu cho nhận dạng tiếng nói: sử dụng filter bank Các kiến thức mạng nơ-ron tiến đa mức: cấu trúc phân mức, thuật toán back-propagation Các kiến thức RTDNN: frames, thuật toán back-propagation mở rộng Xét tảng hệ thống, chương trình nên có khả chạy hệ điều hành phổ biến Windows XP, với hỗ trợ âm hệ điều hành 4.2 Phương án xây dựng chương trình Dựa vào yêu cầu toán cần giải quyết, khẳng định hoạt động phần mềm nằm hai vấn đề: Xử lý tín hiệu đầu vào thiết kế, vận hành mạng nơ-ron Sau phương án đề xuất nhằm mục đích giải hai vấn đề 4.2.1 Vấn đề Xử lý tín hiệu đầu vào Cần nhấn mạnh mục tiêu cần đạt việc giải vấn đề tạo vector đầu vào cho mạng nơ-ron từ tham số đặc trưng lấy từ tín hiệu tiếng nói Đối với thân tín hiệu tiếng nói, dùng dạng mã hoá trực tiếp dạng file *.wav (file âm chuẩn hệ điều hành Windows) Ngay với âm thu trực tiếp từ micro mã hoá theo dạng Nội dung file *.wav coi sóng tín hiệu lấy mẫu số hoá Tiếng nói lưu dạng số tệp wav phân chia thành khung tín hiệu (frame), khung tín hiệu có độ dài 10ms Quá trình phân tích phổ - 61 - Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron áp dụng cho khung tín hiệu để tìm đặc tính phổ tương ứng Tập đặc tính sau dùng để làm đầu vào cho mạng nơ-ron tiến hành phân lớp Hiện có phương pháp trích chọn đặc trưng hay dùng nhận dạng tiếng nói Phương pháp phân tích cepstral theo thang độ đo mel để tính hệ số MFCC (Mel Frequency Cepstral Coeffcient) thông qua việc sử dụng dãy băng lọc (filter bank) Phương pháp phân tích cepstral thông qua mã hóa dự đoán tuyến tính LPC (Linear Predictive Coding) Phương pháp tính hệ số MFCC cho hiệu cao công cụ SFS Win sử dụng để thu âm mẫu liệu có hỗ trợ sẵn việc tính thông số nên chọn phương pháp trích chọn đặc trưng tính hệ số MFCC Phương pháp dùng cửa sổ phân tích Hamming Ngoài 12 hệ số MFCC logarit giá trị lượng (logE) bổ sung vào vector đặc tính Để thêm thông tin biến thiên đặc tính theo thời gian, giá trị delta 13 hệ số thêm vào vector đặc tính tạo thành tập 26 vector đặc tính tương ứng với khung tín hiệu 4.2.2 Thiết kế vận hành mạng nơ-ron Khi có đầu vào mạng vấn đề cấu trúc vận hành mạng nơ-ron cho phù hợp Như trình bày Chương 4, lý thuyết nhận dạng tiếng nói gắn với kiến trúc RTDNN, mạng nơ-ron thiết kế đồ án thuộc kiến trúc Quá trình xây dựng hệ nhận dạng trải qua giai đoạn A: Giai đoạn huấn luyện Thu thập mẫu Tách đặc trưng mẫu phân loại thành lớp khác (tuỳ thuộc mô hình nhận dạng) - 62 - Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron Huấn luyện cấu nhận dạng ghi nhớ đặc trưng lớp Hình 2: Mô hình huấn luyện B Giai đoạn nhận dạng Nhận vào đối tượng cần nhận dạng Tách đặc trưng đối tượng dùng cấu nhận dạng xác định lớp chứa đối tượng Xác định, đưa sử dụng kết Hình 3: Mô hình nhận dạng Cơ sở liệu Cơ sở liệu sử dụng đồ án bao gồm từ (bật, tắt, đóng, mở, tăng, giảm) thu âm trực tiếp qua microphone ghi âm lại phần mềm SFS Win 4.6 (Speech Filling System) để tạo mẫu số liệu Với từ đơn âm tiếng việt ( gồm từ: bật, tắt, đóng, mở, tăng, giảm) ta thu 10 lần, 60 file dạng wav cho tập liệu phần huấn luyện Để tạo liệu cho phần kiểm tra ta thu âm từ, từ 10 lần với người nói thu liệu huấn luyện Để mở rộng tập liệu xem khả nhận - 63 - Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron dạng hệ thống, ta thu thêm file với micro dùng từ đầu thu tiếp file người đọc khác, sau trộn lại ta 18 file wav cho tập liệu kiểm tra Các từ thu đa dạng khác tốc độ phát âm; độ to nhỏ; có từ nói phòng yên tĩnh; có từ có lẫn tạp âm tiếng lại phòng; tiếng quạt điều hòa v.v Các từ thu âm với tần số lấy mẫu 16kHz Phương pháp nhận dạng mạng nơ-ron nhân tạo ANN Hình 4: Hệ thống nhận dạng dùng mạng nơ-ron Phương pháp nhận dạng mạng nơ-ron bao gồm bước miêu tả hình a Tạo đặc tính Tiếng nói lưu dạng số tệp wav phân chia thành khung tín hiệu (frame), khung tín hiệu có độ dài 10ms Quá trình phân tích phổ áp dụng cho khung tín hiệu để tìm đặc tính phổ tương ứng trình bầy mục 4.2.1 Tập đặc tính sau dùng để làm đầu vào cho mạng nơ-ron tiến hành phân lớp b Huấn luyện mạng MLP Mô hình mạng sử dụng mạng MLP lớp ẩn Đây mạng kinh điển, kiểm chứng qua nhiều ứng dụng nhiều toán khác Mạng có khả xấp xỉ mối quan hệ phi tuyến đầu vào đầu số liệu với độ xác cho trước X1 [W] ‘1’ [V] X2 Y Xp ‘1’ lớp ẩn thứ lớp Cấu trúc mạng MLP lớp ẩn xác định thông số cấu trúc: • Các thông số cấu trúc (M,N,P): o M - số đầu vào o N - số nơ-ron lớp ẩn - 64 - Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron o P - số đầu • f1,f2 : o f1 - hàm truyền đạt lớp nơ-ron ẩn o f2 - hàm truyền đạt đầu • W,V : o W - ma trận trọng số nối đầu vào với lớp ẩn ((M+1)xN trọng số) o V - ma trận kết nối lớp ẩn với đầu ((N+1)xP trọng số) Thực tế để mạng không rơi vào trạng thái bão hòa dẫn tới việc học diễn chậm người ta thêm đầu vào cố định cho nơ-ron ẩn nơ-ron đầu gọi bias c Hoạt động học MLP Quá trình học : Quá trình tạo đầu y = ⎡⎣ y1 , , y p ⎤⎦ T ui: Tổng đầu vào noron ẩn thứ i: M ui = ∑ x j w ij j =0 vi: Đầu nơ-ron ẩn thứ i: vi = f1 ( ui ) gi: Tổng đầu vào nơ rôn lớp thứ i: N gi = ∑ v jVij j =0 Đầu yi: yi = f ( gi ) Mục đích học điều chỉnh trọng số W V để cho đáp ứng đầu y ≈ d = ⎡⎣ d1 , , d p ⎤⎦ T Để đạt mục đích, thay đổi trọng số kết nối cho sai số bé E= y−d 2 → Để tối ưu hóa hàm phi tuyến E, ta sử dụng phương pháp bước giảm cực đại (Steepest Descent Algorithm) Theo trọng số sau: Wαβk +1 = Wαβk − η - 65 - ∂E ∂Wαβk Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron Vαβk +1 = Vαβk − η ∂E ∂Vαβk Trong để tính công thức gradient ta có: E = y−d 2 p = ∑ ( y − d )2 i =1 “1” X = u1 N XN Cụ thể công thức gradient xác định sau: vi X1 p ∂E ∂y = 2.∑ ( y − d ) i ∂Vαβ i=1 ∂Vαβ uN N yi = f2 (gi ) = f2 ∑ v j Vij j =1 N ∂ ∑ v j Vij ∂yi j =1 = f2 '(gi ) ∂Vαβ ∂Vαβ N ∂Vij j =1 ∂Vαβ = f2 '(gi ).∑ v j Khi: i = α, j = β ⇒ ∂Vij ∂Vαβ =1⇒ ∂yi = f2 '(gi )vβ ∂Vαβ Đối với trường hợp khác ( i ≠ α j ≠ β ): ⇒ ∂Vij ∂Vαβ =0⇒ ∂yi =0 ∂Vαβ Thay vào rút gọn ta có: ∂E = ( yα − dα ) f '2 (gα ).vβ ∂Vαβ Hoàn toàn tương tự ta có: p ∂E = ∑ ( yi − di ).viα f '2 (gi ) f '1 (uα ) x β ∂Wαβ i =1 Quá trình học theo công thức thường thực theo nhiều chu kỳ (số epoch thường đạt tới đơn vị nghìn) Một chu kỳ học (1 epoch) khoảng thời gian cập nhật tham số cho cặp mẫu học (X(i), d(i) ) Trong trình học, luyện mạng, đồ thị sai số có dạng hình vẽ bên sau: - 66 - Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron Quá trình kiểm tra: ( Ta có tập mẫu kiểm tra (khác tập học) X kt(i ) , d kt(i ) ) i=1,2,… 1,q Ta tính đáp ứng mạng cho đầu vào X kt(i ) theo công thức lan truyền thuận để có: ykt(i ) = MLP ( xkti ) Sai số kiểm tra xác định sở chênh lệch đầu mạng & giá trị đích có trước: Ekt = q (i ) ykt − d kt(i ) ∑ i =1 Trong trình kiểm tra ta không thay đổi (cập nhật) trọng số W V trình học - 67 - Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron d Sơ đồ thuật toán thiết kế mạng MLP tối ưu: Phân tích số liệu Để thiết kế mạng MLP tối ưu với số liệu có, ta cần xác định yếu tố: Số lớp nơ-ron ẩn : thường ta sử dụng lớp ẩn, cần thiết sử dụng tối đa lớp ẩn Số nơ-ron lớp ẩn M: M phải giá trị cho bình phương sai số đầu nhỏ Ekt2 tập mẫu Số nơron lớp : phụ thuộc vào mẫu số liệu có đầu Các hàm biến đổi nơron: giá trị đầu học kiểm tra cho không thuộc khoảng (-1,1) khoảng giới hạn nhiều hàm tansig,logsig,… ta có hai cách lựa chọn hàm F • Mã hoá lại giá trị đầu cho chúng thuộc khoảng (-1,1) sử dụng hàm • Giữ nguyên giá trị đầu ra, sử dụng hàm tansig,logsig nơ-ron lớp ẩn ; hàm purelin nơ-ron lớp đầu - 68 - Xây dựng mô hình nhận dạng tiếng nói sử dụng mạng nơ-ron Xây dựng sơ đồ khối ¾ Tìm số Nơron lớp ẩn M Begin Khai báo đầu vào, học kiểm tra x,d Khởi tạo ma trận chứa giá trị sai số học E_learn sai số kiểm tra E_test; M=Ф Khởi tạo 10 mạng với M nơ-ron ẩn M=M+1 M