../_images/ods_stickers.jpg – Open Machine Learning Course is an open Machine Learning course by OpenDataScience (, led by Yury Kashnitsky (yorko). Having both a Ph.D. degree in applied math and a Kaggle Competitions Master tier, Yury aimed at designing an ML course with a perfect balance between theory and practice. Thus, you go through math formulae in lectures, and practice with Kaggle Inclass competitions. Currently, the course is in a self-paced mode. Here we guide you through the self-paced

How to navigate this website and pass the course

Here you see a Jupyter book – an executable book containing markdown, code, images, graphs, etc. (we describe Jupyter books in more detail later). You can jump forward and backward with left and right arrows. Any page can be downloaded as .md (MarkDown) or PDF – use the Download button in the upper-right corner. Additionally, each page containing code can be downloaded as .ipynb – a Jupyter Notebook (not to be confused with Jupyter book). For every page, you can see its source on GitHub, and you can also open an issue or suggest an edit – use the GitHub button in the upper-right corner.

OK, let’s go! First, check prerequisites, then you see 10 topics – from exploratory data analysis with Pandas to gradient boosting. For each topic, there’s an introductory part (here’s an example for Topic 1) that lists articles to read, lectures to watch and assignments to crack.

Bonus assignments

Additionally, you can purchase a Bonus Assignments pack with the best non-demo versions of assignments. Select the “Bonus Assignments” tier.

Details of the deal is still in self-paced mode but we offer you Bonus Assignments with solutions for a contribution of $17/month. The idea is that you pay for ~1-5 months while studying the course materials, but a single contribution is still fine and opens your access to the bonus pack.

Note: the first payment is charged at the moment of joining the Tier Patreon, and the next payment is charged on the 1st day of the next month, thus it’s better to purchase the pack in the 1st half of the month. is never supposed to go fully monetized (it’s created in the wonderful open community and will remain open and free) but it’d help to cover some operational costs, and Yury also put in quite some effort into assembling all the best assignments into one pack. Please note that unlike the rest of the course content, Bonus Assignments are copyrighted. Informally, Yury’s fine if you share the pack with 2-3 friends but public sharing of the Bonus Assignments pack is prohibited.

The bonus pack contains 10 assignments, in some of them you are challenged to beat a baseline in a Kaggle competition under thorough guidance (“Alice” and “Medium”) or implement an algorithm from scratch – efficient stochastic gradient descent classifier and gradient boosting.

About the course

If you scroll down here on the left, you see the “About the course” section with additional materials and information:

  • One of the assignments in the past sessions was to write a tutorial on almost any ML/DS-related topic. The result is seen on the Tutorials page;

  • One of the motivating features of the the past sessions was the leaderboard. Top 100 participants of each session are listed on the Rating page;

  • The Resources page lists other resources constituting the course, e.g. YouTube playlists or Medium/ articles written in the past;

  • Authors and some of the contributors (there were too many to list all of them) are listed on the Contributors page. Acknowledgements are there as well.

Russian version of the course

The course originated in OpenDataScience, at that time in 2017 (well, and still), mostly Russian-speaking community. Hence the first couple of sessions were held in Russian. Then, later, the course launched in English and resulted in what you see here.

The Russian version of the course is resurrected and will be led by Petr Ermakov. If you speak Russian, please refer to this Open ML course launching on Feb 1st, 2022.