语言模型和Sphinx4

时间:2014-08-25 21:32:27

标签: speech-recognition sphinx4

我是Sphinx的新手,我正在尝试编写一个程序,该程序将识别音频文件中只包含一个单词的单词然后对置信度进行评分。对于像这样的项目,语言模型似乎并不是必需的,看作我只是想要识别一个单词,但似乎Sphinx需要语言模型来做任何事情。这样的事情有可能吗?

1 个答案:

答案 0 :(得分:1)

不幸的是,Sphinx(以及任何其他ASR系统)需要语言模型来做任何事情。原因是语言模型用于语音维特比解码,并且需要为许多文本可能性分配分数。

我假设您使用的音频文件可能包含一组可能的单词之一(因为我不确定如果音频文件都包含相同的单词,那将是什么意思......)。在这种情况下,您可以使用语法而不是统计语言模型。一般而言,语法适用于小词汇量任务。

Sphinx4 JSGFGrammar Documentation

要获得置信度值,请参阅ConfidenceScorer类的文档,该类可以从识别器中对结果进行评分。

ConfidenceScorer documentation with example

如果音频文件可能是许多未知单词中的一个,并且您只想识别您关心的单个单词(即您不知道音频文件中的其他单词,或者它是足够大的设置,你不想指定你的语法中的所有单词),那么你有一个非常困难的任务。老实说,我在语音识别方面工作过,而且我不完全确定如何做到这一点......你可以试着指定一堆具有不同语音特征的其他单词(即不同的音节长度,不同声音的类型,也许它会很好地工作。如果是这种情况让我知道,我可以提出一些其他可能的解决方案,但我的猜测是你的任务是从一小部分中识别出一个单词。