Re:Pyro: The Universal, Probablistic Programming Language
by jvans on Friday July 28, 2023 @09:05PM
(#36915653)
> It's difficult. Applying these techniques efficiently and correctly is way more difficult than standard frequentist methods
Do you have any good resources/examples for applying these methods effectively? I've read Statistical Rethinking which is a good introduction to these methods at a high level but I find when I dig into an actual problem I have a lot of gaps and wish there were more real world code examples I could learn from.
Re:Pyro: The Universal, Probablistic Programming Language
by nerdponx on Saturday July 29, 2023 @02:57AM
(#36917634)
I think Bayesian Data Analysis is the natural progression step.
Not sure if there is a more recent book that's updated to use modern Stan examples, but the Stan user guide itself has developed into a very useful resource on its own. It contains a large number of example models and builds up concepts incrementally. The writing style is also generally easy to follow.
Re:Pyro: The Universal, Probablistic Programming Language
by jvans on Saturday July 29, 2023 @12:19PM
(#36921717)
I found that book impenetrable. I'm sure it's the most rigorous textbook on the subject but it is not explained in an intuitive or friendly way.
I will check out the stan guide though, thanks!
Re:Pyro: The Universal, Probablistic Programming Language
by nerdponx on Saturday July 29, 2023 @01:31PM
(#36922506)
In my case, I used it in an actual course on Bayesian inference. Looking back over the material it doesn't seem particularly complicated for anyone with a solid probability background, but maybe the concepts are hard if you aren't seeing them presented nicely in a lecture setting.
Re:Pyro: The Universal, Probablistic Programming Language
by t-vi on Monday July 31, 2023 @04:13AM
(#36939957)
It knows nothing of the modern stuff (because MacKay died too early), but skipping the first parts of David MacKay: Information Theory, Inference, and Learning Algorithms you get a very accessible course in (200x) Bayesian Inference that should cover most of what you need for diving into PPL applications.
Re:Pyro: The Universal, Probablistic Programming Language
by mark_l_watson on Friday July 28, 2023 @10:10PM
(#36916105)
Thanks, that makes sense: understanding small data problems. I have struggled a few times trying to get into POLs.
1. When your main objective is not prediction but understanding the effect of some underlying / unobserved random variable.
2. When you don't have tons data + you have very clear ideas of the data generation process.
(1) is mainly relevant for science rather than private companies, e.g. if you're an epidemiologist, you're generally speaking interested in determining the effect of certain underlying factors, e.g. effect of mobility patterns, rather than just predicting the number of infected people tomorrow since the hidden variables are often someting you can directly control, e.g. impose travel restrictions.
(2) can occur either in academic settings or in private sector in applications such as revenue optimization. In these scenarios, it's also very useful to have a notion of the "risk" you're taking by optimizing according to this model. Such a notion of risk is in the Bayesian framework completely straight-forward, while less so in the frequentist scenarios.
I've been involved in the above scenarios and have seen clear advantages of using Bayesian inference, both in academia and private sector.
With that being said, I don't think ever Bayesian inference, and thus even less so PPLs, are going to "take off" in a similar fashion to many other machine learning techniques. The reason for this are fairly simple:
1. It's difficult. Applying these techniques efficiently and correctly is way more difficult than standard frequentist methods (even interpeting the results is often non-trivial).
2. The applicability of Bayesian inference (and thus PPLs) is just so much more limited due to the computational complexity + reduction in utility of the methods as data increases (which, for private companies, is more and more the case).
PPLs mainly try to address (1), and we do have examples of very successful examples of this, e.g. PyMC3 (they also have a bunch of nice examples of applying Bayesian inference in private sector context), and Stan (maybe more heavily used in academia).