A 10-week, 20-lesson beginner curriculum from Microsoft covering core data science topics with Python, quizzes and projects.
microsoft/ML-For-Beginners
A 12-week, 26-lesson beginner curriculum on classic machine learning using Scikit-learn, with Python and R lessons and quizzes.
- Stars
- 91,621
- Forks
- 22,676
- Open issues
- 17
- Last commit
- 2 days ago
What is it?
ML for Beginners is a structured curriculum from Microsoft's Cloud Advocates that teaches classic machine learning, meaning techniques that do not rely on deep learning. It is built mainly on Scikit-learn and organized into 26 lessons across 12 weeks. Topics include regression, classification, clustering, natural language processing, time series forecasting, and reinforcement learning, along with a postscript on real-world applications.
Each lesson pairs a pre-lecture quiz and written instructions with a solution, a challenge, and an assignment. Many lessons are project-based and use datasets from different regions of the world, such as North American pumpkin prices and Asian and Indian cuisines. Most lessons include Python code in Jupyter notebooks, and many have R equivalents. The repository also contains a quiz app with 52 quizzes that can be run locally.
The course is written for students working alone or in groups, and includes guidance for teachers. Content is available in more than 50 translated languages.
Key features
- 01Covers regression, classification, clustering, NLP, time series, and reinforcement learning
- 02Project-based lessons built mainly on Scikit-learn in Python
- 03R versions available for many lessons
- 04Pre- and post-lesson quizzes, with 52 quizzes in a runnable local app
- 05Includes solutions, challenges, and assignments for each lesson
- 06Content translated into more than 50 languages
Use cases
- Self-study of classic machine learning for developers new to the field
- Classroom or teacher-led ML course using the provided lesson plans
- Learning Scikit-learn through hands-on regression and classification projects
- Pairing with the Data Science for Beginners curriculum
Quick start
- 1
Fork the repository on GitHub
- 2
Clone the repository locally
git clone https://github.com/microsoft/ML-For-Beginners.git
Topics
FAQ
- What is ML-For-Beginners?
- A 12-week, 26-lesson beginner curriculum on classic machine learning using Scikit-learn, with Python and R lessons and quizzes. ML for Beginners is a structured curriculum from Microsoft's Cloud Advocates that teaches classic machine learning, meaning techniques that do not rely on deep learning. It is built mainly on Scikit-learn and organized into 26 lessons across 12 weeks. Topics include regression, classification, clustering, natural language processing, time series forecasting, and reinforcement learning, along with a postscript on real-world applications.
- Is ML-For-Beginners free to use? What license does it have?
- ML-For-Beginners is open source under the MIT license. Check the license terms before using it in commercial products.
- Is ML-For-Beginners still maintained?
- Actively maintained. The last commit to ML-For-Beginners was on Oct 18, 2026.
- What can I use ML-For-Beginners for?
- Self-study of classic machine learning for developers new to the field Classroom or teacher-led ML course using the provided lesson plans Learning Scikit-learn through hands-on regression and classification projects Pairing with the Data Science for Beginners curriculum
- How do I install ML-For-Beginners?
- Fork the repository on GitHub Clone the repository locally: git clone https://github.com/microsoft/ML-For-Beginners.git
- Where can I get ML-For-Beginners?
- The source code and installation instructions are on GitHub: https://github.com/microsoft/ML-For-Beginners
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A teaching harness for coding agents that plans a course around you, builds lessons, and adapts exercises from your recorded progress.
Python library that turns scripts into interactive web apps for data dashboards, reports and chat apps.
Ray is a unified framework for scaling Python and AI applications from a laptop to a cluster, with a distributed runtime and AI libraries.
Python package for quickly building and sharing web demos and UIs for machine learning models, APIs, or any Python function.
A drop-in Jupyter replacement with an AI agent, a `.deepnote` YAML notebook format, and a block-based editor for Python, R, and SQL.