Jupyter Notebooks π by Naereen @ GitHubΒΆ
This folder hosts some Jupyter Notebooks, to present in a nice format some numerical experiments for my SMPyBandits project.
The wonderful Jupyter tools is awesome to write interactive and nicely presented π Python simulations!
1. List of experiments presented with notebooksΒΆ
MAB problemsΒΆ
- Easily creating various Multi-Armed Bandit problems, explains the interface of the
Environment.MABmodule.
Single-Player simulationsΒΆ
- A simple example of Single-Player simulation, comparing
UCB1(for two values of $\alpha$, 1 and 1/2),Thompson Sampling,BayesUCBandkl-UCB. - Do we even need UCB? demonstrates the need for an algorithm smarter than the naive
EmpiricalMeans. - Lai-Robbins lower-bound for doubling-tricks algorithms with full restart.
Multi-Player simulationsΒΆ
- A simple example of Multi-Player simulation with 4 Centralized Algorithms, comparing
CentralizedMultiplePlayandCentralizedIMPwithUCBandThompson Sampling. - A simple example of Multi-Player simulation with 2 Decentralized Algorithms, comparing
rhoRandandSelfish(for the “collision avoidance” part) combined withUCBandThompson Samplingfor learning the arms. Spoiler:SelfishbeatsrhoRand!
ExperimentsΒΆ
2. Question: How to read these documents?ΒΆ
2.a. View the notebooks statically πΒΆ
- Either directly in GitHub: see the list of notebooks;
- Or on nbviewer.jupiter.org: list of notebooks.
2.b. FIXME not yet - Play with the notebooks dynamically π₯ΒΆ
Anyone can use the mybinder.org website (by clicking on the icon above) to run the notebook in her/his web-browser. You can then play with it as long as you like, for instance by modifying the values or experimenting with the code.
3. Question: Requirements to run the notebooks locally?ΒΆ
All the requirements can be installed with pip.
3.a. Jupyter Notebook and IPythonΒΆ
sudo pip install jupyter ipython
It will also install all the dependencies, afterward you should have a jupyter-notebook command (or a jupyter command, to be ran as jupyter notebook) available in your PATH:
$ whereis jupyter-notebook
jupyter-notebook: /usr/local/bin/jupyter-notebook
$ jupyter-notebook --version # version >= 4 is recommended
4.4.1
3.b. My numerical environment, SMPyBanditsΒΆ
- First, install its dependencies (
pip install -r requirements). - Then, either install it (not yet), or be sure to work in the main folder.
Note: it’s probably better to use virtualenv, if you like it. I never really understood how and why virtualenv are useful, but if you know why, you should know how to use it.
π More information?ΒΆ
- More information about notebooks (on the documentation of IPython) or on the FAQ on Jupyter’s website.
- More information about mybinder.org: on this example repository.
π License ?
ΒΆ
All the notebooks in this folder are published under the terms of the MIT License (file LICENSE.txt). Β© Lilian Besson, 2016-18.