{"action":"created","issue":{"url":"https://api.github.com/repos/pymc-devs/pymc3/issues/1499","repository_url":"https://api.github.com/repos/pymc-devs/pymc3","labels_url":"https://api.github.com/repos/pymc-devs/pymc3/issues/1499/labels{/name}","comments_url":"https://api.github.com/repos/pymc-devs/pymc3/issues/1499/comments","events_url":"https://api.github.com/repos/pymc-devs/pymc3/issues/1499/events","html_url":"https://github.com/pymc-devs/pymc3/pull/1499","id":187541998,"number":1499,"title":"Changes on ADVI functions","user":{"login":"taku-y","id":4969395,"avatar_url":"https://avatars.githubusercontent.com/u/4969395?v=3","gravatar_id":"","url":"https://api.github.com/users/taku-y","html_url":"https://github.com/taku-y","followers_url":"https://api.github.com/users/taku-y/followers","following_url":"https://api.github.com/users/taku-y/following{/other_user}","gists_url":"https://api.github.com/users/taku-y/gists{/gist_id}","starred_url":"https://api.github.com/users/taku-y/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/taku-y/subscriptions","organizations_url":"https://api.github.com/users/taku-y/orgs","repos_url":"https://api.github.com/users/taku-y/repos","events_url":"https://api.github.com/users/taku-y/events{/privacy}","received_events_url":"https://api.github.com/users/taku-y/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2016-11-06T04:50:08Z","updated_at":"2016-11-07T07:41:08Z","closed_at":"2016-11-06T23:29:23Z","pull_request":{"url":"https://api.github.com/repos/pymc-devs/pymc3/pulls/1499","html_url":"https://github.com/pymc-devs/pymc3/pull/1499","diff_url":"https://github.com/pymc-devs/pymc3/pull/1499.diff","patch_url":"https://github.com/pymc-devs/pymc3/pull/1499.patch"},"body":"This PR includes the following changes.\r\n\r\n1. Change the definition of optimizers\r\n\r\nOptimizers for `advi()` and `advi_minibatch()` had required to take a shared variable of parameters as an argument. However, when the optimizer function accepts list of shared variables as a set of parameters, like in Lasagne and Keras, the requirement makes optimization inefficient. This PR changes the requirement for optimizers to accept a list of shared variables. By this change, the ADVI functions levarage potential of these optimizers.  \r\n\r\n2. Make global RVs optional\r\n\r\nIn general, probabilistic models involve global random variables (global RVs), which determines the distributions of all observations. However, autoencoding variational bayes (AEVB), implemented in `advi_minibatch()`, can handle probabilistic models containing only local RVs, each of which is relevant to each observation and its variational parameters are inferred via neural networks. The current version of `advi_minibatch()` requires global RVs to be defined in the model, while this PR makes `advi_minibatch()` accepting probabilistic models without global RVs. An example of such a probabilistic model is convolutional VAE, added in the notebook directory via this PR. \r\n\r\n3. Use Theano float type in `advi_minibatch()`\r\n\r\nTo enable this feature, you need to set `theano.config.floatX` before importing PyMC3. \r\n\r\nWith these changes, I checked some notebooks using ADVI to run. "},"comment":{"url":"https://api.github.com/repos/pymc-devs/pymc3/issues/comments/258766359","html_url":"https://github.com/pymc-devs/pymc3/pull/1499#issuecomment-258766359","issue_url":"https://api.github.com/repos/pymc-devs/pymc3/issues/1499","id":258766359,"user":{"login":"springcoil","id":983944,"avatar_url":"https://avatars.githubusercontent.com/u/983944?v=3","gravatar_id":"","url":"https://api.github.com/users/springcoil","html_url":"https://github.com/springcoil","followers_url":"https://api.github.com/users/springcoil/followers","following_url":"https://api.github.com/users/springcoil/following{/other_user}","gists_url":"https://api.github.com/users/springcoil/gists{/gist_id}","starred_url":"https://api.github.com/users/springcoil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/springcoil/subscriptions","organizations_url":"https://api.github.com/users/springcoil/orgs","repos_url":"https://api.github.com/users/springcoil/repos","events_url":"https://api.github.com/users/springcoil/events{/privacy}","received_events_url":"https://api.github.com/users/springcoil/received_events","type":"User","site_admin":false},"created_at":"2016-11-07T07:41:07Z","updated_at":"2016-11-07T07:41:07Z","body":"Hi\nI did `python setup.py develop` based on what was in that version of master\n\nOn 7 Nov 2016 4:22 AM, \"Thomas Wiecki\" <notifications@github.com> wrote:\n\n> you can also remove the note on using your branch.\n>\n> On Nov 7, 2016 12:59 PM, \"Taku Yoshioka\" <notifications@github.com> wrote:\n>\n> > Hi Peadar, did you use the previous version of PyMC3?\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/pymc-devs/pymc3/pull/1499#issuecomment-258742622>,\n> or mute\n> > the thread\n> > <https://github.com/notifications/unsubscribe-auth/AApJmE5f859wjReAF5_\n> Xz9gyWbTxhRyBks5q7qIogaJpZM4Kqd5W>\n> > .\n> >\n>\n> —\n> You are receiving this because you modified the open/close state.\n> Reply to this email directly, view it on GitHub\n> <https://github.com/pymc-devs/pymc3/pull/1499#issuecomment-258744442>, or mute\n> the thread\n> <https://github.com/notifications/unsubscribe-auth/AA8DiNio2J9SavagZUjalCvUdYQ5GKQ1ks5q7qeOgaJpZM4Kqd5W>\n> .\n>\n"}}
{"actor":{"display_login":"springcoil"}}