Machine learning & data science
Train and evaluate classical ML models
Scikit-learn workflow: features, train/test split, cross-validation, metrics, overfitting.
~40 focused hours·intermediate
Tools: scikit-learn, pandas, NumPy, XGBoost, Jupyter
Market relevance — share of job ads asking for this
What employers mean
You should be able to…
- Load and clean a tabular dataset (missing values, outliers, encoding categoricals)
- Engineer features and build a scikit-learn Pipeline that doesn't leak test data
- Do a correct train/validation/test split and k-fold cross-validation
- Train and compare a linear model, a tree, and a boosted model (XGBoost/LightGBM)
- Pick and justify the right metric (accuracy vs precision/recall/F1/AUC/RMSE) for the business problem
- Diagnose overfitting vs underfitting from learning curves and fix it
- Tune hyperparameters with GridSearchCV/RandomizedSearchCV or Optuna
- Explain feature importance / SHAP values to a non-technical stakeholder
Needs first: Write production-quality Python for AI work
Learn — free, link-checked
The few resources that matter
Read · beginner · 25 min · scikit-learn.org
Getting Started
The canonical Pipeline/GridSearchCV/metrics pattern straight from the library docs -- copy-correct code beats half-remembered tutorials. — scikit-learn
Course · beginner · 180 min · kaggle.com
Intro to Machine Learning
Hands-on, notebook-based: train your first scikit-learn model and submit to a Kaggle competition the same afternoon. — Kaggle Learn
Watch · beginner · 500 min · youtube.com
Machine Learning
Clear, visual explanations of bias/variance, regularization, trees, boosting and metrics -- the intuition interviewers probe for beyond sklearn API calls. — StatQuest with Josh Starmer
Course · beginner · 600 min · developers.google.com
Machine Learning Crash Course
Google's own intro course with interactive exercises on loss, gradient descent, generalization and overfitting -- the vocabulary every ML interview opens with. — Google for Developers
Course · intermediate · 240 min · kaggle.com
Intermediate Machine Learning
Covers missing data, categorical encoding, pipelines, cross-validation, XGBoost and leakage -- exactly the practical gaps freshers get caught on in interviews. — Kaggle Learn
Practice
NBFC loan default risk model
Use a public Indian/Kaggle credit dataset (e.g. LendingClub or a similar loan dataset) to predict default risk for an NBFC-style personal loan book. Build a full scikit-learn pipeline with feature engineering, handle class imbalance, compare logistic regression vs XGBoost, and report ROC-AUC and a cost-weighted metric instead of raw accuracy since defaults are rare.
Done when
- Pipeline object (not manual steps) handles preprocessing + model, no leakage from test fold
- At least 2 models compared with cross-validated metrics reported in a table
- Class imbalance explicitly addressed (class weights, SMOTE, or threshold tuning) with before/after metrics
- README explains which metric was optimized for and why, with a confusion matrix on the held-out test set
Prove it
Evidence a recruiter can check
- Public GitHub repo with README showing the pipeline diagram and final metrics table
- A short write-up (blog or notebook) comparing 2+ models with justified metric choice
- Kaggle profile with at least one scored notebook/competition submission
- Ability to explain, live, why a specific feature was engineered or dropped
Interview
Questions you'll get asked
- Walk me through your ML pipeline for [X] end to end -- what would you change if precision mattered more than recall?
- How do you detect and prevent data leakage in a training pipeline?
- Explain bias-variance tradeoff with an example from a project you built
- When would you choose logistic regression over a random forest, and vice versa?
- How do you handle a severely imbalanced dataset (e.g. 2% fraud rate)?
- What's the difference between L1 and L2 regularization, and when do you use each?
- How would you validate a model before it goes to production?