我想使用mozilla deepspeech将语音转换为文本。但是输出确实很糟糕。
我已经下载了mozilla的训练有素的模型,然后我所做的就是这样:
404
现在,输出距离我的音频样本不远了。我该怎么做才能提高准确性?
答案 0 :(得分:0)
我认为是因为您不包含任何LanguageModel。
预训练模型基本上只是声学模型,只会将音频转录成可能没有意义的相似发音文本。
如果将声学模型与语言模型(LM)结合使用,则可能会获得更好的结果。
在您的代码示例中,我可以看到参数LM_WEIGHT
,但看不到LM本身的任何防御。
我不确定要使用哪种语言集成Deepspeech,但这是node-js的示例。这是LM集成的部分
const LM_ALPHA = 0.75;
const LM_BETA = 1.85;
let lmPath = './models/lm.binary';
let triePath = './models/trie';
model.enableDecoderWithLM(lmPath, triePath, LM_ALPHA, LM_BETA);
如果我没记错的话,LM&Trie文件包含在预先训练的下载ZIP中
wget https://github.com/mozilla/DeepSpeech/releases/download/v0.5.1/deepspeech-0.5.1-models.tar.gz
否则,您还可以创建自己的语言模型,如果只需要模型来识别特定的单词,这将很有意义。