I know that the inverse Fourier transform of the power spectral density $P(k)$ gives the autocorrelation sequence $A(n)$ (By Wiener-Khinchin theorem):

$${\cal F}^{-1}\left\{P(k)\right\}=A(n)$$

And if we replace $P(k)$ by its log value, we get the cepstrum sequence $C(n)$:

$${\cal F}^{-1}\left\{\log_{10}P(k)\right\} = C(n)$$

My questions are:

  1. What's the reasoning behind using log value?
  2. Why does that make a difference?
  3. Why isn't the autocorrelation sequence used in MFCC, LPCC, PLPCC, etc.. instead of the cepstrum?

Usually in speech signal processing cepstrum is used to represent low and high frequency components , which are multiplied with each other(in time domain its a slowly varying signal convolved with high frequency signal).

What's the reasoning behind using log value?

logarithm is taken to remove the multiplicative effect and convert it to addition of two components. $$\log(a\cdot b) = \log(a) + \log(b)$$

Why does that make a difference?

Now the two components are in addition form.

Why isn't the autocorrelation sequence used in MFCC, LPCC, PLPCC, etc.. instead of the cepstrum?

Same reason, because we need to remove multiplicative effect of slowly varying component and fast varying component.

In speech signal processing slow varying component represents different phonemes and thus act as feature vectors for many applications(ex ASR). hence we need to remove the effect of fast varying component to isolate slow varying component.


Regarding "Why log?", in addition to the simpler log-domain math as @arpit-jain already discussed another domain-specific motivation is psychoacoustics.

Human perception of audio is logarithmic. More precisely, ear drums are sensitive to variations in the sound pressure level (SPL) on the order of a few micropascals to 1+ bar, so SPL is also measured logarithmically.

Similarly, frequency perception is also ~logarithmic, this is the motivation for various perceptual scales like Mel (your 'M' in MFCC) and Bark.

To tie it all together, when one is developing feature extraction algorithms (MFCC, LPCC, etc), or generally doing feature engineering, we want to develop features that make sense along perceptual dimensions and working in the log domain is very important for work in speech recognition, audio codecs, noise reduction, sound {localization, virutualization, enhancement}

  • $\begingroup$ I'm not convinced that the (human's) perception of acoustic signal is the reason to use log. MFCCs and other cepstral coefficients are usually input for another process (HMM, GMM, NN,...), where the more power of differentiation the better (taking the log will reduce the difference between high and low signal from orders of magnitude to linear - no good). $\endgroup$
    – Max
    Dec 22 '16 at 21:32
  • 1
    $\begingroup$ I'd be curious to read any literature on GMM-HMM (or HMM-DNN) ASR results with MFCC-like features but WITHOUT the log power spectrum, nor the nonlinear (mel) scale of frequency. Please send over some links. Also have a look at this paper (state of the art in onset detection) and notice the nature of the {filtered spectrogram, frequency scale}. phenicx.upf.edu/system/files/publications/Boeck_DAFx-13.pdf Cheers. $\endgroup$ Dec 23 '16 at 1:38
  • 1
    $\begingroup$ I just had a look at some literatures - the log is definitely helpful because it reduces the dynamic range, as you said. But the reason why reducing the dynamic range helps is not because of our perception of audio signal, but rather because it makes the difference in magnitude of the fundamental and the harmonics less enormous and thus the correlation more pronounced. Anyway, thanks for your answer. $\endgroup$
    – Max
    Dec 23 '16 at 1:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.