
Kayla guides you through an end-to-end binary classification project, drawing on her data science and machine learning engineering experience with Python, SQL, Excel, and Tableau.
Tackle a binary classification problem to predict if a candidate is seeking a job change, using a Kaggle dataset, and launch a Jupyter notebook with conda and pip installs.
Ensure reliable, accurate data collection from SQL databases with QA processes and data dictionaries; load, clean, and merge training and test data, and select meaningful features for a binary target.
Perform exploratory data analysis to validate data quality, ensure a record per person with enrollee ids, remove duplicates, handle missing labels, and examine distributions (training hours, education levels) for explainability.
Focus on feature engineering by expanding features with internal and external data, bucketed training hours, and third-party data like census data and Glassdoor to boost job-search prediction.
Choose the gradient boosted decision tree model Lightgbm for binary classification, leveraging its robust handling of class imbalance and null values without imputation.
Drop nonessential columns, convert categorical fields to pandas dummies, convert the target to 0/1, assess correlations, and set up an 80/20 train-test split to prepare x and y.
Run model training with a stratified shuffle split creating five splits, use gridsearchcv over a param grid, and apply cross-validation to optimize hyperparameters and output a performance metric.
Evaluate model performance on a 20% holdout using the roc auc score, compare training and test scores, and note feature importances for data-centric improvements.
Learn how SHAP values quantify each feature's contribution to predictions, compare with importances, and visualize directional effects to explain model decisions for data science applications.
You will build a binary classification machine learning model to predict if a person is looking for a new job or not. You'll go through the end to end machine learning project-- data collection, exploration, feature engineering, model selection, data transformation, model training, model evaluation and model explainability. We will brainstorm ideas throughout each step and by the end of the project you'll be able to explain which features determine if someone is looking for a new job or not.
The template of this Jupyter Notebook can be applied to many other binary classification use cases. Questions like -- will X or Y happen, will a user choose A or B, will a person sign up for my product (yes or no), etc. You will be able to apply the concepts learned here to many useful projects throughout your organization!
This course is best for those with beginner to senior level Python and Data Science understanding. For more beginner levels, feel free to dive in and ask questions along the way. For more advanced levels, this can be a good refresher on model explainability, especially if you have limited experience with this. Hopefully you all enjoy this course and have fun with this project!