Machine Learning 2023/24 (24h, 6 ECTS, Laboratory classes)

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

Bardh Prenkaj
Bardh Prenkaj
Computer Scientist, PhD

What’s up!