To kontynuacja dyskusji tutaj . Chciałbym tam skomentować, ale nie mam 50 powtórzeń, więc zadaję nowe pytanie.
Oto, w jaki sposób rozumiem krok DCT w procesie obliczania MFCC: Uzasadnieniem tego jest oddzielenie korelacji w logarytmicznych wielkościach widmowych (od banku filtrów) z powodu nakładania się filtrów. Zasadniczo DCT wygładza reprezentację widma podaną przez te logarytmiczne wielkości widmowe.
Czy słusznie byłoby powiedzieć, że niebieska linia na poniższym obrazku reprezentuje widmo reprezentowane przez wektor wielkości logarytmiczno-widmowych, a czerwona linia to ten wektor, który kiedyś był DCT?
Odpowiedzi:
Zacznę od początku. Standardowy sposób obliczania cepstrum jest następujący:
W przypadku współczynników MFCC sprawa jest nieco inna, ale wciąż podobna.
Po wstępnym uwydatnieniu i okienkowaniu obliczasz DFT sygnału i stosujesz zestaw filtrów nakładających się trójkątnych filtrów, oddzielonych w skali mel (chociaż w niektórych przypadkach skala liniowa jest lepsza niż mel):
W odniesieniu do definicji cepstrum reprezentowałeś teraz obwiednię widma (widmo zredukowane) w skali częstotliwości mel. Jeśli to reprezentujesz, zobaczysz, że to trochę przypomina twoje pierwotne spektrum sygnału.
Następnym krokiem jest obliczenie logarytmu współczynników uzyskanych powyżej. Wynika to z faktu, że cepstrum ma być homomorficzną transformacją, która oddziela sygnał od odpowiedzi impulsowej dróg głosowych itp. Jak?
Oryginalny sygnał mowys(t) jest w większości splecione z odpowiedzią impulsową h(t) układu głosowego:
Splot w dziedzinie częstotliwości jest zwielokrotnieniem widm:
Można je podzielić na dwie części, w oparciu o następującą właściwość:log( a ⋅ b ) = log( a ) + log( b ) .
Oczekujemy również, że odpowiedź impulsowa nie zmienia się w czasie, dlatego można ją łatwo usunąć, odejmując średnią. Teraz rozumiecie, dlaczego bierzemy logarytmy energii naszego zespołu.
Ostatnim krokiem w definicji cepstrum będzie odwrotna transformata Fourierafa- 1 . Problem polega na tym, że mamy tylko nasze log-energie, brak informacji o fazie, więc po zastosowaniu
ifft
otrzymujemy współczynniki o złożonej wartości - niezbyt eleganckie, aby cały ten wysiłek był zwartą reprezentacją. Chociaż możemy wziąć dyskretną transformację kosinusową, która jest „uproszczoną” wersją FT i uzyskać wartościowe współczynniki! Tę procedurę można zwizualizować jako dopasowanie cosinusoidów do naszych współczynników energii logarytmicznej. Może pamiętasz, że cepstrum jest również nazywane „spektrum spektrum”? To jest właśnie ten krok - szukamy jakiejkolwiek częstotliwości w naszych współczynnikach obwiedni energii logarytmicznej.Teraz widzisz, że teraz trudno zrozumieć, jak wyglądało oryginalne spektrum. Dodatkowo zwykle bierzemy tylko pierwsze 12 MFCC, ponieważ wyższe opisują szybkie zmiany energii logarytmicznej, co zwykle pogarsza wskaźnik rozpoznawania. Powody podjęcia DCT były następujące:
Pierwotnie musisz wykonać IFFT, ale łatwiej jest uzyskać rzeczywiste współczynniki z DCT. Ponadto nie mamy już pełnego spektrum (wszystkie przedziały częstotliwości), ale współczynniki energii w bankach filtrów mel, dlatego użycie IFFT jest nieco przesadne.
Na pierwszym rysunku widać, że banki filtrów nakładają się, więc energia z sąsiednich jest rozdzielana między dwa - DCT pozwala na ich korelację. Pamiętaj, że jest to dobra właściwość na przykład w przypadku modeli mieszanki Gaussa, w których można użyć diagonalnych macierzy kowariancji (brak korelacji między innymi współczynnikami), zamiast pełnych (wszystkie współczynniki są skorelowane) - to bardzo upraszcza.
Innym sposobem dekorelacji współczynników częstotliwości mel byłby PCA (Principal Component Analysis), technika stosowana wyłącznie w tym celu. Na nasze szczęście udowodniono, że DCT jest bardzo dobrym przybliżeniem PCA, jeśli chodzi o sygnały korelujące, stąd kolejna zaleta stosowania dyskretnej transformacji kosinusowej.
Trochę literatury:
źródło
Więcej niż wygładzanie DCT zmniejsza liczbę wymiarów potrzebnych do przedstawienia widma. DCT jest dobre dla redukcji wymiarowości, ponieważ ma tendencję do zagęszczania większości energii widma w pierwszych kilku współczynnikach.
źródło
To jest niepoprawne. Istnieje korelacja między logarytmicznymi wielkościami widmowymi nie tylko dlatego, że się pokrywają, ale także dlatego, że żadna sekwencja liczb nie reprezentuje „znaczącej” (jak w przypadku naturalnej mowy i dźwięku) serii logarytmicznej wielkości widmowej. „znaczące” logarytmiczne wielkości widmowe wydają się być raczej gładkie, z ogólnym spadkiem energii na wyższych częstotliwościach itp. Można powiedzieć, że wymiar przestrzeni wszystkich „znaczących” logarytmicznych wektorów spektralnych jest mniejszy niż 40 lub dowolna liczba używanych pasm; a DCT można postrzegać jako redukcję wymiarów w celu mapowania 40-kanałowych danych na tej mniejszej przestrzeni.
DCT nie wygładza. Wygładzanie jest widoczne podczas rekonstrukcji z danych DCT - wygładzenie wynika z utraty informacji przez DCT i następującego po nim skrótu współczynnika.
Ale współczynniki MFCC nie przechowują wygładzonego widma - przechowuje sekwencję nieskorelowanych współczynników DCT.
źródło