0

我尝试使用 voxforge 模型运行 julius asr,但收到以下错误消息:

Error: voca_load_htkdict: the line content was: DECORATE [DECORATE] d eh k er ey t sp
Error: voca_load_htkdict: line 3118: triphone "ax-d+sp" not found
Error: voca_load_htkdict: line 3118: triphone "d-sp+*" or biphone "d-sp" not found
Error: voca_load_htkdict: the line content was: DECORATED [DECORATED] d eh k er ey dx ax d sp
Error: voca_load_htkdict: line 3119: triphone "iy-s+sp" not found
Error: voca_load_htkdict: line 3119: triphone "s-sp+*" or biphone "s-sp" not found
Error: voca_load_htkdict: the line content was: DECREASE [DECREASE] d ix k r iy s sp
Error: voca_load_htkdict: line 3120: triphone "ax-z+sp" not found
Error: voca_load_htkdict: line 3120: triphone "z-sp+*" or biphone "z-sp" not found
Error: voca_load_htkdict: the line content was: DECREASES [DECREASES] d ix k r iy s ax z sp
Error: voca_load_htkdict: line 3121: triphone "ix-ng+sp" not found
Error: voca_load_htkdict: line 3121: triphone "ng-sp+*" or biphone "ng-sp" not found
Error: voca_load_htkdict: the line content was: DECREASING [DECREASING] d ix k r iy s ix ng sp
Error: voca_load_htkdict: line 3122: triphone "r-iy+sp" not found
Error: voca_load_htkdict: line 3122: triphone "iy-sp+*" or biphone "iy-sp" not found

依此类推(错误很长)

4

2 回答 2

4

错误原因:

当您的字典包含未在声学模型中训练的单词时,julius optput 这些消息,因为“voca_load_htkdict.c”试图将 dict 文件中的三音素与声学模型中的三音素列表相匹配,所以当它找不到它时,它显示此错误并停止程序。

可能的错误解决方案:

  1. 启用 -forcedict 选项或取消注释它的 jconf 文件以跳过字典中的错误单词并强制运行。或者..
  2. 将“未找到的三音素”映射到 hmmlist 文件“tiedlist”中最接近的物理三音素。例如: b-ey+t v-eh+t 第一列是 triphone 的名称(从您的字典中生成),第二列是您的 AM 中实际定义的 HMM 的名称。但是如果“未找到的三音素”很少而不是太多,则可以完成此解决方案。

  3. 最好的解决方案是不要在您的 dict 文件中包含不在 AM 中的单词注意,前两个解决方案仅用于测试 julius,因为对于生产或商业项目,您必须使用相同的语料库训练声学模型和语言模型。

于 2012-07-13T05:34:41.807 回答
2

简而言之:您的字典文件中每个单词的发音末尾都有“sp”音素。删除它们,它会工作

于 2013-08-07T05:53:03.020 回答