Introduction to Machine Learning
This Introduction to Machine Learning module aims to provide the fundamental knowledge required to address the advanced methods introduced during the fourth year.
At the end of the module it is expected students will be able to:
Knowledge and Understanding
1 – Comprehend some of the foundations and objectives of the Machine Learning (ML),
2 – Understand the basic ML concepts and techniques detailed in the module content.
3 – Identify the suitable machine learning algorithm according to the specificities of the tasks.
4 – Evaluate the effectiveness of ML algorithms and recognize some of their potential weaknesses.
5 – Implement and test the algorithms introduced in the module using Matlab or Python.
6 – Enhance their skills in project planning, working with dead-lines, and reflecting on their own involvement in the teamwork.
This module covers the following fundamental concepts of machine learning:
1) Inductive Learning
a. Concept learning;
b. Decision trees.
2) Instance Based Learning:
a. K-nearest neighbors;
b. Locally weighted regression;
3) Hypothesis Evaluation:
b. Measures classification performance;
c. Estimating hypothesis accuracy;
d. Comparing learning algorithms.
4) Neural Networks:
b. Multilayer perceptron;
d. Stochastic gradient descend/Mini-batch;
e. Activation and error functions;
g. Learning rate decay;
h. Overfitting (regularization, dropout, data augmentation);
i. Data normalization;
j. Hyper-parameter tuning.
5) Genetic Algorithms:
a. Genotype/phenotype/behavior definitions;
b. Selection and Elitism;
f. Evolutionary Strategies;
g. Multi-objective optimization (pareto-dominance);
*This is a level 6/H course