【问题标题】:Using MFCC's for voice recognition使用 MFCC 进行语音识别
【发布时间】:2019-05-05 05:27:37
【问题描述】:

我目前正在结合使用傅立叶变换和 Keras 进行语音识别(说话人识别)。我听说 MFCC 是语音识别的更好选择,但我不知道如何使用它。

我在 python (3) 中使用 librosa 来提取 20 个 MFCC 特征。我的问题是:我应该使用哪些 MFCC 功能来识别说话人?

除此之外,我不确定如何实现这些功能。我要做的是获得必要的特征并为神经网络制作一个长向量输入。但是,也可以显示颜色,那么图像识别也可以,还是更针对语音,而不是说话人识别?

简而言之,我不确定应该从哪里开始,因为我对图像识别不是很有经验,也不知道从哪里开始。

提前致谢!!

【问题讨论】:

    标签: python keras neural-network voice-recognition mfcc


    【解决方案1】:

    我的问题是:我应该使用哪些 MFCC 功能来识别说话者?

    我会说使用所有这些。从技术上讲,MFCC 特征是从不同的滤波器组输出的。很难先验地说其中哪些有用。

    除此之外,我不确定如何实现这些功能。我要做的是获取必要的特征并为神经网络输入一个长向量。

    实际上,当您为 N 个样本提取 MFCC 时,您会得到一个类似 N x T x 20 T 的数组,表示经过 MFCC 处理后的音频信号中的帧数。我会建议使用Sequence classification with LSTM。这将产生更好的结果。

    【讨论】:

    • 感谢您的回复,我会查看您提供的链接,看看使用它是否会产生更好的结果(到目前为止,我一直在使用傅立叶变换)!
    【解决方案2】:

    除此之外,我不确定如何实现这些功能。 我要做的是获得必要的功能并制作一个长 神经网络的向量输入。

    对于每个样本,您必须有一个 MFCC 的 2D 矩阵,例如 N x T X no_mfccs(在您的情况下为 no_mfccs=20);为了使其成为一个向量,各种研究人员采用均值、var、IQR等统计数据来降低特征维数。有些人还使用多元回归对其进行建模,有些人将其拟合为高斯混合模型。这取决于下一阶段。在您的情况下,您可以使用统计信息转换为单个向量

    或者,正如 Parthosarathi 所说,您可以使用 LSTM 跨时间框架保存顺序信息。

    但是,也可以显示颜色,所以图像识别也可以,或者这更针对语音,而不是说话人识别?

    我不建议你使用频谱图(图像)作为神经网络的特征向量,因为视觉图像和频谱图不会以相同的方式积累视觉对象和声音事件信息。

    当您将图像输入神经网络时,它假定图像的特征(像素值)具有相同的含义,无论其位置如何。但是在频谱图的情况下,特征的位置很重要。

    例如向上移动男性声音的频率可以将其含义从男人变为孩子。因此,2D CNN 提供的空间不变性对于这种形式的数据可能表现不佳。 要了解更多信息,请参阅:What’s wrong with CNNs and spectrograms for audio processing?

    【讨论】:

      【解决方案3】:

      您可以使用具有密集层/多层感知器的 MFCC,但假设您有足够的训练数据,则 mel 谱图上的卷积神经网络可能会表现更好。

      【讨论】:

        猜你喜欢
        • 2016-08-20
        • 1970-01-01
        • 1970-01-01
        • 2013-02-16
        • 2018-01-27
        • 2018-10-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多