4 ms·
great questions. 1. you touch upon the right strengths of TF; that was certainly one consideration. edward is designed to address two goals that complement sta
by proditus 10y ago
great questions.
1. you touch upon the right strengths of TF; that was certainly one consideration. edward is designed to address two goals that complement stan. the first is to be a platform for inference research: as such, edward is primarily a tool for machine learning researchers. the second is to support a wider class of models than stan (at the cost of not offering a "works out of the box" solution).
our recent whitepaper explains these goals in a bit more detail:
https://arxiv.org/pdf/1610.09787.pdf https://arxiv.org/pdf/1610.09787.pdf
2) no immediate plans. but we have HMC and are looking for volunteers :)
3) same answer as above :) should be relatively easy to implement tempering.
4) this is already in the works! stay tuned!
- marmaduke 10y agoWhy TF instead of Theano as PyMC3 has done? Shouln't it be straightforward to port PyMC3 algos over TF? My main gripe with Theano is that OpenCL support is near non-existent, but this is also the case with TF.
- murbard2 10y ago4) which approach are you using? Generalized Poisson Estimator, or estimating the convexity effect of the exponential by looking at the sample variance of the log likelihood? The former is more pure, the latter may be more practical if ugly.
- proditus 10y agotheses are great insights. our first approach is the simplest: stochastic variational inference. consider a likelihood that factorizes over datapoints. stochastic variational inference then computes stochastic gradients of the variational objective function at each iteration by subsampling a "minibatch" of data at random. i reckon the techniques you suggest would work as we move forward!
- murbard2 10y agoEdit: ah never mind, variational inference, got it! I was thinking stochastic HMC! --- Ok but that will get an unbiased estimate of the log-likelihood. MCMC or HMC do work with noisy estimators, but they require unbiased estimates of the likelihood. At the very least, you need to do a convexity adjustment by measuring the variance inside your mini batch. Or you can use the Poisson technique which will get you unbiased estimates of exp(x) from unbiased estimates of x (albeit at the cost of introducing a lot of variance).
- proditus 10y agogreat points; yes, the challenge becomes considerably more challenging with MCMC!
- marmaduke 10y agoif I can bug you also since you're working with Alp, how does Edward handle ADVI covariance? Is it diagonal or dense or some sparse structure estimated?
- proditus 10y agoyou may bug me on this. i work too closely with alp :) edward does not implement completely implement advi yet. the piece that is missing is the automated transformation of constrained latent variable spaces to the real coordinate space. however, edward offers much more flexibility in specifying the dependency structure of the posterior approximation. diagonal is, just like in stan, the fastest and easiest. however introducing structure (e.g. assigning a dense normal to some of the latent variables while assigning a diagonal to others) is much easier in edward.
- marmaduke 10y agoOK I would be interested in seeing how to do that. Are there any examples or hints on how to start? I worked a lot with time series models (think nonlinear autoregressive), where there's strong short term autocorrelation, and the coercion to diagonal covariance seemed inappropriate. I have also a naïve question: why not use the graphical structure of the model itself to add structure to the covariance? For example, in an AR model, each time point places prior on the next time point, so why not assume a banded covariance? More generally, one could use a cutoff on shortest path length (through the model's graphic structure) between parameters to decide if they should have nonzero coefficients.
- marmaduke 10y agoI came across the examples in the repo and commented on https://github.com/blei-lab/edward/issues/211 https://github.com/blei-lab/edward/issues/211 so I'll try to do my homework before asking more questions ;)