Вы можете думать о DCT как о шаге сжатия. Обычно с MFCC вы берете DCT, а затем сохраняете только первые несколько коэффициентов. Это в основном та же самая причина, по которой DCT используется в сжатии JPEG. DCT выбираются потому, что их граничные условия лучше работают на этих типах сигналов.
Давайте сопоставим DCT с преобразованием Фурье. Преобразование Фурье состоит из синусоид, имеющих целое число циклов. Это означает, что все базисные функции Фурье начинаются и заканчиваются в одном и том же значении - они не очень хорошо представляют сигналы, которые начинаются и заканчиваются в разных значениях. Помните, что преобразование Фурье предполагает периодическое расширение: если вы представляете свой сигнал на листе бумаги, преобразование Фурье хочет свернуть этот лист в цилиндр так, чтобы левая и правая стороны встретились.
Подумайте о спектре, который имеет форму приблизительно линии с отрицательным наклоном (что довольно типично). Преобразование Фурье должно будет использовать множество различных коэффициентов, чтобы соответствовать этой форме. С другой стороны, у DCT есть косинусы с полуцелыми числами циклов. Например, есть базовая функция DCT, которая выглядит неопределенно как эта линия с отрицательным наклоном. Он не предполагает продления периода (вместо этого - четное продление), поэтому он лучше справится с подгонкой этой формы.
Итак, давайте это вместе. Как только вы вычислили спектр Mel-частот, у вас есть представление о спектре, который чувствителен аналогично тому, как работает человеческий слух. Некоторые аспекты этой формы более актуальны, чем другие. Как правило, более крупная, более всеобъемлющая форма спектра более важна, чем шумные мелкие детали в спектре. Вы можете вообразить, что рисуете плавную линию, следуя за спектральной формой, и что гладкая линия, которую вы рисуете, может рассказать вам примерно столько же о сигнале.
Когда вы берете DCT и отбрасываете более высокие коэффициенты, вы принимаете эту спектральную форму и сохраняете только те части, которые более важны для представления этой гладкой формы. Если бы вы использовали преобразование Фурье, это не помогло бы сохранить важную информацию в низких коэффициентах.
Если вы подумаете о подаче MFCC как элементов алгоритма машинного обучения, эти коэффициенты более низкого порядка будут иметь хорошие характеристики, поскольку они представляют некоторые простые аспекты формы спектра, в то время как коэффициенты более высокого порядка, которые вы отбрасываете, являются более шумоподобными. и не важно тренироваться. Кроме того, обучение по самим величинам спектра Mel, вероятно, будет не таким хорошим, потому что конкретная амплитуда на разных частотах менее важна, чем общая форма спектра.