Teachings Material (French)

Hosted at github/sdpython.

Petit voyage au pays du machine learning

Python pour un datascientist

Les maths d’abord, la programmation ensuite

Apprendre la programmation avec Python

Basics of Machine learning. Starting point before exploring more advanced machine learning.

Teachings contents at ENSAE, 3 courses around algorithms, machine learning, efficient coding (with Matthieu Durut).

Chapters from my PhD and some mathematical exploration.

My first book on programming translated into HTML and updated from times to times.

Découverte du deep learning

Spark approximatif

Notebook presentations

Hackathons, anti-sèches, défis

A few notebooks and lectures about deep learning, not more than an introduction.

Brief introduction to Spark, first steps and some practical issues.

Notebooks, talks about machine learning, python.

Material about past hackathons with ENSAE students, challenges, cheat sheets.

Petit voyage au pays du machine learning

Various benchmarks, to promote pull request, to compare implementations...






This module contains the automation process used by all the modules I write including my teachings. Magic commands, Jenkins jobs, notebook conversion into slides, scripts to build setups, documentation, unit tests.

This library explores various technics to use C or C++ functions in Python.

Helpers for Jupyter notebooks, implements javascript additions such a menu, wraps a json viewer, a graphviz viewer.

Implements custom windows with tkinter mostly one window which adds an entry for every parameter of a function before running it.



Benchmarks around Machine Learning with Python


Implements functions to get insights on machine learned models or various kind of transforms to help manipulating data in a single pipeline. One example with QuantileLinearRegression which trains a linear regression with L1...

Processes big files with pandas, too big to hold in memory, too small to be parallelized with a significant gain. The module replicates a subset of pandas API and implements other functionalities for machine learning.

This project started with my first attempt to bring a modification to scikit-learn. My first pull request was about optimizing the computation of polynomial features. I reused the template to measure various implementations or models.

Pieces of code to access various REST API mostly for teaching purposes.





Implements a light machine learning REST API based on falcon, extends it to a REST API able to publish machine learned models.

Implements a light machine learning leaderboard based on tornado.

Implements easy question / answers forms for teaching purposes.

Custom RSS Reader.





Automates sending and grabbing mails from gmail.

Automates modules installation mostly on Windows.

First package created on github, created to hides some complex functions to students.

Not really tested, implements a putty through a notebook and other helper to submit map/reduce jobs on a cluster.

Experiments around chatbots




Experiments around chatbots... Not really polished.

A sketch to implement prediction functions for a tiny set of machine learning models in C.

Write map/reduce in Python, translate in Python or other languages. Still a for ever progress.

Templates every package must follow in order to be automated and publishable with pyquickhelper.

Wrappers for some C libraries

Wrappers for existing C libraries such as re2


Souvenirs de lectures


Quotes, memories while reading books.

Games, algorithms for kids.


Extensions for ML.net




Extensions for ML.net. Fuzzy state.

Modified version of ML.net. Even fuzzier state.

Python + pythonnet, helpers around that combination.

Python + pythonnet + ML.net, fuzzy state.

Microsoft Open Source





Converters for scikit-learn models and pipelines. xadupre/sklearn-onnx

Wraps onnxruntime as a scikit-learn transform. xadupre/scikit-onnxruntime

Backend for ONNX.

ONNX, machine learning specifications used to describe machine learning prediction functions..