Bayesian Machine Learning in Python: A/B Testing
-
Introduction and Outline
-
The High-Level Picture
-
Bayes Rule and Probability ReviewReview Section Introduction0sProbability and Bayes’ Rule Review0sCalculating Probabilities – Practice0sThe Gambler0sThe Monty Hall Problem0sMaximum Likelihood Estimation – Bernoulli0sClick-Through Rates (CTR)0sMaximum Likelihood Estimation – Gaussian (pt 1)0sMaximum Likelihood Estimation – Gaussian (pt 2)0sCDFs and Percentiles0sProbability Review in Code0sProbability Review Section Summary0sRemedial: Statistics vs Machine Learning0sSuggestion Box0s
-
Traditional A/B TestingConfidence Intervals (pt 1) – Intuition0sConfidence Intervals (pt 2) – Beginner Level0sConfidence Intervals (pt 3) – Intermediate Level0sConfidence Intervals (pt 4) – Intermediate Level0sConfidence Intervals (pt 5) – Intermediate Level0sConfidence Intervals Code0sHypothesis Testing – Examples0sStatistical Significance0sHypothesis Testing – The API Approach0sHypothesis Testing – Accept Or Reject?0sHypothesis Testing – Further Examples0sZ-Test Theory (pt 1)0sZ-Test Theory (pt 2)0sZ-Test Code (pt 1)0sZ-Test Code (pt 2)0sA/B Test Exercise0sClassical A/B Testing Section Summary0s
-
Bayesian A/B TestingSection Introduction: The Explore-Exploit Dilemma0sApplications of the Explore-Exploit Dilemma0sEpsilon-Greedy Theory0sCalculating a Sample Mean (pt 1)0sEpsilon-Greedy Beginner’s Exercise Prompt0sDesigning Your Bandit Program0sEpsilon-Greedy in Code0sComparing Different Epsilons0sOptimistic Initial Values Theory0sOptimistic Initial Values Beginner’s Exercise Prompt0sOptimistic Initial Values Code0sUCB1 Theory0sUCB1 Beginner’s Exercise Prompt0sUCB1 Code0sBayesian Bandits / Thompson Sampling Theory (pt 1)0sBayesian Bandits / Thompson Sampling Theory (pt 2)0sThompson Sampling Beginner’s Exercise Prompt0sThompson Sampling Code0sThompson Sampling With Gaussian Reward Theory0sThompson Sampling With Gaussian Reward Code0sExercise on Gaussian Rewards0sWhy don’t we just use a library?0sNonstationary Bandits0sBandit Summary, Real Data, and Online Learning0s(Optional) Alternative Bandit Designs0s
-
Bayesian A/B Testing Extension
-
Practice Makes Perfect
-
Appendix / FAQ Intro
-
Setting Up Your Environment (FAQ by Student Request)
-
Extra Help With Python Coding for Beginners (FAQ by Student Request)
-
Effective Learning Strategies for Machine Learning (FAQ by Student Request)
-
Appendix / FAQ Finale
This course is all about A/B testing.
A/B testing is used everywhere. Marketing, retail, newsfeeds, online advertising, and more.
A/B testing is all about comparing things.
If you’re a data scientist, and you want to tell the rest of the company, “logo A is better than logo B”, well you can’t just say that without proving it using numbers and statistics.
Traditional A/B testing has been around for a long time, and it’s full of approximations and confusing definitions.
In this course, while we will do traditional A/B testing in order to appreciate its complexity, what we will eventually get to is the Bayesian machine learning way of doing things.
First, we’ll see if we can improve on traditional A/B testing with adaptive methods. These all help you solve the explore-exploit dilemma.
You’ll learn about the epsilon-greedy algorithm, which you may have heard about in the context of reinforcement learning.
We’ll improve upon the epsilon-greedy algorithm with a similar algorithm called UCB1.
Finally, we’ll improve on both of those by using a fully Bayesian approach.
Why is the Bayesian method interesting to us in machine learning?
It’s an entirely different way of thinking about probability.
It’s a paradigm shift.
You’ll probably need to come back to this course several times before it fully sinks in.
It’s also powerful, and many machine learning experts often make statements about how they “subscribe to the Bayesian school of thought”.
In sum – it’s going to give us a lot of powerful new tools that we can use in machine learning.
The things you’ll learn in this course are not only applicable to A/B testing, but rather, we’re using A/B testing as a concrete example of how Bayesian techniques can be applied.
You’ll learn these fundamental tools of the Bayesian method – through the example of A/B testing – and then you’ll be able to carry those Bayesian techniques to more advanced machine learning models in the future.
See you in class!
“If you can’t implement it, you don’t understand it”
Or as the great physicist Richard Feynman said: “What I cannot create, I do not understand”.
My courses are the ONLY courses where you will learn how to implement machine learning algorithms from scratch
Other courses will teach you how to plug in your data into a library, but do you really need help with 3 lines of code?
After doing the same thing with 10 datasets, you realize you didn’t learn 10 things. You learned 1 thing, and just repeated the same 3 lines of code 10 times…
Suggested Prerequisites:
Probability (joint, marginal, conditional distributions, continuous and discrete random variables, PDF, PMF, CDF)
Python coding: if/else, loops, lists, dicts, sets
Numpy, Scipy, Matplotlib
WHAT ORDER SHOULD I TAKE YOUR COURSES IN?:
Check out the lecture “Machine Learning and AI Prerequisite Roadmap” (available in the FAQ of any of my courses, including the free Numpy course)
UNIQUE FEATURES
Every line of code explained in detail – email me any time if you disagree
No wasted time “typing” on the keyboard like other courses – let’s be honest, nobody can really write code worth learning about in just 20 minutes from scratch
Not afraid of university-level math – get important details about algorithms that other courses leave out
What's included
- 10.5 hours on-demand video
- Access on mobile and TV
- Certificate of completion