Pattern matching 使用DTW设置处理MFFC中的异常值

Pattern matching 使用DTW设置处理MFFC中的异常值,pattern-matching,speech-recognition,mfcc,Pattern Matching,Speech Recognition,Mfcc,我有一个小型的命令识别系统,用户首先记录他的命令,然后系统尝试识别它们。前端的特征向量是MFCC的系数。后端使用DTW对齐这些特征向量并输出分数(0->命令相等)进行识别。此设置的问题在于将命令(用户录制的命令)与其他单词区分开来。选择一个最大分数作为识别命令的阈值不会给出好的结果。我查找了LDA和PCA,目的是将记录的特征投影到不同的特征空间,在那里它们可以更加分离。每个记录的命令都是一个类,该类具有来自与该命令帧相关联的前端的特征向量样本。根据这一点,我计算了LDA所需的转换,并将转换应用于

我有一个小型的命令识别系统,用户首先记录他的命令,然后系统尝试识别它们。前端的特征向量是MFCC的系数。后端使用DTW对齐这些特征向量并输出分数(0->命令相等)进行识别。此设置的问题在于将命令(用户录制的命令)与其他单词区分开来。选择一个最大分数作为识别命令的阈值不会给出好的结果。我查找了LDA和PCA,目的是将记录的特征投影到不同的特征空间,在那里它们可以更加分离。每个记录的命令都是一个类,该类具有来自与该命令帧相关联的前端的特征向量样本。根据这一点,我计算了LDA所需的转换,并将转换应用于得到的每一组MFCC系数。这并没有让我区分录制的命令和录制的命令

我的问题是:

  • 应用LDA的方法是否错误
  • 是否有其他方法更适合我的设置(MFCC+DTW)
非常感谢您的帮助或指导

多谢各位

此设置的问题在于区分未录制的命令

您可能希望表达得更好,因为您希望将要查找的关键字与所有其他可能的单词分开。不清楚你说的“没有记录”是什么意思

应用LDA的方法是否错误

这没有错,这毫无意义。主成分分析优化了不同的性质,但决不能改善分离效果

选择一个最大分数作为识别命令的阈值不会给出好的结果

这种方法不是最好的方法,但应该相对有效。这是多年来证明的。您可能只是在它的实现或测试中犯了一个错误,或者存在其他一些错误。我建议你再去看看


唯一需要知道的是,阈值必须依赖于模板关键字。所以对于不同的模板关键字,阈值必须是不同的。单个阈值不起作用。

感谢您的回复,我尝试为每个关键字使用阈值,方法是在该关键字和其他关键字之间选择最大分数。在噪声条件下,它不会产生良好的效果。我还尝试为每个关键字选取通过将该关键字(在干净条件下)与其余关键字匹配而获得的最大分数,只有后面的关键字在噪声条件下才会出现。虽然在现实场景中不可行,但它可以提供良好的结果。有什么方法可以利用这些知识吗?