MFCC LÀ GÌ

Ngoài lề:

Mình là admin của group Vietnam AI liên kết Sharing Community: 1 cộng đồng chuyên chia sẻ, trao đổi chuyên sâu về các paper, thuật toán, author, competition hay. Trên đây cộng đồng sẽ được tiếp cận những kiến thức sâu sát hơn, không trở nên loãng, trôi, lack mất bài bác viết. Rất ao ước mọi fan ghé qua, trường hợp được thì tham gia và cùng cả nhà xây dựng xã hội lớn táo bạo nhé. Cảm ơn mọi tín đồ đã đọc.

Bạn đang xem: Mfcc là gì

Link: Vietnam AI liên kết Sharing Community

MFCC - Mel frequency cepstral coefficients

*

Đây là bài thứ hai trong chuỗi bài bác xử lý giọng nói, phần 1: loài kiến thức gốc rễ xử lý tiếng nói của một dân tộc - Speech Processing. Chúng ta nên đọc phần 1 trước lúc đọc bài này để đảm bảo an toàn đủ kiến thức nền tảng.

Trong bài xích này, bản thân sẽ tập trung vào việc biến hóa tín hiệu giọng nói thành dạng MFCC - dùng phổ biến trong vấn đề Speech recognize cùng nhiều bài toán tương quan tới các giọng nói khác. Ta có thể hình dung việc tính MFCC theo luồng xử lý: cắt chuỗi tín hiệu âm nhạc thành những đoạn ngắn đều bằng nhau (25ms) với overlap lên nhau (10ms). Mỗi đoạn music này được đổi mới đổi, thống kê giám sát để nhận được 39 features. Mỗi list 39 features tất cả tính chủ quyền cao, không nhiều nhiễu, đủ nhỏ dại để bảo đảm tính toán, đủ tin tức để bảo đảm chất lượng cho những thuật toán nhấn dạng.

Hình dưới đây mô tả luồng cách xử trí từ âm thanh nguồn vào ⟶longrightarrow⟶ MFCC

*

2.2 DFT

Trên từng frame, ta áp dụng DFT - Discrete Fourier Transform theo công thức:

*

Hình bên dưới là các spectrogram của 4 nguyên âm. Quan giáp spectrogram theo lần lượt từ dưới lên, bạn ta nhấn thấy có một vài tần số đặc trưng gọi là các formant, hotline là những tần số F1, F2, F3 ... Các chuyên gia về ngữ âm học có thể dựa vào vị trí, thời gian, sự biến hóa các formant bên trên spectrogram để xác minh đoạn music đó là của âm vị nào.

*

Như vậy ta đã hiểu cách thức tạo ra spectrogram. Tuy nhiên trong nhiều câu hỏi (đặc biệt là speech recognition), spectrogram không phải là sự lựa chọn hoàn hảo. Vị vậy ta đề xuất thêm vài bước tính nữa để thu được dạng MFCC, xuất sắc hơn, phổ biến hơn, hiệu quả hơn spectrogram.

Xem thêm: Phân Biệt Ngành Quản Trị Tài Chính Và Quản Trị Kinh Doanh, Quản Trị Tài Chính Ngân Hàng

3. Mel filterbank

Như tôi đã mô tả ở chỗ trước, phương pháp cảm nhận của tai bạn là phi con đường tính, ko giống các thiết bị đo. Tai người cảm nhận giỏi ở các tần số thấp, kém nhạy cảm với các tần số cao. Ta phải 1 cách thức mapping tựa như như vậy.

*

Trước hết, ta bình phương những giá trị vào spectrogram nhận được DFT power nguồn spectrum (phổ công suất). Sau đó, ta áp dụng 1 tập những bộ thanh lọc thông dải Mel-scale filter trên từng khoảng tần số (mỗi filter áp dụng trên 1 dải tần xác định). Quý hiếm output của từng filter là năng lượng dải tần số mà filter kia cover (bao phủ) được. Ta thu được Mel-scale power spectrum. Kế bên ra, những filter dùng cho dải tần thấp thường thuôn hơn những filter sử dụng cho dải tần cao.

Quá trình này còn rất có thể mô tả bằng hình minh hoạ bên dưới đây:

*

Trong hình này, tín hiệu chúng ta thu được là trang bị thị 3, nhưng thông tin quan trọng bọn họ cần là phần 2, thông tin cần loại trừ là phần 1. Để loại trừ đi thông tin về F0, ta làm cho 1 bước chuyển đổi Fourier ngược (IDFT) về miền thời gian, ta thu được Cepstrum. Nếu lưu ý kỹ, ta sẽ nhận biết rằng tên gọi "cepstrum" thực tế là hòn đảo ngược 4 chữ cái đầu của "spetrum".

Phép biến đổi IDFT cũng tương đương với cùng một phép biến đổi DCT discrete cosine transformation. DCT là 1 trong những phép thay đổi trực giao. Về khía cạnh toán học, phép thay đổi này tạo thành các uncorrelated features, hoàn toàn có thể hiểu là các feature tự do hoặc gồm độ đối sánh kém cùng với nhau. Trong những thuật toán Machine learning, uncorrelated features thường mang lại hiểu quả tốt hơn. Như vậy sau bước này, ta chiếm được 12 Cepstral features.

5. MFCC

Như vậy, mỗi frame ta sẽ extract ra được 12 Cepstral features có tác dụng 12 feature đầu tiên của MFCC. Feature vật dụng 13 là tích điện của frame đó, tính theo công thức:

*

Trong dìm dạng giờ nói, tin tức về toàn cảnh và sự biến đổi rất quan tiền trọng. VD tại phần nhiều điểm mở đầu hoặc hoàn thành ở những phụ âm, sự biến đổi này rất rõ rệt, có thể nhận dạng những âm vị phụ thuộc sự chuyển đổi này. 13 hệ số tiếp theo chính là đạo hàm bậc 1 (theo thời gian) của 13 feature đầu tiên. Nó chứa thông tin về sự biến hóa từ frame máy ttt mang lại frame t+1t+1t+1. Công thức:

d(t)=c(t+1)−c(t−1)2d(t) = fracc(t+1) - c(t-1) 2d(t)=2c(t+1)−c(t−1)​

Tương trường đoản cú như vậy, 13 cực hiếm cuối của MFCC là sự biến đổi d(t)d(t)d(t) theo thời gian - đạo hàm của d(t)d(t)d(t), bên cạnh đó là đạo hàm bậc 2 của c(t)c(t)c(t). Công thức:

b(t)=d(t+1)−d(t−1)2b(t) = fracd(t+1) - d(t-1) 2b(t)=2d(t+1)−d(t−1)​

Vậy, tự 12 cepstral feature và power feature vật dụng 13, ta đạo hàm 2 lần và nhận được 39 feature. Đây đó là MFCC feature. Cùng quan sát lại tổng thể quá trình để tạo ra MFCC:

*

6. Kết luận

Như vậy vào 2 phần này, bản thân đã nỗ lực cung cấp những kiến thức và kỹ năng nền tảng cần thiết cho up load giọng nói. Trong thời hạn tới, bản thân sẽ cố gắng viết về mô hình nhận dạng giờ nói auto Speech Recognition (ASR), về HMM, GMM ... Và những thứ liên quan.