精通
英语
和
开源
,
擅长
开发
与
培训
,
胸怀四海
第一信赖
调整语音识别的准确性
语音识别的准确性并不总是很好。 
                首先,重要的是要了解您的准确度是否低于预期,或者一般是否非常低。如果精度一般非常低,则很可能是错误配置了解码器。如果低于预期,您可以采用各种方法来改进它。 
                您应该做的第一件事是收集测试样本数据库并测量识别准确性。您需要将话语转储到wav文件中,编写参考文本并使用解码器对其进行解码。然后使用Sphinxtrain中的工具word_align.pl计算字错误率(WER)。测试数据库的大小取决于准确性,但通常只需30分钟的转录音频就可以可靠地测试识别器的准确性。 
                只有拥有测试数据库,才能继续优化识别准确性。 
  准确性差的原因 
              准确性差的主要原因是: 
在此处查找更多信息:
测试数据库设置 
                要测试识别,您需要使用所需的参数配置解码,特别是,您需要具有语言模型<your.lm>。有关更多详细信息,请参阅构建语言模型页面。 
                创建一个fileids文件test.fileids: 
                test1
                test2
                创建一个转录文件test.transcription: 
                some text (test1)
                some text (test2)
                将音频文件放在wav文件夹中。确保这些文件具有适当的格式和采样率。 
                └─ wav
                ├─ test1.wav
                └─ test2.wav
  运行测试 
                现在,让我们运行解码器: 
                pocketsphinx_batch \
                -adcin yes \
                -cepdir wav \
                -cepext .wav \
                -ctl test.fileids  \
                -lm `<your.lm>` \    # for example  en-us.lm.bin from pocketsphinx 
                -dict `<your.dic>` \ # for  example cmudict-en-us.dict from pocketsphinx 
                -hmm `<your_hmm>` \  # for example en-us 
                -hyp test.hyp
word_align.pl test.transcription test.hyp
                该word_align.pl脚本是sphinxtrain发行版的一部分。 
                -samprate 8000如果要解码8 kHz文件,请务必将选项添加到上述命令中! 
                word-align.pl来自Sphinxtrain 的脚本将向您报告确切的错误率,您可以使用它来确定适应性是否适合您。它看起来像这样: 
                TOTAL Words: 773 Correct: 669 Errors: 121
                TOTAL Percent correct = 86.55% Error = 15.65% Accuracy =  84.35%
                TOTAL Insertions: 17 Deletions: 11 Substitutions: 93
                要查看解码的速度,请检查pocketsphinx日志,它应如下所示: 
                INFO: batch.c(761): 2484510: 9.09 seconds speech, 0.25  seconds CPU, 0.25 seconds wall
                INFO: batch.c(763): 2484510: 0.03 xRT (CPU), 0.03 xRT  (elapsed)
                具有0.03 xRT解码速度(“记录时间的0.03倍”)。