Skip to content Search
Search our website:

Machine Learning

Short name: ML
SITS code: COIY065H7
Credits: 15 credits
Level: 7
Module leader: George Magoulas
Lecturer(s): George Magoulas

Module outline

Using a combination of lectures and lab work, the module covers popular machine learning paradigms giving students knowledge of advanced features of various methods at the theoretical and practical levels.


The module covers computational algorithms for learning from data, data-driven decision making and complex problem solving. It provides an introduction to machine learning methods, such as neural networks, fuzzy logic, fuzzy clustering, natural computing, and covers basic concepts of feature selection and generalisation.

Learning Outcomes

  • Discuss fundamental aspects of machine learning methods.
  • Discus fundamental issues relating to the design and implementation of systems that employ machine learning
  • Apply theoretical understanding of machine learning paradigms to solve data modelling, classification and decision making problems, justify the approach adopted and critically evaluate its effectiveness.
  • Recognise social, ethical & professional issues and risk involved in the application and use of machine learning methods.
  • Demonstrate an advanced level of knowledge of machine learning methods and of the processes involved in their deployment.
  • Make a critical analysis of problem requirements relating to the application of machine learning.
  • Demonstrate a comprehensive understanding of the principles and practices of machine learning.


  • Learning from data

  • Feature selection and generalisation

  • Supervised learning, unsupervised learning and clustering

  • Fuzzy logic and fuzzy clustering

  • Deep networks:architectures and learning algorithms

  • Natural computing: genetic algorithms, evolutionary algorithms, swarm intelligence

  • Advanced learning and evolution schemes


No specific module is pre- or co- requisite but knowledge of mathematical concepts (algebraic concepts, vector, matrix, function and graph, gradient, trigonometry concepts, statistical concepts and the notion of probability), and data structures and algorithms, as taught in a typical undergraduate degree in computer science or engineering, is essential.


All dates and timetables are listed in the programme handbooks of individual programmes.


In the coursework students are asked to use any programming language/tool they wish (MATLAB is used in the labs) to solve a practical real world problem.


A two-hour written examination (80%)

Mini-project (20%)

Recommended reading

  • S. Marsland, Machine Learning: an Algorithmic Perspective, CRC Press.
  • M. Negnevitsky, Artificial Intelligence: a Guide to Intelligent Systems, Addison Wesley.
  • E. Alpaydin, Introduction to Machine Learning, MIT Press.
  • R. Rojas, Neural Networks-A Systematic Introduction. Available online at:

  • S. Theodoridis, K. Koutroumbas, Pattern Recognition, Academic Press.

  • Students will be pointed to papers available online and other Web resources on the subject.