Machine learning with Python and scikit-learn
Prepare data, train and evaluate models, test a hypothesis and build a recommendation system.
- 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
Overview and data preparation
- Machine learning: framework and vocabulary
- Useful Python refreshers
- NumPy, SciPy and pandas
- Cleaning, imputing and encoding
- Visualizing with Matplotlib
Prepare a heterogeneous dataset for modeling.
Features and dimensionality reduction
- Feature extraction and selection
- Normalization
- Principal component analysis
- Train / test split
- Data leakage pitfalls
Regression and classification
- Linear regression and regularization
- Logistic regression
- Decision trees
- Performance metrics
- Reading the confusion matrix
Train and compare regression and classification on a business case.
Unsupervised learning and other models
- K-means and clustering
- Support vector machines
- Simple neural networks
- Choosing an algorithm
- Interpreting a model
Validation and ensembles
- Cross-validation
- Bias-variance trade-off
- Random forests and ensemble learning
- K-nearest neighbors
- Hyperparameter search
Tune and compare several models.
A/B tests and recommendations
- Designing an experiment
- Interpreting an A/B test
- Collaborative filtering
- Measuring recommendation quality
- Going to production: notions
Build a small recommendation system.
Tools and technologies
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.

