{"action":"created","issue":{"url":"https://api.github.com/repos/JonathanRaiman/theano_lstm/issues/10","labels_url":"https://api.github.com/repos/JonathanRaiman/theano_lstm/issues/10/labels{/name}","comments_url":"https://api.github.com/repos/JonathanRaiman/theano_lstm/issues/10/comments","events_url":"https://api.github.com/repos/JonathanRaiman/theano_lstm/issues/10/events","html_url":"https://github.com/JonathanRaiman/theano_lstm/pull/10","id":63234370,"number":10,"title":"added license, made initialization easier to modify and replicate","user":{"login":"mheilman","id":181744,"avatar_url":"https://avatars.githubusercontent.com/u/181744?v=3","gravatar_id":"","url":"https://api.github.com/users/mheilman","html_url":"https://github.com/mheilman","followers_url":"https://api.github.com/users/mheilman/followers","following_url":"https://api.github.com/users/mheilman/following{/other_user}","gists_url":"https://api.github.com/users/mheilman/gists{/gist_id}","starred_url":"https://api.github.com/users/mheilman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mheilman/subscriptions","organizations_url":"https://api.github.com/users/mheilman/orgs","repos_url":"https://api.github.com/users/mheilman/repos","events_url":"https://api.github.com/users/mheilman/events{/privacy}","received_events_url":"https://api.github.com/users/mheilman/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-03-20T14:09:43Z","updated_at":"2015-03-23T18:21:35Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/JonathanRaiman/theano_lstm/pulls/10","html_url":"https://github.com/JonathanRaiman/theano_lstm/pull/10","diff_url":"https://github.com/JonathanRaiman/theano_lstm/pull/10.diff","patch_url":"https://github.com/JonathanRaiman/theano_lstm/pull/10.patch"},"body":"The main (fairly simple) change here is that I refactored the weight initialization a bit so it is easier to modify in other code that uses this.  To change the initialization, one can redefine the function `theano_lstm. random_initialization` to do uniform initialization or other things.\r\n\r\nOne can also modify the random seed by changing `theano_lstm.np_rng`."},"comment":{"url":"https://api.github.com/repos/JonathanRaiman/theano_lstm/issues/comments/85132404","html_url":"https://github.com/JonathanRaiman/theano_lstm/pull/10#issuecomment-85132404","issue_url":"https://api.github.com/repos/JonathanRaiman/theano_lstm/issues/10","id":85132404,"user":{"login":"mheilman","id":181744,"avatar_url":"https://avatars.githubusercontent.com/u/181744?v=3","gravatar_id":"","url":"https://api.github.com/users/mheilman","html_url":"https://github.com/mheilman","followers_url":"https://api.github.com/users/mheilman/followers","following_url":"https://api.github.com/users/mheilman/following{/other_user}","gists_url":"https://api.github.com/users/mheilman/gists{/gist_id}","starred_url":"https://api.github.com/users/mheilman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mheilman/subscriptions","organizations_url":"https://api.github.com/users/mheilman/orgs","repos_url":"https://api.github.com/users/mheilman/repos","events_url":"https://api.github.com/users/mheilman/events{/privacy}","received_events_url":"https://api.github.com/users/mheilman/received_events","type":"User","site_admin":false},"created_at":"2015-03-23T18:21:35Z","updated_at":"2015-03-23T18:21:35Z","body":"Hi, I don't feel like I have a great handle on different possible use cases, but I think the current code should work OK for most cases.\r\n\r\nThe changes here just remove `initial_hidden_state` from what `params` returns.  This means that the initial state will be removed from a) the optimization updates, and b) what a user would save as parameters for the model.  It doesn't seem like the initial hidden state would be a parameter one would want to optimize or save for most uses of RNNs/LSTMs.\r\n\r\nI didn't remove the member variable entirely, so using it for `outputs_info` should still be fine.\r\n\r\nIn my models, I've just been initializing `outputs_info` to zeros, as you suggested, rather than using the randomly initialized `initial_hidden_state` variable.  Would it be better to do that by default?  As you suggest, `initial_hidden_state` could just be replaced by a property that returns a vector or matrix of zeros.    I can make that change, but I just wanted to make sure I'm understanding this.  Apologies if I'm missing something.\r\n\r\n"}}