A bootstrapping bandit
Now, let's move to implement a simple approach that will use what we've been exploring. A bootstrapping bandit requires no math knowledge at all. It just requires us to sample from the data that we've encountered. Due to this simplicity, we can start from here. Let's start with the simplest test, as follows:
import rpm_bandit def given_a_single_treatment_test(): bandit = rpmbandit.RPMBandit(['A']) chosen_treatment = bandit.choose_treatment() assert chosen_treatment == 'A', 'Should choose the only available option.'
Okay, it's pretty standard at this point. The code that I've written to make this pass is also pretty standard now:
class RPMBandit: def __init__(self, treatments): self._treatments = treatments def choose_treatment(self): ...
Get Test-Driven Machine Learning now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.