|
|
3 weeks ago | |
|---|---|---|
| .. | ||
| 1-Introduction | 3 weeks ago | |
| 2-Regression | 3 weeks ago | |
| 3-Web-App | 3 weeks ago | |
| 4-Classification | 3 weeks ago | |
| 5-Clustering | 3 weeks ago | |
| 6-NLP | 3 weeks ago | |
| 7-TimeSeries | 3 weeks ago | |
| 8-Reinforcement | 3 weeks ago | |
| 9-Real-World | 3 weeks ago | |
| docs | 2 months ago | |
| quiz-app | 2 months ago | |
| sketchnotes | 2 months ago | |
| AGENTS.md | 2 months ago | |
| CODE_OF_CONDUCT.md | 2 months ago | |
| CONTRIBUTING.md | 2 months ago | |
| PyTorch_Fundamentals.ipynb | 2 months ago | |
| README.md | 3 weeks ago | |
| SECURITY.md | 2 months ago | |
| SUPPORT.md | 2 months ago | |
| TROUBLESHOOTING.md | 2 months ago | |
| for-teachers.md | 2 months ago | |
README.md
🌐 Multi-Language Support
Supported via GitHub Action (Automated & Always Up-to-Date)
Arabic | Bengali | Bulgarian | Burmese (Myanmar) | Chinese (Simplified) | Chinese (Traditional, Hong Kong) | Chinese (Traditional, Macau) | Chinese (Traditional, Taiwan) | Croatian | Czech | Danish | Dutch | Estonian | Finnish | French | German | Greek | Hebrew | Hindi | Hungarian | Indonesian | Italian | Japanese | Kannada | Korean | Lithuanian | Malay | Malayalam | Marathi | Nepali | Nigerian Pidgin | Norwegian | Persian (Farsi) | Polish | Portuguese (Brazil) | Portuguese (Portugal) | Punjabi (Gurmukhi) | Romanian | Russian | Serbian (Cyrillic) | Slovak | Slovenian | Spanish | Swahili | Swedish | Tagalog (Filipino) | Tamil | Telugu | Thai | Turkish | Ukrainian | Urdu | Vietnamese
Make una join our community
We get one Discord "Learn with AI" series wey dey go on — learn more and join us for Learn with AI Series from 18 - 30 September, 2025. You go get beta tips and tricks on how to use GitHub Copilot for Data Science.
Machine Learning for Beginners - A Curriculum
🌍 Make we waka round di world as we dey explore Machine Learning through different cultures 🌍
Cloud Advocates for Microsoft dey happy to give una one 12-week, 26-lesson curriculum wey dey all about Machine Learning. For dis curriculum, you go learn wetin people dey call classic machine learning, we go mainly use Scikit-learn as library and sidon comot deep learning, wey dey inside our AI for Beginners' curriculum. Pair these lessons with our 'Data Science for Beginners' curriculum too!
Waka with us round di world as we apply these classic techniques to data wey come from plenty different places. Every lesson get pre- and post-lesson quizzes, written instructions to finish di lesson, one solution, one assignment, and more. Our project-based way of teaching make you dey learn as you dey build — na better way make new skills hold.
✍️ Big tnx to our authors Jen Looper, Stephen Howell, Francesca Lazzeri, Tomomi Imura, Cassie Breviu, Dmitry Soshnikov, Chris Noring, Anirban Mukherjee, Ornella Altunyan, Ruth Yakubu and Amy Boyd
🎨 Tnx to our illustrators Tomomi Imura, Dasani Madipalli, and Jen Looper
🙏 Special tnx 🙏 to our Microsoft Student Ambassador authors, reviewers, and content contributors, especially Rishit Dagli, Muhammad Sakib Khan Inan, Rohan Raj, Alexandru Petrescu, Abhishek Jaiswal, Nawrin Tabassum, Ioan Samuila, and Snigdha Agarwal
🤩 Extra tnx to Microsoft Student Ambassadors Eric Wanjau, Jasleen Sondhi, and Vidushi Gupta for our R lessons!
How to start
Follow these steps:
- Fork di Repository: Click on the "Fork" button for di top-right corner of dis page.
- Clone di Repository:
git clone https://github.com/microsoft/ML-For-Beginners.git
find all additional resources for this course in our Microsoft Learn collection
🔧 Need help? Check our Troubleshooting Guide for solutions to common issues with installation, setup, and running lessons.
Students, to use this curriculum, fork the whole repo to your own GitHub account and do the exercises on your own or with group:
- Start wit pre-lecture quiz.
- Read di lecture and do di activities, stop small and reason for each knowledge check.
- Try build di projects by understanding di lessons instead of just running di solution code; still di code dey for
/solutionfolders for each project-oriented lesson. - Do di post-lecture quiz.
- Finish di challenge.
- Finish di assignment.
- After you don finish one lesson group, visit di Discussion Board and "learn out loud" by filling di correct PAT rubric. PAT na Progress Assessment Tool — na one rubric wey you go fill to help your learning. You fit also react to other PATs so we all fit learn together.
If you wan study more, we recommend make you follow these Microsoft Learn modules and learnin paths.
Teachers, we don include some suggestions on how make you use this curriculum.
Video walkthroughs
Some lessons get short video form. You fit find dem inside di lessons, or for di ML for Beginners playlist on the Microsoft Developer YouTube channel by clicking di image below.
Meet the Team
Gif by Mohit Jaisal
🎥 Click di image wey dey above for video about di project and di people wey build am!
Pedagogy
We pick two teaching principles when we dey build this curriculum: make am hands-on and project-based, and include frequent quizzes. Also, dis curriculum get one common theme to hold everything together.
By make content follow projects, students go dey more engaged and dem go remember di concepts well. Plus, one low-stakes quiz before class dey set student intention, and another quiz after class go help memory stay. This curriculum make am flexible and fun — you fit take am full or small part. Projects start small and dem go dey more complex as di 12-week cycle dey finish. E still get one postscript about how ML dey work for real world, wey teachers fit use as extra credit or base for discussion.
Find our Code of Conduct, Contributing, Translation, and Troubleshooting guidelines. We dey welcome your constructive feedback!
Each lesson includes
- optional sketchnote
- optional supplemental video
- video walkthrough (some lessons only)
- pre-lecture warmup quiz
- written lesson
- for project-based lessons, step-by-step guides on how to build the project
- knowledge checks
- a challenge
- supplemental reading
- assignment
- post-lecture quiz
A note about languages: These lessons mainly dem write for Python, but many still dey available for R. To finish an R lesson, go to di
/solutionfolder and find di R lessons. Dem get an .rmd extension wey mean R Markdown file — na basically Markdown wey fit holdcode chunks(R or other languages) and oneYAML header(wey dey guide how outputs go format like PDF). As e be, e good for data science authoring cos e allow you join your code, di output, and your notes inside Markdown. R Markdown documents fit render go output formats like PDF, HTML, or Word.
A note about quizzes: All quizzes dey inside di Quiz App folder, total 52 quizzes, each get three questions. Dem link the quizzes from di lessons but you fit run di quiz app locally; follow di instruction inside the
quiz-appfolder to host am locally or deploy to Azure.
| Lesson Number | Topic | Lesson Grouping | Learning Objectives | Linked Lesson | Author |
|---|---|---|---|---|---|
| 01 | Intro wey dey explain machine learning | Introduction | Learn di basic concepts wey dey behind machine learning | Lesson | Muhammad |
| 02 | Di history of machine learning | Introduction | Learn di history wey dey under dis field | Lesson | Jen and Amy |
| 03 | Fairness and machine learning | Introduction | Wetin be di important philosophical mata about fairness wey students suppose consider when dem dey build an apply ML models? | Lesson | Tomomi |
| 04 | Techniques wey dem dey use for machine learning | Introduction | Which techniques ML researchers dey use to build ML models? | Lesson | Chris and Jen |
| 05 | Introduction to regression | Regression | Start to use Python and Scikit-learn for regression models | Python • R | Jen • Eric Wanjau |
| 06 | North American pumpkin prices 🎃 | Regression | Visualize and clean data to prepare for ML | Python • R | Jen • Eric Wanjau |
| 07 | North American pumpkin prices 🎃 | Regression | Build linear and polynomial regression models | Python • R | Jen and Dmitry • Eric Wanjau |
| 08 | North American pumpkin prices 🎃 | Regression | Build logistic regression model | Python • R | Jen • Eric Wanjau |
| 09 | A Web App 🔌 | Web App | Build web app wey go use your trained model | Python | Jen |
| 10 | Introduction to classification | Classification | Clean, prepare, and visualize your data; introduction to classification | Python • R | Jen and Cassie • Eric Wanjau |
| 11 | Delicious Asian and Indian cuisines 🍜 | Classification | Introduction to classifiers | Python • R | Jen and Cassie • Eric Wanjau |
| 12 | Delicious Asian and Indian cuisines 🍜 | Classification | More classifiers | Python • R | Jen and Cassie • Eric Wanjau |
| 13 | Delicious Asian and Indian cuisines 🍜 | Classification | Build recommender web app wey dey use your model | Python | Jen |
| 14 | Introduction to clustering | Clustering | Clean, prepare, and visualize your data; Introduction to clustering | Python • R | Jen • Eric Wanjau |
| 15 | Exploring Nigerian Musical Tastes 🎧 | Clustering | Explore di K-Means clustering method | Python • R | Jen • Eric Wanjau |
| 16 | Introduction to natural language processing ☕️ | Natural language processing | Learn di basics about NLP by building a simple bot | Python | Stephen |
| 17 | Common NLP Tasks ☕️ | Natural language processing | Deepen your NLP knowledge by understanding common tasks wey dey necessary when you dey deal with language structures | Python | Stephen |
| 18 | Translation and sentiment analysis ♥️ | Natural language processing | Translation and sentiment analysis with Jane Austen | Python | Stephen |
| 19 | Romantic hotels of Europe ♥️ | Natural language processing | Sentiment analysis with hotel reviews 1 | Python | Stephen |
| 20 | Romantic hotels of Europe ♥️ | Natural language processing | Sentiment analysis with hotel reviews 2 | Python | Stephen |
| 21 | Introduction to time series forecasting | Time series | Introduction to time series forecasting | Python | Francesca |
| 22 | ⚡️ World Power Usage ⚡️ - time series forecasting with ARIMA | Time series | Time series forecasting with ARIMA | Python | Francesca |
| 23 | ⚡️ World Power Usage ⚡️ - time series forecasting with SVR | Time series | Time series forecasting with Support Vector Regressor | Python | Anirban |
| 24 | Introduction to reinforcement learning | Reinforcement learning | Introduction to reinforcement learning with Q-Learning | Python | Dmitry |
| 25 | Help Peter avoid the wolf! 🐺 | Reinforcement learning | Reinforcement learning Gym | Python | Dmitry |
| Postscript | Real-World ML scenarios and applications | ML in the Wild | Interesting and revealing real-world applications of classical ML | Lesson | Team |
| Postscript | Model Debugging in ML using RAI dashboard | ML in the Wild | Model Debugging in Machine Learning using Responsible AI dashboard components | Lesson | Ruth Yakubu |
find all additional resources for this course in our Microsoft Learn collection
Access wey no need internet
You fit run dis documentation offline by using Docsify. Fork dis repo, install Docsify for your local machine, and then for the root folder of dis repo, type docsify serve. Di website go dey served for port 3000 on your localhost: localhost:3000.
PDFs
Find pdf of di curriculum wit links here.
🎒 Oda Courses
Our team dey produce oda courses! Check dem out:
LangChain
Azure / Edge / MCP / Agents
Generative AI Series
Main Tin Wey You Go Learn
Copilot Series
How to Get Help
If you jam stuck or get any question about how to build AI apps, join other learners and experienced developers for discussion about MCP. Na supportive community wey dey welcome questions and where people dey share knowledge freely.
If you get product feedback or you see errors while you dey build, visit:
Abeg note: We use AI translation service (Co-op Translator: https://github.com/Azure/co-op-translator) take translate dis document. Even though we dey try make am correct, make you sabi say automatic translations fit get mistakes or wrong parts. The original document for im own language na the main source wey get authority. If na important information, make you use professional human translator. We no be liable for any misunderstanding or misinterpretation wey fit happen because of this translation.


