Skip to content

Latest commit

 

History

History
217 lines (155 loc) · 17.2 KB

File metadata and controls

217 lines (155 loc) · 17.2 KB

🤖 Introduction to Machine Learning

Arewa DataScience Academy Course

Based on: Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow — Aurélien Géron
Instructors: License: MIT Python 3.10+ scikit-learn Open In Colab


Table of Contents


About This Course

This is a 12-week intensive summer school on Machine Learning, designed for students with some Python experience. Each session is 2 hours: 1 hour of lecture followed by 1 hour of hands-on lab in Google Colab.

The course takes a practical, code-first approach — every concept is immediately reinforced with working scikit-learn code. By the end, students can build, evaluate, and reason about a wide range of ML models.


Key Features

  • 📚 12 lecture decks — covers the full supervised + unsupervised ML landscape
  • 💻 12 Colab-ready lab notebooks — Guided → Fill-in-the-blank → Challenge structure
  • 🔬 Real datasets — MNIST, California Housing, Iris, Breast Cancer, and more
  • 🧪 Consistent pedagogy — every lab has the same 3-part format for predictable pacing
  • 📖 Textbook-aligned — all slides reference Géron's Hands-On ML (3rd ed.)

Prerequisites

Skill Level Required
Python Some experience (loops, functions, lists)
Math Basic algebra; no calculus required
Statistics Mean, variance, correlation
Machine Learning None — this is the starting point

Students should be comfortable reading Python code. No prior ML or deep learning experience is assumed.


Weekly Schedule

Format: 2 hours/week · 1hr lecture + 1hr lab · 12 weeks

Setup and Installation

In this initial part, we’ll guide you through the essential tools needed for data science and machine learning, including installing VSCode, Jupyter Notebooks, Python virtual environments, Git for version control, GitHub for collaboration, Markdown, and creating a Medium blog post.

Title Resource Recording Mentor
Initial Setup MacOS | Windows | Linux Tutorial Dr. Idris
Blogging using Medium How to write Medium Article Recording Lukman
Basic Command Line Operations CommandLine Recording1| Recording2 Dr. Idris | Falalu
Setup Git and GitHub Git/GitHub Recording1 | Recording2 Dr. Idris | Falalu
Python Virtual Environments Virtual Environment Recording Dr. Shamsuddeen
VSCode for Data Science VSCode for DS Recording Dr. Shamsuddeen
Introduction to Markdown Markdown Recording Dr. Shamsuddeen
Customizing GitHub Profile Customizing Profile Recording Lukman
Google Colab Google Colab Recording Dr. Idris

Assignments: Setup and Installation

Assignment Name Link to Assignment
Getting Started with Medium Getting Started with Medium
GitHub Fundamentals GitHub Fundamentals Assignment
GitHub Profile Customize your Proile

Plan and Resources

Week Topic Slides Lab Recording Key Concepts Instructor
1 Introduction to ML 📊 Slides 💻 Lab 01 🎥 Recording ML types, the ML landscape, Python/NumPy/Pandas Dr. I. S. Ahmad
2 End-to-End ML Project — EDA 📊 Slides 💻 Lab 02 🎥 Recording Problem framing, data exploration, geographic visualization Dr. I. S. Ahmad
3 Data Preprocessing & Pipelines 📊 Slides 💻 Lab 03 🎥 Recording Imputation, scaling, Pipeline, ColumnTransformer Dr. I. S. Ahmad
4 Binary Classification 📊 Slides 💻 Lab 04 🎥 Recording SGD classifier, precision, recall, F1, ROC/AUC Dr. I. S. Ahmad
5 Multiclass Classification & Error Analysis 📊 Slides 💻 Lab 05 🎥 Recording OvR, OvO, confusion matrix heatmap, error profiling Dr. I. S. Ahmad
6 Training Models — Linear Regression & GD 📊 Slides 💻 Lab 06 🎥 Recording Normal equation, batch/SGD/mini-batch gradient descent Dr. I. S. Ahmad
7 Support Vector Machines 📊 Slides · Part 2 💻 Lab 08 🎥 Recording Max margin, kernel trick, RBF/polynomial kernels, SVR Dr. I. S. Ahmad
8 Decision Trees 📊 Slides 💻 Lab 09 🎥 Recording CART, Gini impurity, depth regularization, feature importance Dr. I. S. Ahmad
9 Ensemble Learning & Random Forests 📊 Slides 💻 Lab 10 🎥 Recording Bagging, voting, AdaBoost, Gradient Boosting, Random Forests Dr. I. S. Ahmad
10 Neural Networks 📊 Slides 💻 Lab 11 🎥 Recording Perceptron, Keras Sequential API, Dropout, BatchNorm Dr. I. S. Ahmad
11 Unsupervised Learning 📊 Slides 💻 Lab 12 🎥 Recording k-Means, elbow method, silhouette score, DBSCAN, GMMs Dr. I. S. Ahmad

Lab Notebooks

Every lab follows the same structure to make pacing predictable:

Section Duration Description
Part A — Guided ~20 min Pre-filled code — run cells and observe outputs carefully
Part B — Fill in the Blank ~25 min Skeleton code with ??? placeholders to complete
Part C — Challenge ~15 min Open-ended extension problems for fast finishers

All notebooks are designed for Google Colab — no local setup required. Click any badge below to open directly:

Lab Topic Open in Colab
01 Python, NumPy & Pandas Warmup Open In Colab
02 California Housing EDA Open In Colab
03 Preprocessing & Pipelines Open In Colab
04 Binary Classification on MNIST Open In Colab
05 Multiclass Classification & Error Analysis Open In Colab
06 Training Models & Gradient Descent Open In Colab
07 Regularization & Logistic Regression Open In Colab
08 Support Vector Machines Open In Colab
09 Decision Trees Open In Colab
10 Ensemble Learning & Random Forests Open In Colab
11 Neural Networks with Keras Open In Colab
12 Unsupervised Learning — Clustering Open In Colab

Getting Started

Option 1: Google Colab (Recommended)

No setup needed. Click any "Open in Colab" badge above. All required packages (scikit-learn, TensorFlow/Keras, matplotlib, pandas) are pre-installed in Colab.

💡 For Lab 11 (Neural Networks), go to Runtime → Change runtime type → T4 GPU for faster training.

Option 2: Local Setup

# Clone the repository
git clone https://github.com/YOUR_USERNAME/YOUR_REPO.git
cd YOUR_REPO

# Create a virtual environment
python -m venv ml-env
source ml-env/bin/activate       # macOS/Linux
ml-env\Scripts\activate          # Windows

# Install dependencies
pip install -r requirements.txt

# Launch Jupyter
jupyter notebook labs/

requirements.txt:

numpy>=1.24
pandas>=2.0
matplotlib>=3.7
scikit-learn>=1.3
tensorflow>=2.13
jupyter

Recommended Resources

Primary Textbook

Supplementary Reading

Video Series

Practice & Competitions


Contributing

Found a bug in a notebook? Have a suggestion for a challenge problem? Pull requests are welcome.

  1. Fork the repository
  2. Create a feature branch (git checkout -b fix/lab-03-typo)
  3. Commit your changes
  4. Open a pull request

License

This course material is released under the MIT License. The slides are based on content from Hands-On Machine Learning by Aurélien Géron (O'Reilly Media) — please respect the original work's copyright when sharing.


Made with ❤️ by Arewa Datascience Academy