When training is done, the best WER is stored in the model state object. The WER is parsed from the training results in the log file. train.log is read, text lines starting with %WER are added to a list and reverse sorted. The first item is returned as the best WER.
Expected behaviour is to get the WER from the final triphone training stage.
However, the values being reported at the end of the model training are from the mono training stage.
train.log is made by appending each stage log to the main log when each stage completes. I suspect that when training is done, getting the WER in get_train_results() happens before the triphone training results are appended to train.log.
When training is done, the best WER is stored in the model state object. The WER is parsed from the training results in the log file.
train.log
is read, text lines starting with%WER
are added to a list and reverse sorted. The first item is returned as the best WER.Expected behaviour is to get the WER from the final triphone training stage.
However, the values being reported at the end of the model training are from the mono training stage.
train.log
is made by appending each stage log to the main log when each stage completes. I suspect that when training is done, getting the WER inget_train_results()
happens before the triphone training results are appended totrain.log
.