I have seen different formulations of how to calculate delta MFCCs. In general, I want to be consistent in such a way that if I have other features to look at other than MFCCs, the way I would calculate their deltas would be the same.

According to this link, HTK supported different ways of looking at how to calculate MFCCs. One was using a regression formula. Another is just doing a simple first order difference. Another listed on that page is doing a modified kind of simple difference. Another link also showcases the regression formula.

  • Which one of these is the best way to go?
  • In what situations might one outperform the other? I can see that doing first order differences can be easily done in code and doesn't require end frame replication, but many sources I've been reading for MFCCs at least do not use the first order difference.
  • For other types of delta features that arent MFCCs, is that also the case?

The way you compute MFCCs and derivatives has little-to-no influence on the final result, so just pick one and go ahead. Although when applied to speech recognition and similar problems the same algorithm should be used for training and decoding. Thus if you use a pre-trained model you have to know how features for its training were computed. If not sure, you can always take a look at real-world examples - CMU Sphinx and Kaldi.


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.