Machine learning has become an essential tool to analyze complex data, detect patterns and make predictions. scikit-learn is the reference library in Python: a unified API, exemplary documentation, exhaustive coverage of classical algorithms.
This course gives your teams a hands-on mastery of machine learning, from the fundamental theoretical concepts to rigorous model selection. I put particular emphasis on methodological rigor: how to avoid overfitting, how to evaluate a model correctly, how to choose hyperparameters without bias. Too many production pipelines are trained with protocols that overestimate their real performance — this is precisely what you learn to avoid here.
After this course, your staff will be able to
- Understand the fundamental concepts: bias, variance, overfitting, regularization
- Prepare and transform data with scikit-learn pipelines
- Apply the main supervised algorithms: regression, classification, SVM, trees, forests
- Use unsupervised methods: K-means clustering, PCA dimensionality reduction
- Evaluate their models rigorously: cross-validation, appropriate metrics, ROC curves
- Select and tune hyperparameters without data leakage
Detailed program
Module 1 — Machine learning foundations
Taxonomy: supervised, unsupervised and semi-supervised learning. Regression and classification: differences and evaluation metrics. Bias and variance: the fundamental trade-off. Underfitting and overfitting. Introduction to the scikit-learn API: fit, predict, transform, Pipeline.
Module 2 — Supervised learning
Linear models: linear regression, logistic regression. Regularization: Ridge, Lasso, ElasticNet — when and why. Support vector machines (SVM): principle and kernels. Decision trees: construction, depth, splitting criteria. Ensemble methods: Random Forest, Gradient Boosting. Preprocessing: scaling, encoding, handling missing values.
Module 3 — Unsupervised learning
K-means clustering: algorithm, choosing the number of clusters, evaluation. Hierarchical clustering and DBSCAN. Dimensionality reduction: PCA, explained variance, visualization. Applications: anomaly detection, segmentation, compression.
Module 4 — Model selection and evaluation
Cross-validation: k-fold, stratified, leave-one-out. Evaluation metrics: accuracy, precision, recall, F1, AUC-ROC. Hyperparameter selection: GridSearchCV, RandomizedSearchCV. Evaluation pitfalls: data leakage, p-hacking, multiple comparisons.
Do your teams have the required Python level?
The data science courses assume a good command of Python: functions, iteration, modules, namespaces. If this is not the case for all your staff, I can add the Python — level 1 module before the data science days. For teams that develop complex code, the Python — advanced module (object-oriented programming, decorators, metaclasses) is also available.
These complements are offered case by case — feel free to mention them in your quote request.
Audience and prerequisites
Target audience
Data scientists, engineers, researchers and Ph.D. students who want to apply machine learning methods to their data with Python.
Prerequisites
Intermediate command of Python, NumPy and Pandas. This course is designed as the natural follow-up to the Python data science level 1 course.
Teaching method
The course alternates short theoretical presentations and hands-on exercises in Jupyter notebooks. Each concept is put into practice immediately. I pay particular attention to making sure every participant keeps up, whatever their starting level, and I calibrate the depth of each topic to the group.
The material is given to the participants at the end of the course, along with the exercise notebooks and their solutions.
Official documentation
scikit-learn (including pipelines), NumPy, Pandas.
Frequently asked questions
What is the difference between this course and a theoretical machine learning course?
The emphasis is on practical methodological rigor: how to avoid overfitting, how to evaluate a model correctly, how to select hyperparameters without bias or data leakage. Evaluation pitfalls (p-hacking, multiple comparisons) are covered explicitly — these are precisely the mistakes made by real production pipelines.
Does the course cover deep learning?
No. The course covers the classical scikit-learn algorithms: regression, classification, SVM, trees, random forests, gradient boosting, K-means, PCA. Deep learning (neural networks, transformers) would require other tools (PyTorch, TensorFlow) — it is not the subject of this course.
What is data leakage and why is it critical?
Data leakage happens when information from the test set contaminates training, producing overly optimistic performance metrics. In production, the model turns out to perform much worse than announced. Hyperparameter selection with GridSearchCV is a classic case covered in module 4.
What math background is needed?
An intuitive understanding of basic concepts (mean, variance, elementary probability) is enough. The course does not focus on mathematical proofs but on understanding the mechanisms and applying them correctly with scikit-learn.
Is this course suitable for Ph.D. students in experimental sciences?
Yes, they are a frequent audience. The methods covered — regression, classification, clustering, PCA — apply directly to the analysis of experimental data. Methodological rigor in model evaluation is particularly useful in the context of scientific publication.
Is the remote format suitable for this kind of training?
Yes. 90% of participants rate the remote format as equivalent or better than in-person. I have been running remote training since 2020 and have built a solid practice of online teaching. I use Zoom, which makes it possible to record the sessions and share them with participants if desired, and CoCalc, an online platform that gives access to preconfigured servers with all the training material and libraries installed. CoCalc also lets me follow each participant's progress in real time and step in directly to correct or unblock.