Algortym współczynników melcepstralnych (MFCC)

 

MFCC – Mel Frequency Cepstral Coefficents. Wdrożone zostały ponad 3 dekady temu. Wykazują najlepszą dokładność rozpoznawania w stosunku do różnych innych cech akustycznych.

 

Podstawowym problemem w rozpoznawaniu mowy jest ekstrakcja cech(parametrów) sygnału które istotne znaczenie w identyfikowaniu zawartości lingwistycznej oraz mogące usunąć zawartość związaną z szumem zewnętrznym, emocjami itp. Kształt traktu głosowego wyraża się w obwiedni krótkoczasowego widma mocy. Zadaniem MFCC jest dokładne reprezentowanie tej obwiedni.

 

 

Czym jest Mel?

 

Człowiek jest o wiele bardziej wrażliwy na niewielkie zmiany w tonu w niskich częstotliwościach niż w wysokich. Użycie skali melowej sprawia że nasze wydobyte z sygnału cechy stają się bliższe ludzkiemu słuchowi.

 

 

ALGORYTM KROKOWY:

 

  1. Podzielić sygnał w krótkie ramki

 

  1. Dla każdej ramki obliczyć estymate periodogramu widma mocy

 

  1. Wymnożyć bank filtrów melowych z widmem mocy, zsumować energie w każdym z filtrów.

 

  1. Obliczyć logarytm dla wszystkich energii zawartych w banku filtrów.

 

  1. Obliczyć DCT logarytmu energii banku filtrów

 

  1. Zachować wspóczynniki DCT od 2 do 13, usunąć resztę

 

 

 

 

 

AD.1 Sygnał jest ciągle zmienny, więc by uprościć zakładamy że w małej skali czasu nie zmienia się on znacznie (w tym wypadku jest statystycznie stacjonarny). Dobieramy czas ramki w granicach 20-40ms, przy mniejszym czasie uzyskamy za mało próbek by obliczyć wiarygodną estymatę widmową, przy dłuższej ramce zmiany sygnału mogą być zbyt duże.

 

AD.2 Obliczamy widmo mocy dla każdej ramki. Nasza estymata periodogramu wykonuje podobną pracę do ślimaka zawartego w uchu – identyfikuje jakie częstotliwości są obecnie w ramce.

 

AD.3 Ponieważ nasz periodogram zawiera wiele niepotrzebnych informacji z punktu widzenia rozpoznawania mowy stosujemy bank filtrów melowych,który mówi nam dokładnie w jakich odstępach umieścić filtry i jakiej powinny być szerokości by najlepiej oddać właściwości ludzkiego słuchu. Standardowo używa się 20-40 filtrów w banku. Następnie bierzemy zawartości pojedynczych fragmentów energi powstach po przemnożeniu przez poszczególe banki i sumujemy je w celu uzyskania informacji ile energi jest zawartej w poszczególnych regionach częstotliwości

 

 

AD.4 Gdy otrzymamy energie banku filtrów, oliczamy ich logarytm w związku z właściwościami ludzkiego słuchu (głośność postrzegamy nieliniowo), a co ważniejsze zasotosowanie logarytm upozwala użyć Cepstralnej Średniej Odemowania (? cepstral mean substraction)

 

AD.5 Ostatnim wyliczeniem jest przeprowadznie DCT na logarytmie energii banku filtrów. Przeprowadzamy ją z dwóch powodów. Pierwszym jest korelacja pomiedzy bankami w wyniku częściowego nakładania ich na siebie nawzajem. DCT dekoreluje energie co znaczy, że Diagonalna Matryca Kowariancji  może być użyta by wymodelować cechy w klasyfikatorze HMM(Ukryte Modele Markowa)

AD.6 Tylko 12 z 26 współczynników DCT zachowujemy (ponieważ standardowo używa się 26 filtrów w banku) w związku z faktem, że wyższe współczynniki DCT reprezentują szybkie zmiany w energiach banku filtrów i źle wpływają na wydajność algorytmu rozpoznawania mowy.

 

Współczynniki Delta zwiększenie wydajności Automatycznego Rozpoznawania Mowy (ASR)Znane również jako współczynniki różniczkowe i przyśpieszenia. W herystycznym podejściu zrekomensowania warunkowego założenia niezależności wykonywanego przez HMM, pierwszej kolejności (delta) i drugiej kolejności (delta-delta)współczynniki regresji są często dołączane do funkcji MFCC. Zawierają informację o trajektoriach wspołczynników MFCC zawartą w dynamice. Zwiększają wydajność ASR całkiem sporo. Dodatkowe współczynniki są dołączane do istniejących w skutek czego otrzymujemy dwukrotnie dłuższy wektor.

 

Źródła:

 

  • „Deep Neural Network acoustic models for ASR” by Abdel-rahman Mohamed

 

  • http://www.practicalcryptography.com/miscellaneous/machine-learning/guide-mel-frequency-cepstral-coefficients-mfccs/#eqn1