460-2064/01 | 460-2064/02 | 460-8703/01 | Winter 2025/26
This course provides an introduction to the fundamental concepts of machine learning. Students will learn about supervised and unsupervised learning, model evaluation, and practical applications of machine learning algorithms.
Course content and its evaluation.
List of recommended sources.
This introductory lecture provides an overview of the course structure, content, and evaluation methods. It also includes a list of recommended textbooks and online resources to support student learning throughout the course.
Basic concepts of machine learning.
Overview of key principles.
This introductory lecture covers the motivation behind machine learning and the real-world examples that illustrate its importance. A dicussion on the various types of machine learning approaches will also be included.
Data and its significance
Difference data sources
This lecture delves into the importance of data in machine learning. Students will learn about different types of data, and their properties, and how to preprocess data for effective model training.
Statistical properties of data
Covariance and correlation.
This lecture delves into the importance of statistical properties of data. Students will learn about different data distribution, and how to compare two numerical values.
Similarity and Distance understanding
Clustering algorithms
This lecture introduces into clustering algorithms. Describes the concept of similarity and distance between data points. Various clustering techniques such as K-Means and Hierarchical Clustering will be discussed. Also importance of clustering interpretation will be discussed.
Knowledge representation principles
Knowledge representation techniques
This lecture introduces into knowledge representation. Describes the concept of how knowledge can be represented in various forms. Various knowledge representation techniques such as rules and frames will be discussed. Also importance of knowledge representation interpretation will be discussed.
Classification principles
Decision trees, Random forrests.
This lecture introduces classification principles, including nearest neighbor classification, Naive bayes algorithm, tree-based classification algorithms. Basic decision-tree algorithm is described in detail including split criteria. Ensable variants are introduced in lower detail with their benefits. Evaluation of the classification is also introduced.
Principles of evaluation of ML models
Decision trees, Random forrests.
This lecture introduces evaluation metrics for machine learning models, including accuracy, precision, recall, F1 score, and ROC-AUC. The importance of each metric is discussed in the context of different types of ML problems. Practical examples are provided to illustrate how to compute and interpret these metrics.
Principles of regression analysis
Introduction to neural networks.
This lecture covers the fundamentals of regression analysis, including linear regression, polynomial regression, and regularization techniques. Additionally, it introduces the basics of neural networks, including architecture, activation functions, and training processes.
Principles of data transformation
Application of various transformation techniques.
This lecture covers the data transformation techniques used to preprocess and manipulate data for machine learning models. Data cleansing, normalization, standardization, and feature engineering will be discussed in detail, along with practical examples of their application.
Hands-on practice session.
Basic working environment.
In this practical exercise, students will set up their working environment for machine learning experiments. We'll guide you through installing necessary software and libraries, and you'll run your first simple machine learning experiments.
Hands-on practice session.
Basic working environment.
In this practical exercise, students will set up their working environment for machine learning experiments. We'll guide you through installing necessary software and libraries, and you'll run your first simple machine learning experiments.
Hands-on practice session.
Computation of statistical features
Exercise 3 uses the Kaggle House Prices data to practice advanced visualization: loading the dataset, fixing display limits, correctly treating quasi-categorical numerics (e.g., OverallQual/OverallCond), and exploring with seaborn pairplots, subplots (boxplot + countplot), heatmaps of correlations, and a regression scatter.
Hands-on practice session
Computation of clustering of data
Exercise focuses on practical k-means clustering on a real world dataset as well as artificial data. Students will learn to preprocess data, choose the number of clusters, and interpret clustering results using visualizations.
Hands-on practice session
Computation of clustering of data using Hierarchical Clustering
Exercise focuses on practical hierarchical clustering on a real world dataset as well as artificial data. Students will learn to preprocess data, choose the number of clusters, and interpret clustering results using visualizations.
Hands-on practice session
Application of clustering on real-world data
Exercise focuses on practical clustering on a real world dataset. Students will learn to preprocess data, choose the number of clusters, and interpret clustering results using visualizations.
Hands-on experience with Gini index computation.
Application of decision trees on real-world data
Exercise focuses on practical implementation of decision trees splitting criteria on iris datasets. When the splitting criteria is understood, students will apply decision trees on a real-world datasets.
Hands-on experience with classification algorithms.
Application of classification techniques on real-world data
Exercise focuses on practical implementation of classification algorithms. When the algorithms are understood, students will apply them on real-world datasets.
Hands-on experience with classification algorithms.
Application of classification techniques on real-world data
Exercise focuses on practical implementation of classification algorithms. When the algorithms are understood, students will apply them on real-world datasets.
Experimenting with regression algorithms.
Application of regression techniques on real-world data
Exercise focuses on using various regression algorithms from Scikit-learn library. Algorithms are applied on different datasets and their performance is evaluated.
Experimenting with neural networks and Keras library.
Application of modern framework for neural networks.
Exercise focuses on using neural networks and Keras library. Testing of Deep learning approach with more flexibility than Scikit-learn.
In this project, you will perform exploratory data analysis (EDA) and clustering analysis on an assigned dataset. This hands-on project will help you develop practical skills in data preprocessing, visualization, and unsupervised learning.
π Total Points: 20-45 pointsπ Preprocessing Pipeline: Describe all preprocessing operations for each feature (scaling, encoding, dropping, etc.)
β οΈ IMPORTANT: Part 2 is worth 10 points. Skipping it limits your maximum score to 35 points!
Scenario: AutoValue dealership needs to optimize pricing strategy for used Audi vehicles.
Analyze factors influencing used car prices including model, year, transmission, mileage, fuel type, road tax, MPG, and engine size. Help the dealership understand market segments and pricing patterns.
Key Features: Model, Year, Price, Transmission, Mileage, Fuel Type, Tax, MPG, Engine Size
π₯ Download Audi DatasetScenario: Football Insights analytics company needs player performance insights for scouts and clubs.
Comprehensive dataset of all FIFA 22 players with detailed attributes (pace, shooting, dribbling, defending). Select relevant features based on your hypothesis about player types and performance characteristics.
Note: Use players_fifa22.csv and select a subset of columns for your analysis
π₯ Download FIFA DatasetScenario: Education Insights Research Group analyzing factors affecting student academic performance.
Survey data from secondary school students including social background, gender, study habits, family situation, and academic grades. Understand patterns that influence educational outcomes.
Available: Math course (student-mat.csv) and Portuguese course (student-por.csv) datasets
Key Features: Demographics, Study Time, Family Support, Social Activities, Grades
π₯ Download Student DatasetScenario: VinoSpectra analyzing chemical constituents of wines from three Italian cultivars.
Chemical analysis of wines with 13 constituents including alcohol, acidity, phenols, color intensity, and more. Discover how chemical composition relates to wine characteristics and cultivar types.
Key Features: Alcohol, Malic Acid, Ash, Magnesium, Phenols, Flavonoids, Color Intensity, Proline
π₯ Download Wine Datasetπ‘ Custom Dataset: Interested in a specific topic? Contact your instructor to propose an alternative dataset. We'll evaluate if it's suitable for this project.
In this project, you will perform classification or regression analysis on an assigned dataset. This hands-on project will help you develop practical skills in data preprocessing, visualization, and supervised learning.
π Total Points: 15-35 pointsScenario: BankGuard financial services is facing increased customer churn in their credit card services.
Help predict which customers are likely to churn so the bank can take proactive retention steps. The Customer Retention Manager needs to identify at-risk customers to offer personalized incentives and improve services before it's too late.
Target Variable: Attrition_Flag
Key Features: Customer Age, Gender, Education Level, Marital Status, Income Category, Card Category, Credit Limit, Transaction Amount, Transaction Count, etc.
β οΈ IMPORTANT: DROP THE LAST 2 COLUMNS starting with "Naive_Bayes_Classifier..."
Scenario: Predict whether income exceeds $50K/year based on census data.
Classic dataset for binary classification tasks. Analyze demographic and employment factors that influence income levels in the population.
Target Variable: class (>50K or <=50K)
Key Features: Age, Workclass, Education, Marital Status, Occupation, Race, Sex, Capital Gain/Loss, Hours per Week, Native Country
π‘ Note: The .data files are plain CSV/text files
Scenario: HealthGuard Analytics is tackling cardiovascular diseases (CVDs), the leading cause of death worldwide with 17.9 million deaths annually.
Develop a machine learning model to predict the likelihood of heart disease in individuals based on health metrics and risk factors. Help the medical community identify at-risk patients early.
Target Variable: HeartDisease (1: disease present, 0: normal)
Key Features: Age, Sex, Chest Pain Type, Resting BP, Cholesterol, Fasting Blood Sugar, Resting ECG, Max Heart Rate, Exercise Angina, Oldpeak, ST Slope
π₯ Download Heart Disease DatasetScenario: CyberDefend Analytics focuses on cybersecurity for government and military networks facing increasing cyberattacks.
Build a network intrusion detection system to distinguish between malicious attacks and normal traffic. This dataset simulates a military network environment with different types of network connections.
Target Variable: label (normal or various attack types)
Key Features: TCP/UDP network connection features (42 features total describing network behavior)
π‘ Note: If you have basic networking knowledge, the feature names are self-describing. Features are similar to the UNSW_NB15 dataset.
Scenario: CyberSecure Labs protects modern networks from evolving cyber threats including sophisticated attacks on government and private systems.
Comprehensive network dataset combining real-world modern traffic with simulated cyberattacks created using IXIA PerfectStorm tool. Includes nine attack types: Fuzzers, Backdoors, DoS, Exploits, Worms, and more.
Target Variable: label OR attack_cat (choose one and drop the other to avoid information leak!)
Key Features: 49 features generated by Argus and Bro-IDS tools describing TCP/UDP network connections
β οΈ CRITICAL: Use UNSW_NB15_training-set.csv and UNSW_NB15_testing-set.csv files. Choose EITHER "label" OR "attack_cat" as target - drop the other to prevent information leakage!
π‘ Custom Dataset: Interested in a specific topic? Contact your instructor with a dataset of your individual choice. They will evaluate if the dataset is suitable for this project and allow replacement of the assigned data.