Tackling ML's black boxes with probabilistic programming
Submitted by Rudraksh MK (@rudrakshmk) on Saturday, 18 April 2015
While machine learning has become a wildly popular solution for analyzing a lot of problems, it’s also ended up becoming a major black box. The objective of this talk is to showcase probabilistic programming as a feasible alternative in such scenarios.
As mentioned above, machine learning has now become a platform where data is passed through an algorithm, which is essentially a black box - out pop predictions, but nobody’s got any idea what exactly happened, during the analysis phase. However, probabilistic programming tries to solve this problem by introducing a smaller Bayesian inference engine, with open models on top of it.
The talk shall encompass a brief description of the history behind Bayesian analysis and its stance vis-a-vis traditional machine learning, as well as two sample scenarios - one involves running an A/B test on a web app and running probabilistic models on the data collected during the test. The second scenario is about two market trading strategies, and using Bayesian statistics and Monte Carlo Markov chains to estimate the chances of each strategy beating the market. The entire emphasis here is on using probabilistic programming to tell a generative story with data.
All the code here will be in Python, with heavy usage of PyMC3. If possible, I would also love to throw in some Bayesian models written in Julia.
Some familiarity with Python, and probability theory.
I’m Rudraksh, and I specialize in computational math. I’ve got varied experience in using math and data science for journalism, events management as well as ed-tech and social media startups. I’ve also co-founded a startup called MathHarbor, where we’re building a cloud platform and hub for computational math and stats using open-source languages and toolsets, as well as consulting for the Indian Army on combat wargaming.