{"action":"created","issue":{"url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/943","repository_url":"https://api.github.com/repos/kaldi-asr/kaldi","labels_url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/943/labels{/name}","comments_url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/943/comments","events_url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/943/events","html_url":"https://github.com/kaldi-asr/kaldi/issues/943","id":169043400,"number":943,"title":"Weighted sum descriptor","user":{"login":"vijayaditya","id":3895456,"avatar_url":"https://avatars.githubusercontent.com/u/3895456?v=3","gravatar_id":"","url":"https://api.github.com/users/vijayaditya","html_url":"https://github.com/vijayaditya","followers_url":"https://api.github.com/users/vijayaditya/followers","following_url":"https://api.github.com/users/vijayaditya/following{/other_user}","gists_url":"https://api.github.com/users/vijayaditya/gists{/gist_id}","starred_url":"https://api.github.com/users/vijayaditya/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vijayaditya/subscriptions","organizations_url":"https://api.github.com/users/vijayaditya/orgs","repos_url":"https://api.github.com/users/vijayaditya/repos","events_url":"https://api.github.com/users/vijayaditya/events{/privacy}","received_events_url":"https://api.github.com/users/vijayaditya/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/kaldi-asr/kaldi/labels/enhancement","name":"enhancement","color":"84b6eb"},{"url":"https://api.github.com/repos/kaldi-asr/kaldi/labels/help%20wanted","name":"help wanted","color":"159818"},{"url":"https://api.github.com/repos/kaldi-asr/kaldi/labels/nnet3","name":"nnet3","color":"5319e7"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-08-03T04:07:42Z","updated_at":"2016-08-21T21:56:37Z","closed_at":null,"body":"During some discussions in the past year we decided to implement weighted sum descriptor\r\ni.e., \r\n`Sum(alpha, SumDescriptor1, beta, SumDescriptor2)`. The current sum descriptor just supports\r\n`Sum(SumDescriptor1, SumDescriptor2)`.\r\n\r\nThis descriptor would be useful to implement operations like delta filtering inside the network.\r\n\r\nRequired : Familiarity with `src/nnet3/*`"},"comment":{"url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/comments/241284778","html_url":"https://github.com/kaldi-asr/kaldi/issues/943#issuecomment-241284778","issue_url":"https://api.github.com/repos/kaldi-asr/kaldi/issues/943","id":241284778,"user":{"login":"vijayaditya","id":3895456,"avatar_url":"https://avatars.githubusercontent.com/u/3895456?v=3","gravatar_id":"","url":"https://api.github.com/users/vijayaditya","html_url":"https://github.com/vijayaditya","followers_url":"https://api.github.com/users/vijayaditya/followers","following_url":"https://api.github.com/users/vijayaditya/following{/other_user}","gists_url":"https://api.github.com/users/vijayaditya/gists{/gist_id}","starred_url":"https://api.github.com/users/vijayaditya/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vijayaditya/subscriptions","organizations_url":"https://api.github.com/users/vijayaditya/orgs","repos_url":"https://api.github.com/users/vijayaditya/repos","events_url":"https://api.github.com/users/vijayaditya/events{/privacy}","received_events_url":"https://api.github.com/users/vijayaditya/received_events","type":"User","site_admin":false},"created_at":"2016-08-21T21:56:37Z","updated_at":"2016-08-21T21:56:37Z","body":"Thanks for the detailed comments. I will start the implementation, as\nsuggested, this week.\n\n--Vijay\n\nOn Sun, Aug 21, 2016 at 4:27 PM, Daniel Povey <notifications@github.com>\nwrote:\n\n> Vijay, I just want to point out that this weighted-sum stuff is actually\n> quite hard to implement, due to the way the internals of the compilation\n> process work. Implementing it in the obvious way would require adding a\n> weight to the Cindex, and this change would spread its tentacles over the\n> entire codebase, make the compilation harder to debug, and slow the\n> compilation process down.\n>\n> The most feasible way of implementing it that I can see, that would avoid\n> slowing down the core of the compilation process, is to do it by adding a\n> ScalarScaleComponent that would scale its input by a scalar value. That\n> could of course be used for experiments without further changes.\n>\n> Then to make it efficient and to avoid using more memory than needed, an\n> optimization method could be added [see nnet-optimize.h] that would detect\n> situations where a ScalarScaleComponent existed with an input that was just\n> another node, and would optimize out the application of the component,\n> e.g.replacing operations on its output with suitably scaled operations on\n> its input. [Note: this should be done fairly early in the optimization\n> process, while all matrices still exist and are initialized at the start\n> and deinitialized at the end.]\n>\n> This would require modifying struct Command to add an extra argument,\n> 'float scale1', which would be used for commands of type k*Add*. By\n> default it would always be 1.0, as it is currently. Something to be careful\n> of is that I/O for Command needs to be back compatible with computations\n> written before the change.\n>\n> —\n> You are receiving this because you authored the thread.\n> Reply to this email directly, view it on GitHub\n> <https://github.com/kaldi-asr/kaldi/issues/943#issuecomment-241279896>,\n> or mute the thread\n> <https://github.com/notifications/unsubscribe-auth/ADtwoLheVQODOqn15AtlFU6dTFnvwrxAks5qiLSggaJpZM4JbSHb>\n> .\n>\n"}}
{"actor":{"display_login":"vijayaditya"}}