05-12, 10:30–11:00 (Europe/Paris), Louis Armand 1
We, a team of scikit-learn core developers and contributors, created the
"Machine Learning in Python in scikit-learn" MOOC (Massive Open Online Course)
in 2021 with the goal of making it accessible to an audience without a strong
Since then, we have run three sessions of the MOOC, with an average of roughly
10,000 registered participants, and have reused the material for scikit-learn
courses in a variety of settings, for example Python conference tutorials,
remote scikit-learn training and in-person university courses.
In this talk, we will describe how we leveraged tools within the Jupyter
ecosystem to develop the course material and teach it, in particular:
- JupyterBook and Jupytext to develop the material in a convenient and
- JupyterHub to give learners a zero-install live environment during the MOOC
- Binder for convenient fall-back for tricky installation issues together with
its integration into JupyterBook
We will also share the lessons we learned along the way while developing the
material, running the MOOC and teaching the material.
We will conclude with some of our ideas to improve the course, for example:
- using Jupyterlite in our JupyterBook setup and potentially replace our
JupyterHub in the longer term. Towards this goal, we already have started
investigating issues we found in Pyodide scipy and scikit-learn packages
- moving away from classic notebook to Retrolab
- moving to jupyterlab-myst to better support MyST markdown inside notebooks
and get rid of our custom scripts to genenerate HTML admonitions
The content of the course is available under a CC-BY license at
https://inria.github.io/scikit-learn-mooc and the associated repository at:
https://github.com/inria/scikit-learn-mooc. The MOOC is available at:
Loïc has a background in Particle Physics, which is how he discovered Python towards the end of his PhD. After a few year stint in an investment fund of writing mostly C++ and as much Python as possible,
he was lured back to an academic environment at Inria.
He is a scikit-learn and joblib core contributor and has been involved in a number of Python open-source projects in the past 10 years, amongst which Pyodide, dask-jobqueue, sphinx-gallery and nilearn.