RW741 Machine Learning


Description

This module considers a wide range of topics within Machine Learning, with a strong focus on providing you with an in-depth understanding of the foundations of different machine learning technologies and providing you with the skills to implement and apply these technologies to solve a wide range of problem. In the context of machine learning, the problem domains include mostly the construction of classifier models, prediction models, and then some data mining applications.

The module starts with in introduction to machine learning, and then focuses on one of the most important aspects of problem solving using machine learning algorithms, i.e. that of data engineering. This is then followed by a study of the following machine learning paradigms:

  • Similarity-based learning
  • Information-based learning
  • Reinforcement learning
  • Error-based learning
  • Kernel-based learning
  • Unsupervised learning
  • Ensemble learning
  • Online learning
  • Probabilistic learning

Mode of Presentation

This year, the module will be presented online. This will be done via pre-recorded lectures and regular online meetings via Teams. A Teams group will be created for RW741, and you all will be invited to join that Teams group.

Prerequisites

Programming (well, obviously...) and Mathematics on at least first year level. Prior machine learning knowledge is not required.

With reference to programming, you will be allowed to use any programming language, as long as your programs in the end will built and run on Linux.

Outcomes

After completing this course, students should be able to

  • Understand the basic principles of machine learning
  • Identify and correct problems in data sets, identify requirements for data as dictated by the different machine learning paradigms, and optimally pre-process data to be acceptable for these algorithms
  • Understand the inductive biases of the different machine learning paradigms and the consequences of these inductive biases on the limitations and strenghts of these paradigms
  • Fully understand the bias-variance dilemma
  • Understand the foundations of the different machine learning paradigms:
    • Similarity-based learning
    • Information-based learning
    • Reinforcement learning
    • Error-based learning
    • Kernel-based learning
    • Unsupervised learning
    • Ensemble learning
    • Online learning
    • Probability-based learning
  • Apply identify which machine learning paradigm and algorithm is best suited for a specific data-driven problem, and to implement the algorithm to solve that problem, with a strong focus on
    • classification problems
    • regression problems
    • time series prediction
    • data clustering
    • data analytics

Instructor

Prof Andries Engelbrecht.

Academic Integrity

The university's policy on plagiarism and collaboration applies throughout the course and is strictly enforced. It is the students' responsibility to familiarise themselves with the regulations in this regard.