Skip to content
Switch branches/tags
Go to file
This branch is 2 commits ahead, 7 commits behind Yorko:master.

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

ODS stickers – Open Machine Learning Course

License: CC BY-NC-SA 4.0 Slack Donate Donate is an open Machine Learning course by OpenDataScience. The course is designed to perfectly balance theory and practice. You can take part in several Kaggle Inclass competitions held during the course. From spring 2017 to fall 2019, 6 sessions of took place - 26k participants applied, 10k converted to passing the first assignment, about 1500 participants finished the course. Currently, the course is in self-paced mode. Check out a thorough Roadmap guiding you through the self-paced

Mirrors (🇬🇧-only): (main site), Kaggle Dataset (same notebooks as Kaggle Notebooks)

Self-paced passing

The Roadmap will guide you through 11 weeks of For each week, from Pandas to Gradient Boosting, instructions are given on what artciles to read, lectures to watch, what assignments to accomplish.


This is the list of published articles on 🇬🇧, 🇷🇺. Also notebooks in Chinese are mentioned 🇨🇳 and links to Kaggle Notebooks (in English) are given. Icons are clickable.

  1. Exploratory Data Analysis with Pandas 🇬🇧 🇷🇺 🇨🇳, Kaggle Notebook
  2. Visual Data Analysis with Python 🇬🇧 🇷🇺 🇨🇳, Kaggle Notebooks: part1, part2
  3. Classification, Decision Trees and k Nearest Neighbors 🇬🇧 🇷🇺 🇨🇳, Kaggle Notebook
  4. Linear Classification and Regression 🇬🇧 🇷🇺 🇨🇳, Kaggle Notebooks: part1, part2, part3, part4, part5
  5. Bagging and Random Forest 🇬🇧 🇷🇺 🇨🇳, Kaggle Notebooks: part1, part2, part3
  6. Feature Engineering and Feature Selection 🇬🇧 🇷🇺 🇨🇳, Kaggle Notebook
  7. Unsupervised Learning: Principal Component Analysis and Clustering 🇬🇧 🇷🇺 🇨🇳, Kaggle Notebook
  8. Vowpal Wabbit: Learning with Gigabytes of Data 🇬🇧 🇷🇺 🇨🇳, Kaggle Notebook
  9. Time Series Analysis with Python, part 1 🇬🇧 🇷🇺 🇨🇳. Predicting future with Facebook Prophet, part 2 🇬🇧, 🇨🇳 Kaggle Notebooks: part1, part2
  10. Gradient Boosting 🇬🇧 🇷🇺, 🇨🇳, Kaggle Notebook


Videolectures are uploaded to this YouTube playlist. Introduction, video, slides

  1. Exploratory data analysis with Pandas, video
  2. Visualization, main plots for EDA, video
  3. Decision trees: theory and practical part
  4. Logistic regression: theoretical foundations, practical part (baselines in the "Alice" competition)
  5. Ensembles and Random Forest – part 1. Classification metrics – part 2. Example of a business task, predicting a customer payment – part 3
  6. Linear regression and regularization - theory, LASSO & Ridge, LTV prediction - practice
  7. Unsupervised learning - Principal Component Analysis and Clustering
  8. Stochastic Gradient Descent for classification and regression - part 1, part 2 TBA
  9. Time series analysis with Python (ARIMA, Prophet) - video
  10. Gradient boosting: basic ideas - part 1, key ideas behind Xgboost, LightGBM, and CatBoost + practice - part 2


  1. Exploratory data analysis with Pandas, nbviewer, Kaggle Notebook, solution
  2. Analyzing cardiovascular disease data, nbviewer, Kaggle Notebook, solution
  3. Decision trees with a toy task and the UCI Adult dataset, nbviewer, Kaggle Notebook, solution
  4. Sarcasm detection, Kaggle Notebook, solution. Linear Regression as an optimization problem, nbviewer, Kaggle Notebook
  5. Logistic Regression and Random Forest in the credit scoring problem, nbviewer, Kaggle Notebook, solution
  6. Exploring OLS, Lasso and Random Forest in a regression task, nbviewer, Kaggle Notebook, solution
  7. Unsupervised learning, nbviewer, Kaggle Notebook, solution
  8. Implementing online regressor, nbviewer, Kaggle Notebook, solution
  9. Time series analysis, nbviewer, Kaggle Notebook, solution
  10. Beating baseline in a competition, Kaggle Notebook

Kaggle competitions

  1. Catch Me If You Can: Intruder Detection through Webpage Session Tracking. Kaggle Inclass
  2. DotA 2 winner prediction. Kaggle Inclass


If you happen to cite in your work, you can use this bibtex

    author = {Kashnitsky, Yury},
    title = { – Open Machine Learning Course},
    year = {2020},
    publisher = {GitHub},
    journal = {GitHub repository},
    howpublished = {\url{}},


Discussions are held in the #mlcourse_ai channel of the OpenDataScience ( Slack team.

The course is free but you can support organizers by making a pledge on Patreon (monthly support) or a one-time payment on Ko-fi. Thus you'll foster the spread of Machine Learning in the world!

Donate Donate


Open Machine Learning Course




No releases published


No packages published