XÂY DỰNG CHƯƠNG TRÌNH NHẬN DẠNG GIỌNG nói SPEECH TO TEXT

19 1.3K 9
XÂY DỰNG CHƯƠNG TRÌNH NHẬN DẠNG GIỌNG nói SPEECH TO TEXT

Đ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 Bách Khoa Đà Nẵng Khoa Công Nghệ Thông Tin ææææ ¬ ææææ BÁO CÁO THỰC TẬP TỐT NGHIỆP ĐỀ TÀI: XÂY DỰNG CHƯƠNG TRÌNH NHẬN DẠNG GIỌNG NÓI SPEECH TO TEXT Sinh Viên Thực Hiện: Nguyễn Cao Thăng Lớp: 11TLT Giảng Viên Hướng Dẫn: TS.Nguyễn Tấn Khôi Đà Nẵng, 2/2012 THỰC TẬP TỐT NGHIỆP NHẬN XÉT CỦA GIÁO VIÊN Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP LỜI MỞ ĐẦU Nhân loại ngày chứng kiến phát mạnh mẽ ngành Công nghệ Thông tin, ngành mũi nhọn nhiều quốc gia giới Sự phát triển vượt bậc kết tất yếu phát triển kèm theo thiết bị phần cứng phần mề tiện ích Sự phát triển kéo theo nhiều ngành khác phát triển theo, có lĩnh vực nghiên cứu khoa học Công nghệ ngày phát triển, tốc độ xử lý thiết bị không ngừng tăng cao, nhu cầu thực tiễn người không ngừng thay đổi Vì việc xây dựng ứng dụng phục vụ cho nhu cầu người thời đại ngày cần thiết Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP MỤC LỤC Chương I: TỔNG QUAN VỀ ĐỀ TÀI Bối cảnh lý thực đề tài .6 Mục đích đề tài Phương pháp thực đề tài Chương II: CƠ SỞ LÝ THUYẾT Giới thiệu chung .7 Cơ sở lí thuyết 2.1 Sơ lược nhận dạng giọng nói 2.1.1 Công thức 2.1.2 Các thành phần nhận dạng giọng nói .9 2.1.3 Engine Speech Recoginize (SR) .12 2.2 Hoạt động hệ thống Speech To Text .13 Chương III: PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH 14 Phân tích hệ thống 14 1.1 Phân tích nhu cầu thực tiễn 14 1.2 Yêu cầu đặt .14 Thiết kế hệ thống 14 2.1 Sơ đồ use case 14 2.2 Sơ đồ hoạt động 15 2.3 Sơ đồ 15 Kết chương trình 16 Chương IV:TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ 17 Thực thi chương trình 17 Đánh giá kết 17 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 18 Kết luận 18 Hướng phát triển 18 TÀI LIỆU THAM KHẢO 19 Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP DANH MỤC HÌNH ẢNH Hình 1: Mô tả trình nhận dạng tiếng nói Hình 2: Mô tả mô hình ngữ âm 10 Hình 3: Quá trình chuyển từ Speech To Text 12 Hình 4: Lưu đồ thuật toán Speech To Text 13 Hình 5: Sơ đồ use-case 14 Hình 6: Sơ đồ hoạt động .15 Hình 7: Sơ đồ 15 Hình 8: Giao diện Speech To Text 16 Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP Chương I: TỔNG QUAN VỀ ĐỀ TÀI Bối cảnh lý thực đề tài Hiện nay, giới việc sử dụng phần mềm âm không vấn đề mẻ Tuy nhiên quốc gia có đặc thù ngôn ngữ khác nên quy tắc, luật chung việc xử lý từ Vì em chọn nghiên cứu, xây dựng chương trình nhận dạng giọng Speech To Text ( chuyển âm thành văn bản) Mục đích đề tài Xây dựng ứng dụng nhận dạng giọng nói Speech To Text, chuyển âm nhận dạng sang dạng text Phương pháp thực đề tài Sử dụng ngôn ngữ lập trình C#, thư viện hỗ trợ nhận dạng giọng nói SpeechRecognitionEngine , VSpeech Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP Chương II: CƠ SỞ LÝ THUYẾT Giới thiệu chung Hiện có nhiều cách tiếp cận nhận dạng tiếng nói khác bao gồm: sử dụng Mô hình HMM, mạng Neural, sở tri thức, mô hình kết hợp mô hình Ta thấy toán khó, âm người nói phức tạp, có tính liên tục âm quyện nối vào nhau, người giọng, có tạp âm khác nhiễu vào thiết bị thu, Với tiếng nói chuẩn, hệ đại nhận dạng khoảng 70% Bài toán nhận dạng tiếng nói làm cho máy tính nhận biết chuyển tiếng nói thu nhận người thành chuỗi từ tương ứng, kết dùng ứng dụng điều khiển thiết bị, nhập liệu, soạn thảo văn bản, chuyển cho trình xử lý ngôn ngữ mức cao Nhận dạng tiếng nói phát triển từ nhận dạng từ nói riêng biệt đến nhận dạng từ nói liên tục, từ vựng sử dụng hệ thống chia thành nhóm: Từ vựng nhỏ: sử dụng tối đa khoảng 100 từ Từ vựng trung bình: sử dụng từ hàng trăm đến 20000 từ Từ vựng lớn: cho phép mở rộng đến 64000 từ Một hệ thống dạng tiếng nói thiết bị có khả tự động chuyển đổi tiếng nói thành văn Hình 1: Mô tả trình nhận dạng tiếng nói Hình mô tả cách tổng thể trình nhận dạng tiếng nói Đầu tiên, tiếng nói phát theo ý nghĩ người nói, tiếng nói thu nhận thu dạng sóng âm, sau rút trích đặc trưng chuyển tới phận xử lý ngữ âm Tại Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP đặc trưng phân tích thành ngữ âm Sau ngữ âm xử lý giải mã chuỗi từ phù hợp Ta nhận thấy kết nhận dạng phụ thuộc vào nhiều yếu tố như: chất lượng tiếng nói, thiết bị thu âm giải mã Bộ giải mã xem thành phần quan trọng hệ thống nhận dạng tiếng nói Hiện có nhiều cách để thiết kế cài đặt giải mã, cách sử dụng phổ biến hiệu dùng mô hình HMM kết hợp với lý thuyết thống kê Như trình bày hình 0.0, đầu vào hệ thống chuỗi ngữ âm quan sát X Cơ chế giải mã từ chuỗi ngữ âm này, so sánh với ngữ âm huấn luyện trước (thông qua trình học) với thực phép toán xác suất, chúng tìm chuỗi từ phù hợp Ŵ Quá trình thực cách gắn ngữ âm quan sát giả thiết đầu chuỗi từ phù hợp vào Mô hình HMM Trong ngữ âm gắn vào trạng thái mô hình HMM, giả thiết đầu quan sát Các tham số dùng cho mô hình HMM ước lượng thuật toán Forward-backward hay gọi thuật toán Baum- Welch Để tính xác suất từ chuỗi trạng thái sinh chuỗi quan sát đó, sử dụng thuật toán Viterbi Cơ sở lí thuyết 2.1 Sơ lược nhận dạng giọng nói 2.1.1 Công thức Một số ký hiệu sử dụng lý thuyết Gọi A tập hợp ngữ âm để nhận dạng dùng để xác định từ nói A chuỗi kí tự bảng alphabet A: A= a1, a2, …, am U A (1.1) Gọi W= w1, w2, , wn wi U W (1.2) W chuỗi n từ, từ nằm từ vựng cố định cho trước P(W|A) xác suất để tập từ W nói với chuỗi ngữ âm quan sát A Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP Từ chuỗi W, nhận dạng xác định chuỗi từ tốt Ŵ chuỗi quan sát A, tức là: Ŵ = argmaxWP(W|A) (1.3) Theo công thức Bayes ta có: Trong P(W) xác suất để chuỗi W nói, P(A|W) xác suất quan sát A đọc chuỗi W, P(A) xác suất trung bình A quan sát P(A) tính theo công thức: Vì A cố định nên từ (I.3) (I.5) ta có xấp xỉ lớn toán giải mã: Ŵ = argmaxWP(W)P(A|W) (1.6) Theo công thức (1.6) toán nhận dạng tiếng nói (nhận chuỗi từ Ŵ) phải xác định xác suất P(W) P(A|W) P(W) tính thông qua mô hình ngôn ngữ, xác suất P(A|W) tính thông qua mô hình ngữ âm 2.1.2 Các thành phần nhận dạng giọng nói a) Xử lý ngữ âm Công việc hệ thống dạng tiếng nói thông qua liệu ngữ âm quan sát A Bộ phận làm việc gọi Front end, Front end rút trích vector đặc trưng biểu diễn thông tin ngữ âm quan sát A để chuyển đổi âm dạng sóng thành ký tự b) Mô hình ngữ âm (Acoustic model) Một mô hình âm tạo cách giữ lại giọng nói ghi âm, sau phiên âm từ giọng nói sử dụng phần mềm để tính xác suất âm tạo nên từ Nó sử dụng máy nhận dạng để nhận tiếng nói Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP 10 Theo cấu trúc giọng nói, mô hình ngữ âm cho phép tính toán xác suất tương quan vector đặc trưng chuỗi quan sát đến từ cụ thể Quay trở lại công thức 1.6, nhận dạng cần phải tính P(A|W) xác suất người nói nói chuỗi từ W phân tích ngữ âm phân tích chuỗi ngữ âm A Để phục vụ công việc nhận dạng, cần phải tính P(A|W) tất cặp A, W Điều khó thực được, số lượng lớn Và có tính hết khó tìm kiếm cặp A, W phù hợp Vì để tính P(A|W) cần mô hình xác suất ngữ âm chuỗi từ mà người nói nói Số lượng mô hình phụ thuộc vào cách mà người nói nói chuỗi từ đó, vào nhiễu (tiếng ồn, tiếng vọng …), vị trí đặc tính microphone, việc xử lý ngữ âm Front end Mô hình ngữ âm sử dụng rộng rãi nhận dạng tiếng nói mô hình HMM Ngoài nhiều loại mô hình khác, chúng dựa vào thuật toán mạng Neural (artificial neural networks) thuật toán qui hoạch động (dynamic time warping) Hình 2: Mô tả mô hình ngữ âm c) Mô hình ngôn ngữ (Language model_LM) Một mô hình ngôn ngữ phân phối xác suất chuỗi từ, sử dụng để hạn chế việc tìm kiếm từ Hầu hết mô hình ngôn ngữ thường sử dụng mô hình ngôn ngữ N-gram, có chứa số liệu thống kê chuỗi từ trạng thái hữu hạn Để đạt độ xác tốt mô hình ngôn ngữ N-gram ta phải thành công việc hạn chế không gian tìm kiếm, có nghĩa phải dự đoán Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP 11 với xác suất tốt N từ Mô hình ngôn ngữ nhằm hạn chế từ vựng chứa từ Mô hình ngôn ngữ thường kết hợp giải mã để nhận dạng tiếng nói Đối với hệ thống nhận dạng tiếng nói liên tục từ vựng lớn nay, có nhiều mô hình ngôn ngữ âm học, từ điển phát âm chí mô hình ngôn ngữ từ vựng lớn xây dựng sẵn để tải Công thức 1.6 yêu cầu phải tính xác suất chuỗi chữ W để tìm chuỗi từ có xác suất tốt mà người dùng muốn nói chuỗi từ W Công thức Bayes cho phép có nhiều cách khác để phân tích P(W) Nhưng nhận dạng muốn truyền đạt chuỗi văn cách ngẫu nhiên người nói, sử dụng cách phân tích: Bộ nhận dạng phải ước lượng xác suất P(wi|w1,…, wi-1) Chúng ta phải ước lượng dù với giá trị n vừa phải kích thước từ vựng hợp lý, xác suất P(wi|w1,…, wi-1) có nhiều đối số Tuy nhiên, thật vô lý cho việc lựa chọn chữ thứ i người nói phụ thuộc vào tất i-1 chữ trước toàn lời mà người đã nói Vì vậy, cho từ trước vào lớp tương đối Ф(wi|w1,…, wi-1), công thức 1.7 trở thành: Sự khác biệt mô hình ngôn ngữ khác việc xác định Ф phù hợp phương pháp để ước lượng P(wi| Ф(w1,…, wi-1)) Việc xây dựng mô hình ngôn ngữ phụ thuộc vào văn sử dụng, hoàn toàn không phụ thuộc vào tiếng nói (không phụ thuộc vào việc ghi âm cho học) Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP 12 N-gram: Là chuỗi mục có thứ tự, mục âm tiết, chữ cái, từ tùy theo ứng dụng Một N-gram có kích thước N =1 gọi unigram, kích thước N =2 bigram, kích thước N =3 trigram kích thước N ≥ gọi N-gram Hầu hết mô hình ngôn ngữ xây dựng từ N-gram Mô hình N-Gram: Là loại mô hình xác suất cho dự đoán mục chuỗi Mô hình N-gram dùng nhiều lĩnh vực khác mô hình thống kê để xử lý ngôn ngữ tự nhiên, nhận dạng tiếng nói phân tích chuỗi gen 2.1.3 Engine Speech Recoginize (SR) SR tiến trình chuyển từ ngôn ngữ nói thành dạng text Tiến trình bao gồm: Thu nhận số hóa âm người nói Chuyển số hóa âm thành âm vị Xây dựng từ (word) từ âm vị Phân tích ngữ cảnh xuất từ để chắn đánh vần từ nói Hình 3: Quá trình chuyển từ Speech To Text Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP 2.2 13 Hoạt động hệ thống Speech To Text Bắt đầu Khởi tạo recognize engine Khởi tạo recognize context Thiết lập even message Thiết lập interest Tạo đối tượng audio Thu nhận âm người nói vào Tạo dictation Load dictation Thiết lập trạng thái kích hoạt cho dictation Chuyển âm sang text Kết thúc Hình 4: Lưu đồ thuật toán Speech To Text Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT Giải phóng THỰC TẬP TỐT NGHIỆP Chương III: 14 PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH Phân tích hệ thống 1.1 Phân tích nhu cầu thực tiễn Hiện nay, giới việc sử dụng phần mềm nhận dạng âm không vấn đề mẻ Tuy nhiên quốc gia có đặc thù ngôn ngữ khác nên quy tắc, luật chung việc xử lý từ Chính vậy, việc nghiên cứu xây dựng ứng dụng nhận dạng giọng nói phù hợp 1.2 Yêu cầu đặt Xây dựng ứng dụng nhận dạng giọng nói Speech To Text Thiết kế hệ thống 2.1 Sơ đồ use case Hình 5: Sơ đồ use-case Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP 2.2 15 Sơ đồ hoạt động Hình 6: Sơ đồ hoạt động 2.3 Sơ đồ Hình 7: Sơ đồ Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP 16 Kết chương trình Hình 8: Giao diện Speech To Text Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP Chương IV: TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ Thực thi chương trình Thực thi chương trình đường dẫn: \\STT_V_E\bin\Debug\STT_V_E.exe Đánh giá kết Chương trình thực yêu cầu đề Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT 17 THỰC TẬP TỐT NGHIỆP 18 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết luận a Kết đạt Đề tài đạt kết sau : Tìm hiểu cách thức lập trình nhận dạng giọng nói môi trường Net Tìm hiểu cách thức hoạt động chương trình chuyển âm thành văn (Speech To Text) b Những hạn chế chương trình Chỉ chương trình đơn giản cho phép chuyển đổi từ âm sang văn Chưa ứng dụng thực tiễn Giao diện đơn giản Hướng phát triển Nếu có điều kiện, em cố gắng khắc phục hạn chế chương trình, xây dựng thêm tính điều khiển ứng dụng PC thông qua giọng nói Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT THỰC TẬP TỐT NGHIỆP 19 TÀI LIỆU THAM KHẢO Tài liệu: [1] MSDN Library for Visual Studio 2008 - ENU [2] Trịnh Văn Loan, Tài liệu xử lý tiếng nói [3] Cao Quyết Thắng, Bài giảng môn học xử lý tiếng nói, Trường Đại học Hàng Hải Việt Nam – Khoa Công nghệ thông tin [4] VSPEECH SDK1.0, Nhóm phát triển phần mềm BK02 – Khoa Công nghệ thông tin – Đại học Bách Khoa TPHCM Các trang Web [1] http://www.voicexml.org [2] http://www.c-sharpcorner.com Sinh viên thực hiện: Nguyễn Cao Thăng – Lớp 11TLT

Ngày đăng: 01/07/2016, 12:57

Từ khóa liên quan

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

Tài liệu liên quan