锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / kaldi开发技术服务 / 三音素的WER比单音素高

服务方向

人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发

联系方式

固话:0371-63888850
音素:138-0381-0136
Q Q:396806883
微信:ryysoft

三音素的WER比单音素高


重点看红色的字!

In my an experiment, Triphone's WER is bigger than monophone's!在我的实验中,三音音素的WER大于单音音素的WER!

feiteng@server:~/Kaldi/egs/CASR/s5b$ bash RESULTS test
%WER 14.75 [ 3339 / 22642, 374 ins, 334 del, 2631 sub ] exp/mono/decode_test/wer_20
%WER 24.57 [ 5563 / 22642, 984 ins, 239 del, 4340 sub ] exp/tri1/decode_test/wer_20
When Training Triphone model, there are many WARNINGs The script:当训练Triphone模型时,有许多警告脚本:

echo ============================================================================
echo " tri1 : Deltas + Delta-Deltas Training & Decoding "
echo ============================================================================
// Get alignments from monophone system.
steps/align_si.sh --boost-silence 1.25 --nj "$train_nj" --cmd "$train_cmd" \ data/train data/lang exp/mono exp/mono_ali

// Train tri1, which is deltas + delta-deltas, on train data.
steps/train_deltas.sh --cmd "$train_cmd" \ $numLeavesTri1 $numGaussTri1 data/train data/lang exp/mono_ali exp/tri1

utils/mkgraph.sh data/lang_test exp/tri1 exp/tri1/graph || exit 1;

// decode tri1
steps/decode.sh --config conf/decode.config --nj "$decode_nj" --cmd "$decode_cmd" \ exp/tri1/graph data/test exp/tri1/decode_test

output in Terminal:

============================================================================
tri1 : Deltas + Delta-Deltas Training & Decoding
============================================================================
steps/align_si.sh --boost-silence 1.25 --nj 7 --cmd run.pl data/train data/lang exp/mono exp/mono_ali
steps/align_si.sh: feature type is delta
steps/align_si.sh: aligning data in data/train using model from exp/mono, putting alignments in exp/mono_ali
steps/align_si.sh: done aligning data.
steps/train_deltas.sh --cmd run.pl 2500 15000 data/train data/lang exp/mono_ali exp/tri1
steps/train_deltas.sh: accumulating tree stats
steps/train_deltas.sh: getting questions for tree-building, via clustering
steps/train_deltas.sh: building the tree
WARNING (gmm-init-model:InitAmGmm():gmm-init-model.cc:55) Tree has pdf-id 137 with no stats; corresponding phone list: 550 551 552 553
WARNING (gmm-init-model:InitAmGmm():gmm-init-model.cc:55) Tree has pdf-id 138 with no stats; corresponding phone list: 554 555 556 557
WARNING (gmm-init-model:InitAmGmm():gmm-init-model.cc:55) Tree has pdf-id 139 with no stats; corresponding phone list: 558 559 560 561
WARNING (gmm-init-model:InitAmGmm():gmm-init-model.cc:55) Tree has pdf-id 140 with no stats; corresponding phone list: 562 563 564 565
WARNING (gmm-init-model:InitAmGmm():gmm-init-model.cc:55) Tree has pdf-id 141 with no stats; corresponding phone list: 566 567 568 569
WARNING (gmm-init-model:InitAmGmm():gmm-init-model.cc:55) Tree has pdf-id 142 with no stats; corresponding phone list: 570 571 572 573
WARNING (gmm-init-model:InitAmGmm():gmm-init-model.cc:55) Tree has pdf-id 143 with no stats; corresponding phone list: 574 575 576 577
WARNING (gmm-init-model:InitAmGmm():gmm-init-model.cc:55) Tree has pdf-id 144 with no stats; corresponding phone list: 578 579 580 581
This is a bad warning.
steps/train_deltas.sh: converting alignments from exp/mono_ali to use current tree
steps/train_deltas.sh: compiling graphs of transcripts
steps/train_deltas.sh: training pass 1
steps/train_deltas.sh: training pass 2
...
steps/train_deltas.sh: training pass 34
276 warnings in exp/tri1/log/update..log
8 warnings in exp/tri1/log/questions.log
15 warnings in exp/tri1/log/init_model.log
24 warnings in exp/tri1/log/align.
.*.log
1 warnings in exp/tri1/log/build_tree.log
steps/train_deltas.sh: Done training system with delta+delta-delta features in exp/tri1


Does the error happen when building the tree?How to solve this?建树时会发生错误吗?如何解决?
I'd say the log looks fine -- the "bad warnings" you see are fairly common. You should verify if the likelihood on the training data increases through the training.我想说日志看起来不错-您看到的“不良警告”非常普遍。您应该验证训练数据在训练中的似然性是否增加。
Usually, you need more triphone training steps, have a look on the recipes). On the observation that the tri1 stage has higher wer than monophone stage, i cannot comment. How big are the training set? Have you took the possibility of overtraining into account? (but the setting you used look sane to me).Also, there are more detailed logs in something like exp/tri1/log and exp/tri1/decode_test/log You should consult those as well to see if something bad has happened.通常,您需要更多的三音训练步骤,并查看方案)。观察到tri1阶段的功耗比单声道的更高,我无法发表评论。训练量有多大?您是否考虑了过度训练的可能性? (但是您使用的设置对我来说是理智的)。此外,在exp/tri1/log和exp/tri1/decode_test/log之类的日志中还有更详细的日志,您也应该查阅这些日志,以查看是否发生了不良情况。
Thanks a lot.非常感谢。
According to the recently update of Kaldi http://sourceforge.net/p/kaldi/code/4158/ I check my lexicon, there are some words are not labeled with phones and those words donnot appear in the corpus, so I remove them. The WARNING disappears,but in the build-tree log:根据Kaldi的最新更新http://sourceforge.net/p/kaldi/code/4158/我检查了我的词典,有一些单词没有用音素标记,并且这些单词没有出现在语料库中,因此我将其删除。警告消失,但是在构建树日志中:
Triphone's WER still is bigger than monophone's!I think this is because of some triphones are sparse in training utterances,I will check it.Triphone的WER仍然大于单音音素的WER!我认为这是因为某些三音音素的训练发音稀疏,我将对其进行检查。
No, this is still because you have some phones that are not seen in the training data. It's strange that the warning was not printed earlier.Anyway, the reason the WERs are higher for triphone is probably because you are using too many leaves or too many Gaussians, relative to the amount of training data you have.不,这仍然是因为您有一些音素未在训练数据中看到。奇怪的是警告没有提前印制,无论如何,三音器的WER较高的原因可能是由于相对于您拥有的训练数据量而言,您使用的叶子过多或高斯过多
Yeah, the data_prepare script doesn't run properly.There are small amount training data.是的,data_prepare脚本无法正常运行。培训数据很少。

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内