{"action":"created","issue":{"url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/1186","repository_url":"https://api.github.com/repos/kaldi-asr/kaldi","labels_url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/1186/labels{/name}","comments_url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/1186/comments","events_url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/1186/events","html_url":"https://github.com/kaldi-asr/kaldi/pull/1186","id":189016993,"number":1186,"title":"WIP/help needed: Looped computation","user":{"login":"danpovey","id":3298747,"avatar_url":"https://avatars.githubusercontent.com/u/3298747?v=3","gravatar_id":"","url":"https://api.github.com/users/danpovey","html_url":"https://github.com/danpovey","followers_url":"https://api.github.com/users/danpovey/followers","following_url":"https://api.github.com/users/danpovey/following{/other_user}","gists_url":"https://api.github.com/users/danpovey/gists{/gist_id}","starred_url":"https://api.github.com/users/danpovey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danpovey/subscriptions","organizations_url":"https://api.github.com/users/danpovey/orgs","repos_url":"https://api.github.com/users/danpovey/repos","events_url":"https://api.github.com/users/danpovey/events{/privacy}","received_events_url":"https://api.github.com/users/danpovey/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":27,"created_at":"2016-11-14T02:42:13Z","updated_at":"2016-12-03T01:18:43Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/kaldi-asr/kaldi/pulls/1186","html_url":"https://github.com/kaldi-asr/kaldi/pull/1186","diff_url":"https://github.com/kaldi-asr/kaldi/pull/1186.diff","patch_url":"https://github.com/kaldi-asr/kaldi/pull/1186.patch"},"body":"This pull request represents some work I have been doing to support decoding in nnet3 in a way that naturally allows re-use of previously computed things.  This is done right inside the nnet3 compilation process, so we don't have to mess around externally with additional outputs and inputs.\r\n\r\nIt's applicable to decoding with TDNNs and LSTMs (and should be particularly helpful for LSTMs, because it avoids the need to extend the chunk with left context).\r\nI haven't yet implemented the \"online\" decoding with this.. that can be done later.\r\nThe point this is at, is that all the C++ code is implemented, and tested based on automated tests, but I haven't modified any scripts or run any of the examples.\r\nThis is not just about testing new code paths, but existing code could in theory crash, because I made a lot of changes to core nnet3 stuff.\r\nBecause I have made the 'looped' computation available by adding a new binary (nnet3-latgen-faster-looped), nnet3 decoding-script changes would be required to make use of this: probably an option --looped-computation [true|false] that would trigger a branch in the script.  Note: the options --extra-left-context and --extra-right-context are not present in nnet3-latgen-faster-looped.  There is a config --extra-left-context-initial (extra left context for the first chunk), but I hope it won't be necessary to use or won't make much difference.\r\n\r\nI am hoping someone can help me test this and do the script-level changes.  @tomkocse?  @vijayaditya, do you have any suggestion about this?"},"comment":{"url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/comments/264603967","html_url":"https://github.com/kaldi-asr/kaldi/pull/1186#issuecomment-264603967","issue_url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/1186","id":264603967,"user":{"login":"danpovey","id":3298747,"avatar_url":"https://avatars.githubusercontent.com/u/3298747?v=3","gravatar_id":"","url":"https://api.github.com/users/danpovey","html_url":"https://github.com/danpovey","followers_url":"https://api.github.com/users/danpovey/followers","following_url":"https://api.github.com/users/danpovey/following{/other_user}","gists_url":"https://api.github.com/users/danpovey/gists{/gist_id}","starred_url":"https://api.github.com/users/danpovey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danpovey/subscriptions","organizations_url":"https://api.github.com/users/danpovey/orgs","repos_url":"https://api.github.com/users/danpovey/repos","events_url":"https://api.github.com/users/danpovey/events{/privacy}","received_events_url":"https://api.github.com/users/danpovey/received_events","type":"User","site_admin":false},"created_at":"2016-12-03T01:18:42Z","updated_at":"2016-12-03T01:18:42Z","body":"Hm, interesting.\nHave a look at the details scoring output (I forget which file, the one\nthat has the actual output, maybe the ctm) and see if the errors cluster at\na particular part of the sentence, e.g. the start.\nAlso please run the standard LSTM decoding with a longer chunk size, like\n100 frames, and see if it's closer to the looped decoding.  It could be\nthat for some reason it doesn't like the effectively-infinite context.\n\nDan\n\nOn Fri, Dec 2, 2016 at 8:12 PM, Tom Ko <notifications@github.com> wrote:\n\n> @vijayaditya <https://github.com/vijayaditya> Here are the result of\n> looped decoding, but the result get worse:\n> without looped:\n> %WER 9.5 | 1831 21395 | 91.5 5.6 2.9 1.0 9.5 42.8 |\n> exp/chain/tdnn_lstm_1a_ld5_sp/decode_eval2000_sw1_fsh_fg/\n> score_11_1.0/eval2000_hires.ctm.swbd.filt.sys\n> %WER 19.0 | 2628 21594 | 83.7 11.7 4.6 2.7 19.0 54.6 |\n> exp/chain/tdnn_lstm_1a_ld5_sp/decode_eval2000_sw1_fsh_fg/\n> score_9_0.0/eval2000_hires.ctm.callhm.filt.sys\n> %WER 14.4 | 4459 42989 | 87.5 8.6 3.9 1.9 14.4 49.6 |\n> exp/chain/tdnn_lstm_1a_ld5_sp/decode_eval2000_sw1_fsh_fg/\n> score_10_0.0/eval2000_hires.ctm.filt.sys\n>\n> looped:\n> %WER 9.7 | 1831 21395 | 91.4 5.3 3.3 1.1 9.7 43.0 |\n> exp/chain/tdnn_lstm_1a_ld5_sp/decode_eval2000_sw1_fsh_fg_\n> looped/score_12_1.0/eval2000_hires.ctm.swbd.filt.sys\n> %WER 21.3 | 2628 21594 | 80.8 12.4 6.8 2.2 21.3 59.9 |\n> exp/chain/tdnn_lstm_1a_ld5_sp/decode_eval2000_sw1_fsh_fg_\n> looped/score_10_0.0/eval2000_hires.ctm.callhm.filt.sys\n> %WER 15.6 | 4459 42989 | 86.0 8.9 5.1 1.7 15.6 52.9 |\n> exp/chain/tdnn_lstm_1a_ld5_sp/decode_eval2000_sw1_fsh_fg_\n> looped/score_11_0.0/eval2000_hires.ctm.filt.sys\n>\n> —\n> You are receiving this because you were mentioned.\n> Reply to this email directly, view it on GitHub\n> <https://github.com/kaldi-asr/kaldi/pull/1186#issuecomment-264603216>, or mute\n> the thread\n> <https://github.com/notifications/unsubscribe-auth/ADJVu78v4YLucb9Guc_XdvCvFFApOIXOks5rEMHjgaJpZM4Kw5uH>\n> .\n>\n"}}
{"actor":{"display_login":"danpovey"}}