2.
4.5 Xây dựng ứng dụng nhận dạng tiếng nói Tiếng Việt bằng phƣơng pháp học sâu
sâu
4.5.1. Thiết kế
Phần back-end đƣợc xây dựng bằng ngôn ngữ python thông qua thƣ viện hỗ trợ xây dựng server là Flask.
Server đƣợc xây dựng bằng python hỗ trợ tốt cho việc truy xuất model đƣợc lƣu lại dễ dàng hơn so với các ngôn ngữ khác.
Server bao gồm các chức năng sau:
- Hiển thị trang mơ hình đánh giá kết quả.
- Hiển thị trang phân tích dữ liệu dùng trong huấn luyện và kiểm thử hệ thống. - Hiển thị trang giới thiệu ứng dụng.
- Xử lý thu âm âm thanh ngƣời dùng. - Phát lại nội dung đã thu âm.
- Nhận dạng âm thanh tiếng nói Tiếng Việt. - Hiển thị kết quả nhận dạng.
Trang chủ
Trang nhận dạng âm thanh và hiển
thị kết quả
Trang phân tích dữ liệu
Trang đánh giá kết quả
CHƢƠNG 4: THỰC NGHIỆM
Hình 4.2 Phân tích giao diện thiết kế
Hình 4.3 Phân tích thiết kế chức năng
4.5.2. Ứng dụng 4.5.2.1 Giao diện
Một số hình ảnh kết quả của xây dựng ứng dụng nhận dạng tiếng nói Tiếng Việt bằng phƣơng pháp học sâu. Xem kết quả dự đoán Dự đoán âm thanh đầu vào Thu âm giọng nói
Xem chi tiết dữ liệu huấn luyện Xem đánh giá hệ thống Nghe lại giọng nói đã thu
CHƢƠNG 4: THỰC NGHIỆM
Hình 4.4 Giao diện trang chủ của hệ thống
CHƢƠNG 4: THỰC NGHIỆM
Hình 4.6 Giao diện trang kết quả thử nghiệm ứng dụng
CHƢƠNG 4: THỰC NGHIỆM
Hình 4.8 Giao diện trang kết quả nhận diện âm thanh
4.5.2.2 Chức năng
Mơ tả Xem chi tiết độ chính xác trong q trình huấn luyện và kiểm thử, độ chính xác của hệ thống.
Luồng hành động Nhấn vào biểu tƣợng và hình ảnh có nội dung “đánh giá kết quả” từ trang chủ để có thể xem đƣợc trang đánh giá hệ thống.
Tiền điều kiện Không
CHƢƠNG 4: THỰC NGHIỆM
Mô tả Xem chi tiết dữ liệu huấn luyện của hệ thống
Luồng hành động Nhấn vào biểu tƣợng và hình ảnh có nội dung “phân tích dữ liệu” từ trang chủ để có thể xem đƣợc trang đánh giá hệ thống.
Tiền điều kiện Không
Bảng 4.5 Xem chi tiết dữ liệu huấn luyện
Mô tả Cho phép ngƣời dùng sử dụng chức năng thu âm giọng nói.
Luồng hành động 1.Từ trang chủ click chuột vào biểu tƣợng và hình ảnh có nội dung “Sound Recognition”.
2.Trên trang nhận dạng âm thanh click vào biểu tƣợng microphone trên trang web để bắt đầu thu âm giọng nói
3.Click vào biểu tƣợng microphone có dấu chéo để hồn tất q trình thu âm. Âm thanh sẽ đƣợc lƣu vào hệ thống.
Tiền điều kiện Ngƣời dùng cho phép hệ thống sử dụng microphone để thu âm giọng nói
Bảng 4.6 chức năng thu âm giọng nói
CHƢƠNG 4: THỰC NGHIỆM
nói mà ngƣời dùng đã thu âm trƣớc đó.
Luồng hành động 1.Từ trang chủ click chuột vào biểu tƣợng và hình ảnh có nội dung “Sound Recognition”.
2.Trên trang nhận dạng âm thanh click vào biểu tƣợng và hình ảnh có nội dung “Replay sound recored”.
Tiền điều kiện Ngƣời dùng phải thu âm giọng nói của chính mình trƣớc khi có thể sử dụng chức năng nghe lại âm thanh đã thu.
Bảng 4.7 Bảng chức năng nghe lại giọng nói đã thu âm
Mơ tả Cho phép ngƣời dùng dự đoán đoạn âm thanh giọng nói mà ngƣời dùng đã thu âm trƣớc đó là nam hay nữ
CHƢƠNG 4: THỰC NGHIỆM
và họ đến từ vùng nào của Việt Nam.
Luồng hành động 1.Từ trang chủ click chuột vào biểu tƣợng và hình ảnh có nội dung “Sound Recognition”.
2.Trên trang nhận dạng âm thanh click vào biểu tƣợng microphone trên trang web để bắt đầu thu âm giọng nói
3.Click vào biểu tƣợng microphone có dấu chéo để hồn tất q trình thu âm. Âm thanh sẽ đƣợc lƣu vào hệ thống.
4. Click vào biểu tƣợng và hình ảnh có nội dung “sound recognition” để hệ thống xử lý dữ liệu âm thanh vừa ghi lại đƣợc.
Tiền điều kiện Ngƣời dùng phải thu âm giọng nói của chính mình trƣớc khi có thể sử dụng chức năng nghe lại âm thanh đã thu.
Bảng 4.8 Bảng chức năng dự đoán âm thanh đầu vào
Mơ tả Cho phép ngƣời dùng dự đốn đoạn âm thanh giọng nói mà ngƣời dùng đã thu âm trƣớc đó là nam hay nữ
CHƢƠNG 4: THỰC NGHIỆM
và họ đến từ vùng nào của Việt Nam.
Luồng hành động 1.Từ trang chủ click chuột vào biểu tƣợng và hình ảnh có nội dung “Sound Recognition”.
2.Trên trang nhận dạng âm thanh click vào biểu tƣợng microphone trên trang web để bắt đầu thu âm giọng nói
3.Click vào biểu tƣợng microphone có dấu chéo để hồn tất q trình thu âm. Âm thanh sẽ đƣợc lƣu vào hệ thống.
4. Click vào biểu tƣợng và hình ảnh có nội dung “sound recognition” để hệ thống xử lý dữ liệu âm thanh vừa ghi lại đƣợc.
5. Dữ liệu dự đoán sẽ đƣợc hệ thống trả về và hiển thị lên trang nhận dạng âm thanh.
Tiền điều kiện Ngƣời dùng phải thu âm giọng nói của chính mình trƣớc khi có thể sử dụng chức năng nghe lại âm thanh đã thu.
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN
1. Kết quả đạt đƣợc
Sau khi tìm hiểu về mạng nơ ron tích chập CNN và tiến hành xây dựng ứng dụng nhận dạng tiếng nói Tiếng Việt. Hệ thống nhận diện tiếng nói vẫn cịn nhiều hạn chế và độ chính xác chƣa cao, tuy nhiên dƣới đây là những kết quả đạt đƣợc :
- Xây dựng đƣợc hệ thống nhận diện tiếng nói Tiếng Việt bằng phƣơng pháp học sâu sử dụng mạng nơ ron tích chập CNN.
- Xây dựng Website trực quan hoá kết quả
- Xử lý dữ liệu âm thanh và tiền xử lý âm thanh phù hợp với mạng CNN - Website đƣợc xây dựng bằng công nghệ mới Flask Framework.
- Phân tích và đánh giá mơ hình đề xuất.
- Kiểm thử trên tập dữ liệu kiểm thử bộ dữ liệu Vivos Corpus thuộc lab khoa khoa học máy tính, trƣờng đại học khoa học tự nhiên [23].
Những việc chƣa làm đƣợc
- Chƣa tích hợp đƣợc vào các hệ thống nhận lớn.
- Chƣa nhận diện tốt vùng miền của giọng nói và độ chính xác thấp. - Chƣa phát triển thành API.
- Chƣa sử dụng nhiều đặc trƣng trên miền âm thanh.
2. Hạn chế
- Giải thuật chƣa tối ƣu do thiếu kiến thức về học máy. - Độ chính xác về vùng miền nhận diện đƣợc còn thấp.
- Dữ liệu dùng để huấn luyện có độ nhiễu cao, dữ liệu âm thanh không đạt chuẩn. - Các thông số dùng để cấu hình mạng nơ ron tích chập CNN chƣa phù hợp vẫn
3. Hƣớng phát triển
- Tìm kiếm và xây dựng lại bộ dữ liệu âm thanh có độ nhiễu thấp, đồng nhất với nhau.
- Sử dụng các hƣớng xử lý giải quyết bài toán nhận diện khác nhau ngoài CNN nhƣ GMM (Gaussian Mixture Models), AlexNet, VGGNet, ResNet, DenseNet, …
- Thay đổi các thông số phù hợp cho mạng CNN cũng nhƣ tăng khả năng nhận diện vùng miền của mơ hình.
- Phát triển thành API nhằm tích hợp vào các hệ thống nhận diện.
- Phát triển thành ứng dụng có ích nhƣ nhận diện âm thanh có trong phịng chat voice từ đó phân loại thành viên theo nam và nữ hoặc đếm số lƣợng và phân loại theo vùng miền.
TÀI LIỆU THAM KHẢO
[1]. LeCun, Bottou, Bengio and Haffner. (1998) Object Recognition with Gradient- Based Learning.
[2]. Đặng Văn Đức, CSDL đa phƣơng tiện, Bài giảng cho cao học, Đại học Công nghệ thông tin và truyền thông, Đại học Bách khoa - Hà Nội, Đại học Công nghệ 2005-2014.
[3]. Isra Khan, Rafi Ullah, Shah Muhammad Emaduddin. (2019).Robust Feature Extraction Techniques in Speech Recognition: A Comparative Analysis
[4]. Nguyễn Hồng Quang, Trịnh Văn Loan, Phạm Ngọc Hƣng (2017). Nhận dạng phƣơng ngữ Tiếng Việt sử dụng mạng nơ ron tích chập CNN, Viện Cơng Nghệ Thơng Tin và Truyền Thông, Trƣờng Đại học Sƣ Phạm Kỹ Thuật Hƣng Yên.
[5]. Phú Thị Quyên (2016) . Xây dựng hệ thống tìm kiếm âm thanh theo nội dung dựa trên đặc trƣng âm thanh miền tần số, Luận văn Thạc sĩ – Trƣờng Đại học dân lập Hải Phòng.
[6]. Tapas Chakraborty, Bidhan Barai, Bikshan Chatterjee, Nibaran Das, Subhadip Basu and Mita Nasipuri (2020). Closed-Set Device-Independent Speaker Identification Using CNN
[7]. Nidhi Srivastava (2013) . Speech Recognition using MFCC and Neural Networks [8]. Rishabh N. Tak, Dharmesh M. Agrawal, and Hemant A. Patil (2017). Novel Phase Encoded Mel Filterbank Energies for Environmental Sound Classification
[9]. Ossama Abdel-Hamid, Abdel-rahman Mohamed, Hui Jiang, Li Deng, Gerald Penn, and Dong Yu. (2014) Convolutional Neural Networks for Speech Recognition.
[10]. D.Nagajyothi, P. Siddaiah (2018). Speech Recognition Using Convolutional Neural Networks
[11]. Khalid Hussain1, Mazhar Hussain2 and Muhammad Gufran Khan (2017). Improved Acoustic Scene Classification with DNN and CNN.
[12]. Michele Valenti, Dario Tonelli, Fabio Vesperini, Emanuele Principi, Stefano Squartini (2017). A Neural Network Approach for Sound Event Detection in Real Life Audio
[13]. Phú Thị Quyên, Xây dựng hệ thống tìm kiếm âm thanh theo nội dung dựa trên đặc trƣng miền tần số, Đại học dân lập hải phòng 2016.
[14]. Rosen, Stuart (2011). Signals and Systems for Speech and Hearing (ấn bản 2) [15]. Stevens, Stanley Smith; Volkmann; John & Newman, Edwin B. (1937). Journal of the Acoustical Society of America.
[16]. D. Scherer, A. Müller, and S. Behnke, “Evaluation of pooling operations in convolutional architectures for object recognition,” .Proc. 20th Int. Conf. Artif. Neural Netw.: Part III, Berlin/Heidelberg, Germany, 2010.
[17]. Pydub: https://github.com/jiaaro/pydub [18]. Librosa: https://github.com/librosa/librosa [19]. Keras: https://keras.io [20]. Tensorflow: https://www.tensorflow.org [21]. Numpy: https://numpy.org/ [22]. Matplotlib: https://matplotlib.org/