Hoa Kỳamanbasu/speech-emotion-recognition
Detecting emotions using MFCC features of human speech using Deep Learning
Nhận diện cảm xúc qua giọng nói bằng LSTM hai chiều và Attention
Dự án huấn luyện mạng LSTM hai chiều (Bidirectional LSTM) kết hợp cơ chế attention để phân loại cảm xúc con người từ đặc trưng MFCC của giọng nói.
Dự án của Aman Agarwal và Aditya Mishra sử dụng các hệ số Mel frequency cepstral coefficients (MFCC) được trích xuất từ giọng nói người để huấn luyện một mạng recurrent neural network (LSTM) phân loại cảm xúc thành các nhãn như vui vẻ, buồn bã, giận dữ, bực rối, bình thản và sợ hãi. Bộ dữ liệu sử dụng là IEMOCAP do Đại học Nam California thu thập.
✨ Điểm nổi bật
- MFCC 20 hệ số: Trích xuất 20 hệ số MFCC đầu tiên từ âm thanh gốc làm vector đặc trưng.
- Bucket Padding: Sắp xếp dữ liệu theo độ dài trình tự, chia thành các bucket để giảm padding thừa.
- Bucket Iterator: Chọn batch ngẫu nhiên từ bucket, lấy ví dụ liên tiếp, padding tới độ dài lớn nhất rồi trộn.
- Bidirectional LSTM 2 tầng: Hai tầng LSTM hai chiều xử lý dữ liệu có thứ tự.
- Attention cuối tầng: Áp dụng cơ chế attention ở tầng cuối để tập trung vào các phần quan trọng của chuỗi.
- Dropout 0.8: Áp dụng dropout giữa tầng LSTM cuối và tầng output để giảm overfitting.
- TensorFlow GPU & đa GPU: Hỗ trợ chạy trên một GPU hoặc nhiều GPU đồng thời.
- Kết quả: 45% độ chính xác trung bình (unweighted) trên 6 cảm xúc, 42% trên tập validation.
💡 Vì sao đáng chú ý
Khác với cách tiếp cần đặt trực tiếp trên MFCC chưa được xử lý, dự án này kết hợp Bucket Padding và Bucket Iterator để xử lý chuỗi có độ dài thay đổi một cách hiệu quả, giảm thiểu padding không cần thiết. Thêm vào đó, việc dùng Bidirectional LSTM hai tầng kết hợp attention giúp mô hình nắm bắt tốt hơn cả ngữ cảnh trước và sau trong giọng nói.
Đây là một tài nguyên thực hành tốt cho người mới bắt đầu với deep learning trong xử lý giọng nói, đặc biệt khi làm việc với dữ liệu có thời gian thay đổi độ dài và bài toán phân loại chuỗi.
#SpeechRecognition #EmotionRecognition #TensorFlow #LSTM #MFCC #DeepLearning #TiniX
Dự án tương tự
Khám phá các dự án và mô hình AI khác có sự tương đồng.
Clone a voice in 5 seconds to generate arbitrary speech in real-time
TensorFlow Tutorial and Examples for Beginners (support TF v1 & v2)
DeepSpeech is an open source embedded (offline, on-device) speech-to-text engine which can run in real time on devices ranging from a Raspberry Pi 4 to high power GPU servers.
A Deep-Learning-Based Chinese Speech Recognition System 基于深度学习的中文语音识别系统
Identify the emotion of multiple speakers in an Audio Segment