Data science

Machine learning with Python and scikit-learn

Prepare data, train and evaluate models, test a hypothesis and build a recommendation system.

Request this program
Duration
21 h · 3 days
Level
Intermediate
Format
On site · Remote · Blended
Max. group size
12 participants

Overview

This program moves from data analysis to predictive modeling. Participants prepare data with NumPy, pandas and Matplotlib, build regression and classification models with scikit-learn, evaluate and compare their results, then tackle clustering, A/B tests and recommendations. Key concepts (cross-validation, bias-variance trade-off) are explained and applied.

Who this program is for

  • Data analysts and developers
  • Statisticians moving into machine learning
  • Data analysts evolving towards data science

Prerequisites

  • Coding or scripting experience
  • High-school level mathematics

Learning objectives

  • Prepare and clean data
  • Build regression and classification models with scikit-learn
  • Use trees, random forests, K-nearest neighbors, SVMs and simple networks
  • Evaluate and compare models with cross-validation
  • Perform clustering and dimensionality reduction
  • Design and interpret an A/B test
  • Produce recommendations by collaborative filtering

Detailed curriculum

6 modules · 21 h · 3 days

Day 1
Overview and data preparation3.5 h🛠 1 workshop
30% theory · 70% practice
  • Machine learning: framework and vocabulary
  • Useful Python refreshers
  • NumPy, SciPy and pandas
  • Cleaning, imputing and encoding
  • Visualizing with Matplotlib
🛠 Hands-on workshops
Cleaning a dataset1.5 h

Prepare a heterogeneous dataset for modeling.

✅ Deliverable : A clean dataset
Features and dimensionality reduction3.5 h
50% theory · 50% practice
  • Feature extraction and selection
  • Normalization
  • Principal component analysis
  • Train / test split
  • Data leakage pitfalls
Day 2
Regression and classification3.5 h🛠 1 workshop
30% theory · 70% practice
  • Linear regression and regularization
  • Logistic regression
  • Decision trees
  • Performance metrics
  • Reading the confusion matrix
🛠 Hands-on workshops
First models2 h

Train and compare regression and classification on a business case.

✅ Deliverable : A modeling notebook
Unsupervised learning and other models3.5 h
50% theory · 50% practice
  • K-means and clustering
  • Support vector machines
  • Simple neural networks
  • Choosing an algorithm
  • Interpreting a model
Day 3
Validation and ensembles3.5 h🛠 1 workshop
30% theory · 70% practice
  • Cross-validation
  • Bias-variance trade-off
  • Random forests and ensemble learning
  • K-nearest neighbors
  • Hyperparameter search
🛠 Hands-on workshops
Optimize a model2 h

Tune and compare several models.

✅ Deliverable : An optimized, justified model
A/B tests and recommendations3.5 h🛠 1 workshop
30% theory · 70% practice
  • Designing an experiment
  • Interpreting an A/B test
  • Collaborative filtering
  • Measuring recommendation quality
  • Going to production: notions
🛠 Hands-on workshops
Recommendation engine1.5 h

Build a small recommendation system.

✅ Deliverable : A recommendation prototype

Tools and technologies

Jupyter NotebookMatplotlibNumPyPythonpandasscikit-learn

Teaching methods

  • Alternating short lectures and hands-on work
  • Live demonstrations by the trainer
  • Capstone project built throughout the modules
  • Group corrections and discussion of best practices

Assessment

  • Hands-on exercises corrected in each module
  • Mini-project completed at the end of the course
  • Knowledge-check quiz

Required equipment

  • A computer with an internet connection
  • Python 3 with Jupyter, NumPy, pandas, Matplotlib and scikit-learn (or an online environment)

Resources provided

  • Course materials and repository of corrected exercises

Career outcomes

  • A reproducible machine learning pipeline
  • Evaluated and compared models
  • An end-to-end project notebook

Related video courses

My video courses that go with this program, to get ready for the training or to review afterwards. Free with an account.