Module Description

This module provides an understanding of machine learning, the methods involved in evaluating them, and their application to real-world problems. It will include classification and regression learning along with other techniques, and apply the techniques to particular classes of problems.

Module Aim
The aim of this module is to provide an understanding of the major approaches to machine learning, the methods involved in evaluating them, and their application to the solution of real problems.

Learning Outcomes
On completion of the course, students should be able to:

  • demonstrate an understanding of the major approaches to classification and regression learning
  • demonstrate an understanding of other machine learning techniques that have important practical applications
  • identify machine learning techniques appropriate for particular classes of problem and apply them to practical problems
  • undertake a comparative evaluation of several machine learning procedures

Outline Syllabus
Introduction

  • What is meant by machine learning
  • Taxonomy of machine learning algorithms
  • The inductive bias
  • Data mining

Learning to classify:

  • Decision tree induction
  • Naïve Bayes methods
  • Bayesian networks
  • K-nearest neighbour method
  • Support vector machines

Learning to predict numeric values:

  • Linear Regression
  • Regression trees
  • Evaluating learning procedures
  • Overfitting and the 'bias-variance trade-off'
  • Applications of machine learning

Clustering:

  • k-means algorithm
  • agglomerative hierarchical methods

Association rules mining:

  • A priori algorithm

Reinforcement learning:

  • Q learning

Multiple learners:

  • Bagging, boosting, forests and stacking