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