-
Notifications
You must be signed in to change notification settings - Fork 140
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can't replicate CSJ's LAS results with the default setup. #228
Comments
@lijianhackthon I think you missed SpecAugment. |
@hirofumi0810 Thanks a lot for your quick reply. Based on your suggestion, I added the SpecAugment feature into setup and ran the script again. Here are the final test results,
It indeed improves the accuracy compared to my old setups, which is a good sign. However, there is still gap between my CER values and your benchmark. Now my configurations for ASR are
I used Did I use the SpecAugment correctly? Do you think there is still some feature that I haven't used? Thanks. |
@lijianhackthon Great. Can you decode again w/o LM fusion? |
Hi @hirofumi0810 , thanks for the hint. Here are the results of decoding w/o LM fusion. By disabling the lm fusion for decoding, I just left the
Without using lm fusion for decoding, the results indeed got better. The WER value for eval3 are same as the benchmark and the WER value for eval2 is close enough to the benchmark. But there is still an obvious gap for eval1. Just to be clear, as I mentioned in the above post, I used the external LM during the training phase of the blstm_las model. The external LM was trained in the stage 3 of the run.sh by using the default Could you please explain a little bit on why we can get better results without using lm fusion for decoding? And also, since there is still gap for eval1 and eval2, what do you think would be the next thing to try? Thanks again for your help. |
LM on CSJ is trained with transcription only. In such a case, E2E models trained with SpecAugment do not obtain any gains. If we can use additional text for training LM, it might be helpful. |
Hi @hirofumi0810 , I got the test results of LAS model trained without LM cold fusion. Please see the last two lines of the table below,
The setup of this model is
You can see that for this time, I leave the Based on the test results, training without cold fusion doesn't make any improvement. Is this because I didn't use asr model initialization? And also, did I use the correct config file for spec augment? Thanks. |
@lijianhackthon I think you should use |
Thanks for your quick reply. I used the default config I will use |
I just got the test results of the LAS model by using the setup that you recommended. I used
Still, there is an obvious gap between my results and the benchmark. Is there something wrong with my setup? Do I need to use It takes several days for me to try a new setup. So could you please try to give me more thorough setup so that I can replicate your benchmark? I believe this can also be helpful to other users who are new to this toolkit. Thanks. |
@lijianhackthon I think you have already reproduced the results successfully. |
Hi @hirofumi0810 ,
I'm trying to replicate the results of the LAS model that you shared in this table.
I'm using the default run.sh script in the csj example. Till now, I've got two sets of results with or without using external external_lm. The external_lm is also trained by this run.sh script in stage 3. I didn't change options defined in
conf/asr/blstm_las.yaml
orconf/lm/rnnlm.yaml
. And I used one GPU for training.Here are the results that I've got. And I used the default script local/score.sh for test. Still, I didn't change any hyper-parameters defined in this script.
ASR config:
default conf/asr/blstm_las.yaml
LM config:
default conf/lm/rnnlm.yaml
ASR config:
default conf/asr/blstm_las.yaml
LM config:
default conf/lm/rnnlm.yaml
And for easier reference, I'm posting your released results here,
Considering that your results are WERs, my results are a little worse than yours for all the eval sets no matter using external LM or not. And also, it doesn't help much by using external LM.
For your reference, here are my environment setup,
The commit hash of the neural_sp that I'm using is
7a9ec231d50a9ed6a0457a6c582526173c8ceb6b
.I want to know that whether the results you released are from using the default run.sh script. Did I miss something important?
Thanks a lot for your help.
The text was updated successfully, but these errors were encountered: