Introduction to Machine Learning with Decision Trees, Random Forests, and XGBoost
Lesson Overview: In this lesson, we will cover the basics of machine learning using three popular algorithms: Decision Trees, Random Forests, and XGBoost. We’ll start by exploring how to process data with both categorical and continuous features, followed by a step-by-step implementation of each algorithm.
🡢 Data Processing: In this section, we load the dataset, separate features and target variable, and encode categorical features using OneHotEncoding. This step prepares the data for training our machine learning models
🡢 Encode Categorical Features
🡢 Decision Trees
🡢 Random Forests
🡢 Grid Search for Hyperparameter Optimization
🡢 What is Gradient boosting?
🡢 Let’s use SHAP
Linear Regression, Naive Bayes, and SVMs
🡢 Simple Linear Regression
🡢 Basis Function Regression
🡢 Gaussian Basis Functions
🡢 Regularization: ridge and lasso
🡢 Naive Bayes Classification: bayesian and Gaussian Naive Bayes
🡢 Multinomial Naive Bayes
🡢 How does SVM work? SVM kernels
CNNs, Simple Feed Forward NNs
🡢 Building blocks of CNNs: kernels and pooling layers
🡢 What are in Feature Maps?
Autoencoders and Conv-Autoencoders
🡢 Autoencoder Architecture
🡢 Convolutional Autoencoder
Hyperparameter tuning
🡢 Grid search: drawbacks
🡢 Randomised search: drawbacks
🡢 Bayesian optimisation: advantages and drawbacks
Counterfactual Explainability for Images: Unveiling Model Decision-Making
🡢 Counterfactual vs. Adversarial: A Thin Line
🡢 Loading a Pre-trained ResNet50 Model
🡢 Generating Counterfactual Image
Graph Counterfactual Explainations
🡢 Graph Classification Oracle with GCN
🡢 Training Function for Graph Classification Model
🡢 Counterfactual Generation Function
🡢 Graph Visualization with Edge Modifications Function