76
Kết quả các thông số epoch khác nhau trong việc huấn luyện mơ hình lần lượt là: 10, 20, 30 epoch. Kết quả đạt được như sau:
Với epoch 10 đạt độ tin cậy (Accuracy): 82,41 % Với epoch 20 đạt độ tin cậy (Accuracy): 84,65 % Với epoch 30 đạt độ tin cậy (Accuracy): 85,37 %
Với bộ dữ liệu Vivos Corpus [24] khi nhận dạng trên tập kiểm thử cho kết quả nhận dạng về giới tính tương đối tốt, tuy nhiên khả năng nhận dạng giọng nói của từng vùng miền chưa cao, cụ thể:
❖ Độ chính xác khi nhận dạng giới tính là 28 mẫu/37 mẫu chính xác.
❖ Độ chính xác khi nhận dạng giọng nói từng vùng miền là 11 mẫu/37 mẫu chính xác.
Kết quả đánh giá thực nghiệm được trình bày trong Bảng 4.6
Phương pháp Độ chính xác % (Accuracy) Giới tính Vùng miền
CNN – 5 tầng 75,67% 29,72%
Bảng 4.6 Bảng kết quả đánh giá với CNN – 5 tầng
4.3. Ứng dụng nhận dạng tiếng nói tiếng Việt 4.3.1. Thiết kế
Ứng dụng Web của luận văn có sơ đồ thiết kế như dưới đây:
Hình 4.2 Phân tích thiết kế giao diện Trang phân tích dữ liệu Trang chủ Trang nhận dạng âm thanh Trang kết quả nhận dạng âm thanh
77
Luận văn đề xuất xây dựng ứng dụng Web cho phần back-end 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:
➢ Hiển thị trang mơ hình kết quả đánh giá.
➢ 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.
Hình 4.3 Phân tích thiết kế chức năng
4.3.2. Ứng dụng
78
Phần 1: Demo, bao gồm giao diện chính và kết quả của phần này được trình bày
trong các hình dưới đây.
Hình 4.4 Giao diện trang chủ hệ thống
79
Hình 4.6 Giao diện trang kết quả thử nghiệm ứng dụng
Hình 4.7 Giao diện trang kết quả đánh giá
Người sử dụng có thể nhập vào một bản ghi, hay một file, sau khi lựa chọn và nhập dữ liệu, click vào dự đoán để ứng dụng dự đoán kết quả. Dưới đây là kết quả của một ví dụ demo.
80
Hình 4.8 Giao diện trang kết quả nhận dạng âm thanh
Phần 2: Phân tích dữ liệu, ứng dụng Web trình bày các biểu đồ phân tích dữ liệu có
trong cơ sở dữ liệu, phân chia tỷ lệ dữ liệu như các biểu đồ theo hình dưới đây.
Hình 4.9 Phân tích dữ liệu hệ thống
Phần 3: Nhận dạng âm thanh, ứng dụng Web trình bày các chức năng ghi âm, tải file
âm thanh, xử lý âm thanh theo hình dưới đây.
81
Phần 4: Kết quả nhận dạng âm thanh, ứng dụng Web trình bày dữ liệu dự đốn được
hệ thống trả về và hiển thị lên trang kết quả nhận dạng âm thanh theo hình dưới đây.
Hình 4.11 Kết quả nhận dạng âm thanh
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
Bảng 4.7 Xem đánh giá hệ thống Mô tả Xem chi tiết dữ liệu huấn luyện của hệ thống 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.8 Xem chi tiết dữ liệu huấn luyện
82 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 Récognition”.
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 quá 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.9 Chức năng thu âm giọng nói
Mơ tả Cho phép người dùng nghe lại đoạn âm thanh giọng nói mà người dùng đã thu âm trước đó.
Luồng hành động
4. 1. Từ trang chủ click chuột vào biểu tượng và hình ảnh có nội dung “Sound Recognition”.
5. 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.10 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ự đốn đoạn âm thanh giọng nói mà người dùng đã thu âm trước đó là nam hay nữ và họ đến từ vùng nào của Việt Nam.
Luồng hành động 6. 1. Từ trang chủ click chuột vào biểu tượng và hình ảnh có nội dung “Sound Recognition”.
83
7. 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. 8. 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.
9. 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.11 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ữ và họ đến từ vùng nào của Việt Nam.
Luồng hành động
10. 1. Từ trang chủ click chuột vào biểu tượng và hình ảnh có nội dung “Sound Recognition”.
11. 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.
84
12. 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.
13. 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.
14. 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. Bảng 4.12 Bảng chức năng xem kết quả dự đoán
CHƯƠNG 5
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
Trong chương này, luận văn trình bày tổng quát kết quả thực hiện, đưa ra các hướng phát triển cho mơ hình trong tương lai.
5.1. Kết quả đạt được
Luận văn đã đề xuất giải pháp cho việc phân loại giới tính và và khu vực của giọng nói tiếng Việt bằng cách sử dụng mơ hình mạng nơ-ron học sâu tích chập, kết hợp trích xuất tính năng Log-Mel Spectrogram và sử dụng CNN để nhận dạng giới tính và vùng miền tiếng Việt. Luận văn đã tiến hành thử nghiệm trên dữ liệu của cuộc thi Zalo AI 2019 và 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 Thành phố Hồ Chí Minh để đánh giá kết quả. Hệ
85
thống nhận dạng giới tính và giọng nói vùng miền tiếng Việt vẫn cịn hạn chế và độ chính xác chưa cao, tuy nhiên đã đạt được các kết quả như sau:
➢ Phân tích và đánh giá mơ hình đề xuất.
➢ Xử lý dữ liệu âm thanh phù hợp với mạng CNN.
➢ Xây dựng được hệ thống nhận dạng 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.
➢ Sử dụng cơng nghệ mới Flask Framework để trực quan hố kết quả trên nền tảng website.
5.2. Hướng phát triển
Chuẩn hóa, xây dựng bộ dữ liệu âm thanh có độ tương đồng cao, giảm tối đa độ nhiễu.
Ngoài việc dùng Log-Mel Spectrogram kết hợp mạng nơ-ron tích chập CNN, cần xử lý giải quyết bài toán nhận dạng khác nhau như VGGNet, AlexNet, RestNet, DenseNet.
Tối ưu hóa giải thuật, lựa chọn các thơng số phù hợp cho mạng CNN nhằm tăng khả năng nhận dạng giọng nói vùng miền Việt Nam.
86
CƠNG TRÌNH CƠNG BỐ
Trần Thanh Hiệp, Bùi Thanh Hùng. (2021). “Nhận dạng tiếng nói tiếng Việt
bằng phương pháp học sâu”, Kỷ yếu Ngày hội Khoa học cán bộ, giảng viên trẻ và
học viên cao học lần V - năm 2021. Đại học Thủ Dầu Một. 6.2021.
Bùi Thanh Hùng, Trần Thanh Hiệp. (2021). “Nhận dạng tiếng nói tiếng Việt
bằng phương pháp học sâu”, Fundamental and Applied Information Technology
87
TÀI LIỆU THAM KHẢO
[1] Fukushima, Kunihiko (April 1980). "A self-organizing neural network model for a mechanism of pattern recognition unaffected by shift in position". Biological Cybernetics. 36 (4): 193–202.
[2] Yoshua Bengio, Yann LeCun, Craig Nohl, Chris Burges. “LeRec: ANN/HMM Hybrid for On-Line Handwriting Recognition”, Neural Compulation, Volume 7, Number 5 (1995).
[3] Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton. “ImageNet Classification with Deep Convolutional Neural Networks”, Advances in Neural Information Processing Systems 25 (NIPS 2012). 2012
[4] Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, Andrew Rabinovich. “Going deeper with convolutions” (2014).
[5] Christian Szegedy, Vincent Vanhoucke, Sergey Ioffe, Jonathon Shlens, Zbigniew Wojna. “Rethinking the Inception Architecture for Computer Vision”. (2015)
[6] Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun. “Deep Residual Learning for Image Recognition”.
[7] Isra Khan, Rafi Ullah, Shah Muhammad Emaduddin. (2019). Robust Feature Extraction Techniques in Speech Recognition: A Comparative Analysis.
[8] Sayan Mandal, Sarthak Yadav and Atul Rai. End-to-End Bengali Speech Recognition. Staqu Technologies, India, 2020.
[9] Hua Zhang, Ruoyun Gou, Jili Shang, Fangyao Shen, Yifan Wu and Guojun Dai. Pre-trained Deep Convolution Neural Network Model With Attention for Speech Emotion ecognition, 2020 .
[10] Anvarjon Tursunov , Mustaqeem , Joon Yeon Choeh and Soonil Kwon. Age and Gender Recognition Using a Convolutional Neural Network with a Specially Designed Multi-Attention Module through Speech Spectrograms, 2021.
[11] Fatih Demir, Daban Abdulsalam Abdullah, Abdulkadir Sengur. A New Deep CNN Model for Environmental Sound Classification, 2020.
88
[12] Yu-Fu Yeh , Bo-Hao Su , Yang-Yen Ou , Jhing-Fa Wang. Taiwanese Speech Recognition Based on Hybrid Deep Neural Network Architecture, 2020.
[13] Shashidhar R, S Patilkulkarni, Nishanth S Murthy. Visual Speech Recognition using VGG16 Convolutional Neural Network, 2021.
[14] Stevens, Stanley Smith; Volkmann; John & Newman, Edwin B. (1937). Journal of the Acoustical Society of America.
[15] Luận văn thạc sĩ ngành Công nghệ Thông tin của 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.
[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] Numpy: https://numpy.org/ [20] Keras: https://keras.io [21] Tensorflow: https://www.tensorflow.org [22] Matplotlib: https://matplotlib.org/