在pocketsphinx降低识别准确度之前降低噪音

时间:2014-09-03 09:46:33

标签: speech-recognition noise noise-reduction pocketsphinx-android

我正在努力提高pocketphinx在嘈杂环境中的识别准确度。但是,用户可能会在可变环境中使用该应用程序。因此,我不想做有关噪音的训练。

我的问题是,在将语音信号输入到pocketsphinx之前降噪是否必然会降低识别准确度?

如果是,降噪后需要保留哪些语音功能?目前我观察到如果我使用降噪,WER从~40%(自由形式语言)上升到~60%。

只是补充一下,降噪后,语音听起来确实听起来更好。

Pocketsphinx argfile:

-lm   lm_giga_64k_vp_3gram.DMP
-dict lm_giga_64k_vp.sphinx.dic 
-hmm  voxforge_en_sphinx.cd_cont_5000

这里的想法是通过启用降噪来证明语音识别准确度的提高,直观地说,除非降噪算法完全弄乱了信号的频谱内容,否则理想情况下应该这样做。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:3)

  

目前我观察到如果我使用降噪,WER从约40%(自由形式语言)上升到约60%。

这些是非常糟糕的费率,因为:

1)您使用的是过时的模型

2)你使用的是过时的pocketphinx,没有降噪。

外部降噪通常会降低语音识别的准确性,幸运的是最新的pocketphinx拥有自己的降噪模块,使其对噪音非常稳健。你只需要更新。为了获得最佳效果,您需要:

1)从http://github.com/cmusphinx

下载并使用最新的sphinxbase和pocketsphinx

2)下载最新的声学和语言模型:

http://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/US%20English%20Generic%20Acoustic%20Model/en-us.tar.gz/download

http://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/US%20English%20Generic%20Language%20Model/cmusphinx-5.0-en-us.lm.dmp/download

这将允许您设置适当的基线。要尝试打开和关闭降噪功能,可以使用命令行配置选项:

-remove_noise yes/no

有关如何降低精度(包括噪声稳健性)的进一步建议,您应该更好地提供要识别的音频的测试样本。详见:

http://cmusphinx.sourceforge.net/wiki/faq#qwhy_my_accuracy_is_poor