Xây dựng giao tiếp tiếng nói với phần mềm kế toán và quản trị doanh

76 357 0
Xây dựng giao tiếp tiếng nói với phần mềm kế toán và quản trị doanh

Đ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

MỤC LỤC DANH MỤC CÁC TỪ VIẾT TẮT DANH MỤC BẢNG DANH MỤC HÌNH MỞ ĐẦU CHƢƠNG TỔNG QUAN VỀ NHẬN DẠNG TIẾNG NÓI .8 1.1 Lịch sử phát triển .8 1.2 Cấu trúc ngôn ngữ 1.3 Quá trình nhận dạng ngôn ngữ 10 1.4 Các mô hình nhận dạng tiếng nói 11 1.5 Mô hình Markov ẩn .11 1.5.1 Mô hình Markov .11 1.5.2 Mô hình Markov ẩn .13 CHƢƠNG GIẢI PHÁP TÍCH HỢP NHẬN DẠNG TIẾNG NÓI VÀO PHẦN MỀM KẾ TOÁN VÀ QUẢN TRỊ DOANH NGHIỆP FAB – EIS .14 2.1 Giới thiệu phần mềm kế toán quản trị doanh nghiệp FAB - EIS 14 2.1.1 Hệ thống chức 16 2.1.2 Kiến trúc hệ thống 20 2.1.3 Các công nghệ sử dụng trình xây dựng hệ thống FAB – EIS.22 2.1.4 Công cụ 28 2.2 Giải pháp tích hợp nhận dạng tiếng nói vào phần mềm kế toán quản trị doanh nghiệp FAB – EIS 29 2.2.1 Xây dựng giao tiếp tiếng nói chương trình độc lập 29 2.2.2 Xây dựng giao tiếp tiếng nói module thuộc phần mềm kế toán quản trị doanh nghiệp 33 2.2.3 Đánh giá lựa chọn giải pháp .33 CHƢƠNG BỘ CÔNG CỤ SPHINX 35 3.1 Giới thiệu .35 3.2 FrontEnd 36 3.3 Linguist 37 3.3.1 Mô hình nguôn ngữ - LanguageModel 37 3.3.2 Từ điển - Dictionary 37 3.3.3 Mô hình âm học AcousticModel .38 3.3.4 Đồ thị tìm kiếm .38 3.3.5 Cài đặt .38 3.4 Decoder 39 CHƢƠNG TÍCH HỢP NHẬN DẠNG TIẾNG NÓI VÀO PHẦN MỀM KẾ TOÁN VÀ QUẢN TRỊ DOANH NGHIỆP FAB - EIS 40 4.1 Xác định phạm vi nhận dạng 40 4.2 Xây dựng mô hình ngôn ngữ 41 4.2.1 Xây dựng mô hình ngữ pháp 41 4.2.2 Xây dựng mô hình ngôn ngữ thống kê sử dụng công cụ CMU 42 4.3 Xây dựng từ điển âm học .46 4.4 Ghi âm file mẫu .48 4.4.1 Môi trường ghi âm 48 4.4.2 Thành phần ghi âm 50 4.4.3 Phương pháp ghi âm .50 4.4.4 Kết ghi âm 51 4.4.5 Cắt file ghi âm thành .52 4.5 Huấn luyện mô hình âm học 54 4.6 Tích hợp nhận dạng tiếng nói vào phần mềm 66 4.7 Kết nhận dạng 73 KẾT LUẬN 75 DANH MỤC TÀI LIỆU THAM KHẢO .76 DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt API CMU CNTT ERP EJB FAB – EIS HMM JPA JEAP JAAS PAM IDE JSGF CMMS DARPA CCDC JEAP JNLP DLL DCT LPC CFG FST FSG Ý nghĩa Application Programming Interface – Giao diện lập trình ứng dụng Carnegie Mellon University – Đại học Carnegie Mellon – Hoa Kỳ Công nghệ thông tin Enterprise Resource Planning – Lập kế hoạch tài nguyên doanh nghiệp Enterprise Java Bean – Đối tượng Java cho ứng dụng doanh nghiệp FAB – Enterprise Information System – Hệ thống thông tin doanh nghiệp FAB Hidden Markov Model – Mô hình Markov ẩn Java Persistence API – Giao diện lập trình ứng dụng lưu trữ Java JBoss Enterprise Application Platform – Nền tảng ứng dụng doanh nghiệp JBOSS Java Authentication and Authorization Service – Dịch vụ chứng thực JAVA Pluggable Authentication Module Integrated Development Environment – Môi trường phát triển tích hợp JSpeech Grammar Format – Định dạng ngữ pháp JSpeech Computerized Maintenance Management System – Hệ thống quản lý bảo trì sử dụng máy tính Defense Advanced Research Projects Agency - Cơ quan nghiên cứu dự án quốc phòng tiên tiến Mỹ Công cụ dụng cụ JBoss Enterprise Application Platform – Nền tảng ứng dụng doanh nghiệp Jboss The Java Network Launch Protocol – Giao thức thực thi ứng dụng Java qua mạng Dynamic – Link Library – Thư viện liên kết động Discrete Cosine Transform – Biến đổi cosin rời rạc Linear Predictive Coding – Mã hóa tuyến tính Context-free grammar – Ngữ pháp phi ngữ cảnh Finite State Transducer – Máy hữu hạn trạng thái Finite State Grammar – Ngữ pháp hữu hạn trạng thái DANH MỤC BẢNG Bảng Các Mô hình Markov 12 Bảng Danh mục module FAB - EIS .16 Bảng Danh sách từ vựng nhận dạng .40 Bảng Mô hình ngôn ngữ định dạng JSGF 41 Bảng Mô hình ngôn ngữ sử dụng CMU Toolkit 43 Bảng Nội dung file từ vựng 43 Bảng Tập lệnh xây dựng mô hình ngôn ngữ DMP 45 Bảng Mô từ điển âm học .46 Bảng Mô từ điển âm học đơn giản 47 Bảng 10 Từ điển âm học sử dụng chương trình 47 Bảng 11 Danh sách thành viên ghi âm 50 Bảng 12 Kết ghi âm 52 Bảng 13 File Phoneset .55 Bảng 14 File tạp âm 56 Bảng 15 Tham số định dạng file ghi âm 58 Bảng 16 Tham số cấu hình file 58 Bảng 17 Tham số kiểu mô hình tham số mô hình 58 Bảng 18 Tham số đặc trưng âm 59 Bảng 19 Tham số trình huấn luyện 59 Bảng 20 Tham số giải mã 59 Bảng 21 Nội dung file clear.bat 61 Bảng 22 File gen_predata.bat 64 Bảng 23 File train.bat 65 Bảng 24 Cấu hình ngôn ngữ 67 Bảng 25 Cấu hình từ điển 67 Bảng 26 Cấu hình mô hình âm học 67 Bảng 27 Mã nguồn menu kích hoạt nhận dạng tiếng nói 69 Bảng 28 Mã nguồn nhận dạng tiếng nói 71 Bảng 29 Kết nhận dạng 73 DANH MỤC HÌNH Hình Biểu diễn sóng từ "tài sản" .9 Hình Mô hình nhận dạng tiếng nói 10 Hình Mô hình Markov ẩn .13 Hình Hệ thống chức FAB – EIS .15 Hình Giao diện FAB - EIS 16 Hình Kiến trúc thiết kế 21 Hình Kiến trúc cài đặt FAB - EIS 22 Hình Kiến trúc EJB 23 Hình Kiến trúc J2EE 24 Hình 10 Kiến trúc JPA 25 Hình 11 Kiến trúc Jboss Server 26 Hình 12 Mẫu báo cáo Jasper Report 27 Hình 13 Quá trình cài đặt FAB - EIS sử dụng Java Web Start 28 Hình 14 Eclispe & Kiến trúc code FAB - EIS 29 Hình 15 Sơ đồ khối sử dụng kỹ thuật Hook xây dựng chương trình nhận dạng tiếng nói 33 Hình 16 Sơ đồ kiến trúc Sphinx .35 Hình 17 FrontEnd 36 Hình 18 Đồ thị tìm kiếm GraphSearch .38 Hình 19 Thiết bị ghi âm Philips 48 Hình 20 Cấu hình card âm .49 Hình 21Giao diện phần mềm ghi âm 49 Hình 22 Cấu hình file ghi âm 51 Hình 23 Kết ghi âm Cool Edit Pro .51 Hình 24 Dạng sóng từ "Hóa Đơn" 53 Hình 25 Nội dung thu sau cắt file wav 53 Hình 26 Cấu trúc thư mục sau cắt 30 file sau ghi âm thành viên 54 Hình 27 Nội dung file Users.txt 57 Hình 28 Nội dung file TestUsers.txt 57 Hình 29 Huấn luyện 60 Hình 30 Kết huấn luyện 60 Hình 31 Sơ đồ khối clear.bat .61 Hình 32 Sơ đồ khối gen_predata.bat 63 Hình 33 Sơ đồi khối train.bat 65 Hình 34 Sơ đồ khối đăng ký menu xử lý tiếng nói 68 Hình 35 Sơ đồ khối cài đặt nhận dạng tiếng nói .70 Hình 36 Giao diện nhận dạng tiếng nói 72 Hình 37 Giao diện hồ sơ nhân 73 MỞ ĐẦU Với bước tiến dài thập kỷ qua, CNTT với biểu tượng máy vi tính trở thành công cụ thiết yếu đời sống đại, phục vụ nhu cầu quan trọng học tập, làm việc, giải trí… Bên cạnh nghiên cứu không ngừng để đưa sản phẩm nhanh, mạnh hơn, nhà sản xuất( phần cứng phần mềm) cố gắng đưa sản phẩm CNTT trở nên gần gũi với người Xử lý tiếng nói xu hướng lựa chọn để mang đến cho sản phẩm CNTT có khả giao tiếp từ đơn giản đến phức tạp, làm phong phú thêm khả “hiểu” người – máy Trải qua nhiều thập niên phát triển, xử lý tiếng nói có thành quan trọng, ứng dụng nhiều sản phẩm CNTT tiếng sản phẩm nhà thông minh (Smart House), điều khiển ô tô, sản phẩm điện thoại Google, Sam Sung, trợ lý ảo Siri Apple… Các sản phẩm thành công mang lại trải nghiệm mẻ cho người sử dụng ERP (Enterprise Resource Planning) trở thành khái niệm gần gũi doanh nghiệp Việt Nam Đây tập phần mềm hữu dụng trình quản lý hoạt động doanh nghiệp từ công tác nhân sự, kinh doanh, tài chính, sản xuất tới trình mua bán hàng… Sử dụng khai thác hiệu tiện ích từ phần mềm ERP, mang đến cho doanh nghiệp lợi ích không nhỏ môi trường cạnh tranh toàn cầu ERP trở thành phần thiếu doanh nghiệp, đặc biệt doanh nghiệp lớn, có tầm vóc quốc gia, quốc tế Các sản phẩm ERP tiếng tập đoàn lớn cung cấp IBM, Oracle, Microsoft… Trong phạm vi luận văn này, cố gắng kết hợp hai yếu tố: xử lý tiếng nói phần mềm quản trị doanh nghiệp nhằm mang lại phương thức giao tiếp người máy tính, giúp máy tính chủ động giao tiếp, nghe – hiểu ngôn từ đơn giản từ người dùng thay phương pháp truyền thống trước đây: chuột bàn phím… Nội dung luận văn gồm phần: - Chương Tổng quan nhận dạng tiếng nói Chương Giải pháp tích hợp nhận dạng tiếng nói vào phần mềm kế toán quản trị doanh nghiệp FAB - EIS Chương Bộ công cụ Sphinx Chương Tích hợp nhận dạng tiếng nói Chương Tổng kết Tôi xin gửi lời cảm ơn Viện Công nghệ thông tin Truyền thông, Đại học Bách khoa Hà Nội, nơi tạo điều kiện học tập nghiên cứu; đặc biệt xin gửi lời cảm ơn chân thành tới Tiến sĩ Nguyễn Hồng Quang, người trực tiếp hướng dẫn trình hoàn thành luận văn Dù có nhiều cố gắng, chắn sai sót, định hướng phát triển tương lai cho đề tài mà chưa nhận ra, mong góp ý chân thành từ hội đồng nhà quan tâm tới đề tài Tôi xin chân thành cảm ơn! CHƢƠNG TỔNG QUAN VỀ NHẬN DẠNG TIẾNG NÓI 1.1 Lịch sử phát triển Các nghiên cứu nhận dạng tiếng nói thập niên 40 kỉ 19, với khởi nguồn Bell Laboratories Năm 1952, họ cho đời hệ thống Audrey có khả nhận dạng chữ số từ nguồn đơn Năm 1962, IBM cho đời máy Shoebox có khả nhận dạng 16 từ tiếng Anh Trong giai đoạn này, nhà nghiên cứu Mỹ, Nhật, Anh, Liên Xô cho đời sản phẩm có khả nhận dạng nguyên âm 16 phụ âm Đây kết ấn tượng, dù so sánh với ngày nay, máy tính đại mạnh nhiều so sánh với siêu máy tính thập niên 50, 60 Thành công bước đầu tạo tảng cho phát triển công nghệ nhận dạng tiếng nói Những năm 70, chương trình SUR (DARPA Speech Understanding Research) tài trợ quốc phòng Mỹ tạo nên thành công với hệ thống nhận dạng tiếng nói Harpy Đại học Carnegie Mellon, có khả nhận dạng tới 1011 từ - tương đương tập từ vựng đứa trẻ ba tuổi Harpy gây ấn tượng mạnh đưa phương pháp tìm kiếm beam search, tìm kiếm kết phù hợp mạng trạng hữu hạn Trong thập niên tiếp theo, năm 80, nhận dạng tiếng nói bước sang hướng tiếp cận giúp tập từ vựng nhận dạng lên đến hàng nghìn từ, chí có khả nhận dạng không giới hạn dựa thống kê, mà bật mô hình Markov ẩn Trong giai đoạn này, nhận dạng tiếng nói bắt đầu đưa vào ứng dụng thương mại Dù nhận dạng tới hàng nghìn từ, thời kỳ nhận dạng tiếng nói có hạn chế lớn nhận dạng từ cách liên tục, tồn gián đoạn hai lần nhận dạng khác Những năm 90, hệ thống nhận dạng tiếng nói tiếp tục mở rộng để có khả nhận dạng tập từ vựng lớn Giai đoạn chứng kiến đời ứng dụng Dragon Dictate, cải tiến sau năm – Dragon NaturallySpeaking cho phép nhận dạng tiếng nói liên tục khoảng 100 từ phút Chương trình khoảng 45 phút để huấn luyện Những năm 2000, nhận dạng tiếng nói đạt đến độ xác 80%, đến cuối thập niên này, độ xác dường đạt đến giới hạn Khả nhận dạng tiếng nói trang bị nhiều phần mềm khác phiên hệ điều hành Windows, Mac OS, Linux… đưa lên thiết bị di động Các sản phẩm tiếng nhận dạng tiếng nói Siri, Google’s Voice Search đem đến trải nghiệm giao tiếp người – máy Sự bùng nổ ứng dụng liên quan dấu hiệu cho thấy khả quan ứng dụng nhận dạng tiếng nói, ứng dụng không đơn giản điều khiển máy tính, chuyển tín hiệu âm thành văn bản, mà hỗ trợ đa ngôn ngữ, đa thiết bị, chí làm việc môi trường có nhiều tiếng ồn… 1.2 Cấu trúc ngôn ngữ[1] Tiếng nói tượng vật lý phức tạp, thường có có nhận biết cách thức chúng sinh tiếp nhận Các quan điểm truyền thống thường cho tiếng nói tổ hợp từ, từ lại gồm nhiều âm tiết Thực nghiệm lại cho thấy kết khác, tiếng nói trình động không phân biệt phần với cách rõ ràng Ví dụ biểu diễn dạng sóng từ “tài sản”: Hình Biểu diễn sóng từ "tài sản" Một cách đơn giản tiếng nói gồm nhiều câu nói Các câu nói xây dựng từ nhiều từ, từ cấu tạo từ nhiều âm tiết Mỗi tâm tiết lại tổ hợp từ âm Trong ứng dụng thực tế, tiếng nói xem xét góc độ dòng âm liên tục, trạng thái ổn định trạng thái động hòa trộn vào nhau, không phân tách cách rõ ràng Trong chuỗi trạng thái đó, phân định nhiều tập trạng thái tương tự gọi âm (phone) Từ (word) xây dựng từ âm, điều không hoàn toàn Các đặc điểm âm học đặc trưng cho dạng sóng âm khác phụ thuộc vào nhiều yếu tố ngữ cảnh, người nói, văn phong… Điều làm cho biểu diễn âm dạng sóng biến đổi đa dạng Sự biến đổi trạng thái hai từ khác mang nhiều thông tin thành phần trạng thái ổn định, phần chuyển hai âm liên tiếp gọi diphone Đôi khi, người ta nhắc đến trạng thái âm, thường có ba nhiều phần âm xác định dễ dàng Phần đầu âm phụ thuộc vào âm trước đó, phần tương đối ổn định, phần cuối phụ thuộc vào âm Đó lý mô hình Markov ẩn thường có ba trạng thái cho âm Các âm kết hợp với tạo thành âm tiết Âm tiết tương đối ổn định, phụ thuộc vào ngữ cảnh Khi tiếng nói sinh nhanh hay chậm, âm thay đổi âm tiết cũ Tổ hợp âm tiết tạo thành từ (word) Đây thành phần quan trọng trình nhận dạng tiếng nói, giới hạn khả kết hợp âm Nếu có 40 âm, trung bình từ có âm, có 407 từ Nhưng thực tế, người dùng khoảng 20 từ đời, điều làm cho việc nhận dạng trở nên thực tế 1.3 Quá trình nhận dạng ngôn ngữ Phương pháp nhận dạng tiếng nói thông thường việc cố gắng xây dựng hệ sở liệu tiếng nói, lưu trữ đặc trưng tiếng nói phục vụ cho trình nhận dạng sau Mô hình mô tả tổng quan trình nhận dạng tiếng nói: Tiếng nói Lưu trữ Trích chọn đặc trưng CSDL tiếng nói Cung cấp liệu đối sánh Tiếng nói Trích chọn đặc trưng Đối sánh mẫu Kết nhận dạng Hình Mô hình nhận dạng tiếng nói Từ mô hình nhận dạng tiếng nói, ta rút ba yếu tố tác động tới trình nhận dạng sau: 10 del %project%_train.fileids del %project%_train.fileids del %project%_train.transcription rmdir /Q /S bwaccumdir rmdir /Q /S etc rmdir /Q /S feat rmdir /Q /S logdir rmdir /Q /S model_architecture rmdir /Q /S model_parameters rmdir /Q /S qmanager rmdir /Q /S result rmdir /Q /S trees Sơ đồ khối nội dung file pre_gen.bat 62 Bắt đầu Thiết lập biến môi trường Xóa liệu huấn luyện cũ Sinh liệu từ vựng Sinh liệu ngữ pháp Sinh file transcription & cấu hình Kết thúc Hình 32 Sơ đồ khối gen_predata.bat 63 Bảng 22 File gen_predata.bat set project=Lenh set base=Z:\Dropbox\LuanVan\HuanLuyen\ set tools=%base%SphinxTools\ set sphinxtrain=%base%\SphinxTrain\ set hxutils=%base%\HxUtils\ del %project%.arpa del %project%.dic del %project%.filler del %project%.html del %project%.idngram del %project%.lm.DMP del %project%.phone del %project%.vocab del %project%_test.fileids del %project%_test.transcription del %project%_train.fileids del %project%_train.fileids del %project%_train.transcription rmdir /Q /S bwaccumdir rmdir /Q /S etc rmdir /Q /S feat rmdir /Q /S logdir rmdir /Q /S model_architecture rmdir /Q /S model_parameters rmdir /Q /S qmanager rmdir /Q /S result rmdir /Q /S trees %tools%text2wfreq < %project%.txt | %tools%wfreq2vocab > %project%.vocab %tools%text2idngram -vocab %project%.vocab -idngram %project%.idngram < %project%.txt %tools%idngram2lm -vocab_type -idngram %project%.idngram -vocab %project%.vocab -arpa %project%.arpa %tools%sphinx_lm_convert -i %project%.arpa -o %project%.lm.DMP %hxutils%hxgendic %project%.vocab %project%.dic %hxutils%hxgenphone %project%.dic %project%.phone %hxutils%hxgentranscription %project%.txt Users.txt %project%_train.transcription %hxutils%hxgentranscription %project%.txt TestUsers.txt %project%_test.transcription %hxutils%hxgenfileids %project%.txt Users.txt %project%_train.fileids %hxutils%hxgenfileids %project%.txt TestUsers.txt %project%_test.fileids %hxutils%hxgenfiller %project%.filler 64 python %sphinxtrain%scripts\sphinxtrain -t %project% setup Sơ đồ khối nội dung file train.bat Bắt đầu Thiết lập biến môi trường Sao chép file liệu cần thiết Huấn luyện Kết thúc Hình 33 Sơ đồi khối train.bat Bảng 23 File train.bat set project=Lenh set base=Z:\Dropbox\LuanVan\HuanLuyen\ set tools=%base%SphinxTools\ set sphinxtrain=%base%\SphinxTrain\ set hxutils=%base%\HxUtils\ copy %project%.dic etc\%project%.dic copy %project%.filler etc 65 copy %project%.lm.DMP etc copy %project%.phone etc copy %project%_test.fileids etc copy %project%_test.transcription etc copy %project%_train.fileids etc copy %project%_train.transcription etc python %sphinxtrain%scripts\sphinxtrain run pause 4.6 Tích hợp nhận dạng tiếng nói vào phần mềm Sau thực trình huấn luyện ta thu file cần thiết để tích hợp khả nhận dạng tiếng nói cho phần mềm sau: - Mô hình ngôn ngữ: erp.gram Từ điển phát âm Lenh.dic File tạp âm: Lenh.noise (hoặc Lenh.filler) Các file đặc trưng ngôn ngữ thu từ trình huấn luyện mô hình âm học: o feat.params o mdef o means o mixture_weights o transition_matrices o variances Cấu hình tham số đầu vào cho Sphinx trình bày phần giới thiệu Sphinx4: FrontEnd, Recognizer, Search, Linguist… Một số tham số cần quan tâm liên quan trực tiếp tới liệu huấn luyện thu trước Trong chương trình xây dựng, liệu đặt trực tiếp file mã nguồn Java, tham chiếu viết theo cú pháp: resource/url Thực tế, liệu tách riêng thành tài nguyên giúp dễ dàng cập nhật - Cấu hình file mô hình ngôn ngữ 66 Bảng 24 Cấu hình ngôn ngữ - Cấu hình từ điển Bảng 25 Cấu hình từ điển - Cấu hình mô hình âm học Bảng 26 Cấu hình mô hình âm học 67 Để người dùng kích hoạt chức nhận dạng tiếng nói, FAB – EIS tích hợp thêm menu tương tác sử dụng đoạn code sau: - Sơ đồ khối: Bắt đầu Sinh đối tượng ICON Sinh đối tượng MenuEntry với ICON tạo sẵn Đăng ký xử lý kiện cho đối tượng MenuEntry Kết thúc Hình 34 Sơ đồ khối đăng ký menu xử lý tiếng nói 68 - Mã nguồn: Bảng 27 Mã nguồn menu kích hoạt nhận dạng tiếng nói Icon speechIcon = new ImageIcon(MainFrameControl.class getResource("/images/common/microphone.png")); amEntrySpeech = new RibbonApplicationMenuEntryPrimary(new IconWrapperResizableIcon(speechIcon), "Kích hoạt nhận dạng tiếng nói", new ActionListener() { public void actionPerformed(ActionEvent e) { speechClicked(); } }, CommandButtonKind.ACTION_ONLY); Chức nhận dạng tiêng nói thực qua nhiều bước khác nhau: - Bước 1: Bắt đầu - Người dùng kích hoạt chức nhận dạng Bước 2: Khởi tạo biến xử lý cấu hình nhận dạng Bước 3: Khởi tạo Microphone Bước 4: Nhận liệu từ Microphone trích chọn đặc trưng Bước 5: Nhận dạng liệu tiếng nói Bước 6: Thiết lập kết nhận dạng tương ứng vào phần mềm kế toán quản trị doanh nghiệp Bước 7: Kiểm tra điều kiện người dùng dừng chức nhận dạng chuyển sang bước 8, không quay trở lại bước Bước 8: Kết thúc - Dừng chức nhận dạng 69 Sơ đồ khối Bắt đầu Khởi tạo đối tượng xử lý cấu hình nhận dạng Khởi tạo Microphone Nhận liệu từ Microphone Nhận dạng tiếng nói - Người dùng tắt chức nhận dạng Thiết lập kết nhận dạng vào điều khiển hình nhập liệu + Kết thúc Hình 35 Sơ đồ khối cài đặt nhận dạng tiếng nói 70 Mã nguồn Bảng 28 Mã nguồn nhận dạng tiếng nói ConfigurationManager cm; cm = new ConfigurationManager( MainFrameView.class.getResource(speechConfigFile)); recognizer = (Recognizer) cm.lookup("recognizer"); recognizer.allocate(); // start the microphone or exit if the programm if this is not possible Microphone microphone = (Microphone) cm.lookup("microphone"); if (!microphone.startRecording()) { System.out.println("Cannot start microphone."); recognizer.deallocate(); } while (speechEnabled) { System.out.println("Start speaking Press Ctrl-C to quit.\n"); Result result; synchronized (recognizer) { result = recognizer.recognize(); } if (result != null) { String resultText = result.getBestFinalResultNoFiller(); System.out.println("You said: " + resultText + '\n'); try { FunctionTreeNode node = SpeechMapping.getNode(resultText); if (node != null) { processFunctionSelected(node); } else { String number = SpeechMapping.getNumber(resultText); if (!"".equalsIgnoreCase(number)) { Component component = KeyboardFocusManager getCurrentKeyboardFocusManager() getFocusOwner(); if (component != null && component instanceof JTextField) { try { Method method = component.getClass().getMethod("getText"); String currentText = (String) method.invoke(component); 71 method = component.getClass().getMethod("setText", String.class);method.invoke(component, currentText + number); } catch (Exception ex) {} } } } } catch (Exception e) { e.printStackTrace(); } } else { System.out.println("I can't hear what you said.\n"); } Trong đoạn mã nguồn trên, lớp cung cấp sẵn công cụ Sphinx, FAB – EIS cung cấp lớp SpeechMapping dùng để ánh xạ lệnh nhận dạng vào tập chức tương ứng Sau xây dựng thành công khả nhận dạng tiếng nói, giao diện FAB – EIS có dạng sau Hình 36 Giao diện nhận dạng tiếng nói Sau kích hoạt khả nhận dạng tiếng nói, người dùng giao tiếp với phần mềm FAB – EIS sử dụng tiếng nói trường hợp sau: - Ra lệnh mở form ứng dụng với lệnh huấn luyện 72 - Nhập số từ đến vào ô nhập liệu Ví dụ giao diện Quản lý hồ sơ nhân tự động bật người dùng nói “Nhân Sự” Hình 37 Giao diện hồ sơ nhân 4.7 Kết nhận dạng Sau tích hợp thành công khả nhận dạng tiếng nói, tác giả tiến hành đánh giá độ xác trình nhận dạng, với 10 người tham gia, người nói lệnh nhận dạng 50 lần Kết thu bảng đây: Bảng 29 Kết nhận dạng Từ Hóa Đơn Lệnh Quản lý hóa đơn Mua hàng Nhập hàng Độ xác 91% 81% Bán hàng Vật tư Tài sản Công cụ Xây lắp Nhân Xuất bán hàng Quản lý vật tư Quản lý tài sản Quản lý công cụ dụng cụ Lập dự toán công trình Hồ sơ nhân 87% 70% 90% 83% 92% 90% 73 Kế toán Khách hàng Nhà cung cấp Nhân viên Quốc gia Phòng ban Ngân hàng Sản phẩm Báo cáo Quản trị Không Một Hai Ba Bốn Năm Sáu Bảy Tám Chín TB Quản lý chứng từ Danh mục khách hàng Danh mục nhà cung cấp Danh mục nhân viên Danh mục quốc gia Danh mục phòng ban Danh mục ngân hàng Danh mục sản phẩm Danh mục báo cáo Quản trị người dùng hệ thống 74 87% 79% 86% 93% 92% 89% 82% 91% 92% 90% 95% 94% 96% 94% 81% 90% 85% 91% 91% 95% 82.56% KẾT LUẬN Với phạm vi đề tài “Xây dựng giao tiếp tiếng nói với phần mềm kế toán quản trị doanh nghiệp”, hoàn thành cách yêu cầu đặt là: - - Tham gia xây dựng thành công phần mềm kế toán quản trị doanh nghiệp FAB – EIS, đáp ứng nhu cầu quan trọng doanh nghiệp hoạt động thực tế Sản phẩm triển khai nhiều doanh nghiệp khác nhau, với lĩnh vực hoạt động khác nhau, đánh giá hiệu Tìm hiểu công cụ Sphinx kiến trúc, nguyên lý hoạt động Bước đầu tiếp cần với xử lý tiếng nói, cách thức xây dựng hệ nhận dạng tiếng nói dựa công cụ Sphinx Tích hợp thành công khả nhận dạng tiếng nói cho phần mềm kế toán quản trị doanh nghiệp FAB – EIS, tạo nên trải nghiệm khả giao tiếp người – máy Bên cạnh vấn đề đạt được, luận văn vấn đề tồn như: - Phạm vi nhận dạng chưa rộng: hệ thống có khả nhận dạng 20 lệnh, 10 chữ số Tuy đáp ứng khả nhận dạng tiếng nói, độ xác chưa cao, tập mẫu huấn luyện chưa lớn tồn tạp âm lớn số file mẫu Dựa đạt được, hạn chế tồn tại, đề tài nhiều hướng phát triển tiếp theo: - Tiếp tục nghiên cứu hành vi người sử dụng nhằm đưa tập lệnh tối ưu, đáp ứng nhu cầu sử dụng thực tế Xây dựng tập mẫu lớn, giảm tạp âm nhằm nâng cao hiệu nhận dạng Giới hạn phạm vi nhận dạng theo ngữ cảnh, nhằm giảm số lượng từ cần nhận dạng ngữ cảnh cụ thể, làm tăng hiệu cho sản phẩm Mở rộng khả nhận dạng tiếng nói không phụ thuộc người nói 75 DANH MỤC TÀI LIỆU THAM KHẢO Carnegie Mellon University, “Sphinx-4 A speech recognizer written entirely in the JavaTM programming language”, Carnegie Mellon University, “Sphinx-4 Application Programmer's Guide” Carnegie Mellon University, CMUSphinx Tutorial For Developers JasperReport (2012), “Getting Started with JasperReports Library” Melanie Pinola (2011), “Speech Recognition Through the Decades: How We Ended Up With Siri” Pete Muir (2012), “JBoss - Getting Started Developing Applications Guide” Oracle (2010), “The Java EE Tutorial” Willie Walker, Paul Lamere, Philip Kwok, Bhiksha Raj, Rita Singh, Evandro Gouvea, Peter Wolf, Joe Woelfel, “Sphinx-4: A Flexible Open Source Framework for Speech Recognition” http://en.wikipedia.org/wiki/Markov_model 10 http://cmusphinx.sourceforge.net 11 http://nl.wikipedia.org/wiki/Enterprise_JavaBeans 12 http://www.en.wikipedia.org 13 http://www.jboss.org 14 http://www.fab.vn 15 http://www.ibm.com 16 http://www.en.wikipedia.org/wiki/Hidden_Markov_model 17 Bộ Tài Chính (2006), “Quyết định 15/2006/QĐ-BTC Bộ tài ban hành chế độ kế toán doanh nghiệp” 18 Quốc hội nước CHXHCN Việt Nam (2003), “Luật Kế toán” 76 ... dạng tiếng nói 13 CHƢƠNG GIẢI PHÁP TÍCH HỢP NHẬN DẠNG TIẾNG NÓI VÀO PHẦN MỀM KẾ TOÁN VÀ QUẢN TRỊ DOANH NGHIỆP FAB – EIS 2.1 Giới thiệu phần mềm kế toán quản trị doanh nghiệp FAB - EIS Phần mềm quản. .. nhằm đáp ứng lệnh phù hợp với tiếng nói người sử dụng Xây dựng giao tiếp tiếng nói module phần mềm kế toán quản trị doanh nghiệp FAB – EIS 2.2.1 Xây dựng giao tiếp tiếng nói nhƣ chƣơng trình độc... nói cho phần mềm kế toán quản trị doanh nghiệp, tác giả nghiên cứu đề xuất hai giải pháp: - - Xây dựng giao tiếp tiếng nói chương trình độc lập, sử dụng chế Hook để can thiệp vào phần mềm nhằm

Ngày đăng: 25/07/2017, 21:58

Từ khóa liên quan

Mục lục

  • muc luc

  • danh muc cac tu viet tat

  • danh muc bang

  • danh muc hinh

  • mo dau

  • chuong 1

  • chuong 2

  • chuong 3

  • chuong 4

  • ket luan

  • danh muc tai lieu tham khao

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

Tài liệu liên quan