Żeby było jasne - ta właściwość nie jest fundamentalna, ale ważna . Jest to podstawowa różnica, jeśli chodzi o zastosowanie DCT zamiast DFT do obliczania widma.
Dlaczego dokonujemy normalizacji średniej cepstralnej
W rozpoznawaniu głośników chcemy usunąć wszelkie efekty kanałów (reakcja impulsowa ścieżki głosowej, ścieżki audio, pomieszczenia itp.). Pod warunkiem, że sygnałem wejściowym jest a odpowiedź impulsowa kanału jest podawana przez h [ n ]x[n]h[n] , zarejestrowany sygnał jest liniową splotą obu:
y[n]=x[n]⋆h[n]
Biorąc transformację Fouriera otrzymujemy:
Y[f]=X[f]⋅H[f]
ze względu na właściwość równoważności splotu i mnożenia FT - dlatego jest to tak ważna właściwość FFT na tym etapie .
Kolejnym krokiem w obliczeniach cepstrum jest przyjęcie logarytmu widma:
Y[q]=logY[f]=log(X[f]⋅H[f])=X[q]+H[q]
log(ab)=loga+logbq jest kwerendą . Jak można zauważyć, przyjmując cepstrum splotu w dziedzinie czasu, uzyskujemy dodanie do domeny cepstral (quefrency).
Co to jest normalizacja cepstralna?
Teraz wiemy, że w dziedzinie cepstralnej wszelkie zniekształcenia splotowe są reprezentowane przez dodawanie. Załóżmy, że wszystkie z nich są nieruchome (co jest silnym założeniem, ponieważ drogi głosowe i odpowiedź kanału nie zmieniają się), a stacjonarna część mowy jest znikoma. Możemy zaobserwować, że dla każdej i-tej ramki prawdą jest:
Yi[q]=H[q]+Xi[q]
Biorąc średnią z wszystkich klatek, które otrzymujemy
1N∑iYi[q]=H[q]+1N∑iXi[q]
Określanie różnicy:
Ri[q]=Yi[q]−1N∑jYj[q]=H[q]+Xi[q]−(H[q]+1N∑jXj[q])=Xi[q]−1N∑jXj[q]
W efekcie otrzymujemy sygnał z usuniętymi zniekształceniami kanałów. Ułożenie wszystkich powyższych równań w prostym języku angielskim:
- Oblicz cepstrum
- Odejmij średnią z każdego współczynnika
- Opcjonalnie podziel przez wariancję, aby wykonać normalizację średniej cepstralnej w przeciwieństwie do odejmowania.
Czy konieczna jest normalizacja średniej cepstralnej?
Nie jest to obowiązkowe, zwłaszcza gdy próbujesz rozpoznać jednego mówcę w jednym środowisku. W rzeczywistości może nawet pogorszyć wyniki, ponieważ jest podatny na błędy wynikające z szumu addytywnego:
y[n]=x[n]⋆h[n]+w[n]
Y[f]=X[f]⋅H[f]+W[f]
logY[f]=log[X[f](H[f]+W[f]X[f])]=logX[f]+log(H[f]+W[f]X[f])
In poor SNR conditions marked term can overtake the estimation.
Although when CMS is performed, you can usually gain few extra percent. If you add to that performance gain from derivatives of coefficients then you get a real boost of your recognition rate. The final decision is up to you, especially that there are plenty of other methods used for the improvement of speech recognition systems.