为什么 Mel-filterbank 能量在使用 CNN 的语音命令识别方面优于 MFCC?

Abd*_*der 6 speech-recognition feature-extraction mfcc deep-learning conv-neural-network

上个月,一位名叫@jojek 的用户在评论中告诉我以下建议:

我敢打赌,如果有足够的数据,关于 Mel 能量的 CNN 将胜过 MFCC。你应该试试看。在 Mel 谱图上进行卷积比在去相关系数上进行卷积更有意义。

是的,我在 Mel-filterbank 能量上尝试了 CNN,它的表现优于 MFCC,但我仍然不知道原因!

尽管许多教程,例如Tensorflow 的这个教程,都鼓励将 MFCC 用于此类应用程序:

由于人耳对某些频率比其他频率更敏感,因此语音识别的传统做法是对这种表示进行进一步处理,以将其转换为一组 Mel-Frequency Cepstral Coefficients,或简称 MFCC。

另外,我想知道 Mel-Filterbank 的能量是否仅在 CNN 上优于 MFCC,或者对于 LSTM、DNN 等也是如此,如果您添加参考,我将不胜感激。


更新 1

虽然我对@Nikolay 的回答的评论包含相关细节,但我将在此处添加:

如果我错了,请纠正我,因为在这种情况下,对 Mel 滤波器组能量应用 DCT 等效于 IDFT,在我看来,当我们保留 2-13(包括)倒谱系数并丢弃其余部分时,是相当于低时间提升以隔离声道分量,并丢弃源分量(例如具有 F0 尖峰)。

那么,为什么我要使用所有 40 个 MFCC,因为我关心的语音命令识别模型只是声道组件?

更新 2

另一个观点(链接)是:

请注意,仅保留了 26 个 DCT 系数中的 12 个。这是因为较高的 DCT 系数代表滤波器组能量的快速变化,而事实证明这些快速变化实际上会降低ASR 性能,因此我们通过删除它们获得了小幅改进。

参考:

https://tspace.library.utoronto.ca/bitstream/1807/44123/1/Mohamed_Abdel-rahman_201406_PhD_thesis.pdf

Nik*_*rev 6

问题是 MFCC 是通过简单的矩阵乘法和降维从梅尔能量计算出来的。矩阵乘法不会影响任何事情,因为任何其他神经网络之后都会应用许多其他操作。

重要的是尺寸的减少,而不是 40 mel 能量,你取 13 mel 系数,其余的都去掉。这会降低 CNN、DNN 或其他任何东西的准确性。

但是,如果您不放弃并仍然使用 40 MFCC,您可以获得与梅尔能量相同的准确度,甚至更高的准确度。

因此,MEL 或 MFCC 并不重要,重要的是您在特征中保留了多少系数。