最近实验室一个人在搞语音关键词检测项目,经常遇到各种各样的问题,开始都是在博客和百度上搜索,对于简单的问题,基本上都能搜到相应的解决方案,但关于kaldi的中文资料确实不多。后来发现发现google论坛上有很多关于kaldi的问题以及kaldi开发者dan的回答,在上面找到了很多有用的解答,于是决定做一做搬运工,记录一些有用的问题。
问题:显卡设备老旧,想跑tdnn-chain模型,如何修改相应参数而不影响最终的模型结果。尝试了改小local/chain/run_tdnn.sh中的--trainer.optimization.nums-jobs-initial 、--trainer.optimization.num-jobs-final和--trainer.num-chunk-per-minibatch 。
dan解答:如果只有单个gpu ,需要将num-jobs-initial和num-jobs-final都设为1,这个效果将比把num-chunk-per-minibatch改为很小值效果更好。这些参数的改变都可能会影响结果,如果将num-jobs-initial和num-jobs-final都设为1,建议将epochs改为原来的2/3。
我之前跑aishell的chain模型一直报错,根据dan的回答进行了参数改变,不再报错。