jctian98/e2e_lfmmi

Bigram LM receives supervision only from numerator FSA?

Closed this issue · 1 comments

Thanks for this great framework for unified e2e lfmmi training and inference!
I noticed that snowfall has updated the MmiTrainingGraphCompiler in snowfall/training/mmi_graph.py:135 from

ctc_topo_P_vec = k2.create_fsa_vec([ctc_topo_P.detach()])

to a non-detach version

ctc_topo_P_vec = k2.create_fsa_vec([self.ctc_topo_P])

Since in this repo the denominator FSA vec is detached, It seems that bigram LM FSA parameters can only get supervision (gradient) from numerator FSA.

I'm not sure if I missed something or the detach operation could be a problem.

Any help or explanation would be appreciated. Thanks!

Found detach explained in earlier commit of snowfall