Hey there! π I'm Sole β I write books and teach courses on feature engineering, feature selection, and machine learning, and I maintain the open-source library Feature-engine. Before that, I spent years building machine learning models for finance and insurance companies, tackling credit risk, fraud, and claims assessment. β¨
In 2017, I launched my first online course, Feature Engineering for Machine Learning, after spotting a gap in the resources available at the time. Since then I've expanded into more courses and books covering feature selection, hyperparameter optimization, imbalanced data, forecasting, and interpretability β taught alongside other great instructors at our online school Train in Data.
I'm currently focused on growing Feature-engine and writing new courses and books. I share what I learn about it β and about machine learning more broadly β through blogs, talks, podcasts, and community work.
Excited to connect, collaborate, and learn together! π
Check out the courses that we teach. Courses are up to date and work with the latest Python library releases!
| Courses | What you will learn |
|---|---|
| Feature engineering for machine learning | Learn to create new features, impute missing data, encode categorical variables, transform and discretize features and much more. |
| Feature selection for machine learning | Learn to select features using wrapper, filter, embedded and hybrid methods, and build simpler and reliable models. |
| Master Hyperparameter Optimization for Tabular Learning | Learn about grid and random search, Bayesian Optimization, Multi-fidelity models, Optuna, Hyperopt, Scikit-Optimize and more. |
| Machine learning with imbalanced data | Learn about under- and over-sampling, ensemble and cost-sensitive methods and improve the performance of models trained on imbalanced data. |
| Feature engineering for time series forecasting | Learn to create lag and window features, impute data in time series, encode categorical variables and much more, specifically for forecasting. |
| Forecasting with Machine Learning | Learn to perform time series forecasting with machine learning models like linear regression, random forests and xgboost. |
| Machine Learning Interpretability | Learn to interpret and explain white-box and black-box models both globally and locally, including methods LIME, SHAP, and more. |
| Clustering and Dimensionality Reduction | Learn to extract information from unlabelled data through clustering and dimensionality reduction techniques. |
Discover plenty of feature engineering and feature selection techniques in my books, where I seamlessly integrate plenty of methods using the latest and most widely used Python libraries.
| Books | Summary |
|---|---|
| Python feature engineering Cookbook, third edition | Over 70 code recipes to implement feature engineering in tabular, transactional, time series and text data. |
| Feature selection in machine learning, second edition | Over 20 methods to select the most predictive features and build simpler, faster, and more reliable machine learning models. |
| Imbalanced Data: Myths, Mistakes and Modern Solutions | A critical look at class imbalance, moving beyond SMOTE and default thresholds toward cost-sensitive learning, proper threshold tuning, and evaluation metrics that reflect real-world requirements. |
I actively contribute to open-source libraries as part of my commitment to fostering collaborative innovation and enhancing accessibility in the realm of data science and machine learning. Here are some libraries I contributed to:
| Library | About | Role |
|---|---|---|
| Feature-engine | Multiple transformers for missing data imputation, categorical encoding, variable transformation and discretization, feature creation and more. | Maintainer. |
| tsfresh | Automatically create features for time series classification | Expanded documentation. |
| imbalanced-learn | Tools for under- and over-sampling and dealing with imbalanced data | Multiple PRs to improve documentation. |
| BorutaPy | Feature selection using Boruta | Maintainer. |
| Eli5 | Tools for machine learning interpretability | Multiple PRs to maintain library and improve documentation. |
Stay connected and follow me across these platforms to stay updated on the latest in data science and machine learning:
| Media | Summary |
|---|---|
| Train in Data | Enroll in our courses and books |
| YouTube | I post about data science, machine learning and how to become a data scientist. |
| Newsletter | I talk about data science, machine learning and how to become a data scientist. |
| I talk about data science, machine learning and how to become a data scientist. | |
| Blog | I write about data science, machine learning, feature engineering and selection and more. |
That's it! I hope to see you around.







