# FUNDAMENTALS OF MACHINE LEARNING - 2022/3

Module code: EEEM066

## Module Overview

Module purpose: This course offers an introduction to machine learning for those interested in the science and technology of Artificial Intelligence (AI). It provides background and the theory for building fundamental artificial systems that can process a variety of data and analyse their semantic information of interest. This is implemented by various fundamental learning algorithms that will be discussed and demonstrated in an easy-to-approach manner.

### Module provider

Electrical and Electronic Engineering

### Module Leader

ZHU Eddy (Elec Elec En)

### Number of Credits: 15

### ECTS Credits: 7.5

### Framework: FHEQ Level 7

### JACs code:

### Module cap (Maximum number of students): N/A

## Overall student workload

Independent Learning Hours: 107

Lecture Hours: 33

Laboratory Hours: 10

## Module Availability

Semester 1

## Prerequisites / Co-requisites

None

## Module content

Indicative content includes the following:

¿ Introduction to Machine Learning

¿ Linear Algebra

¿ Regression Methods

¿ Logistic Regression

¿ Support Vector Machines

¿ Tree based Machine Learning Models

¿ Clustering and Dimensionality Reduction

¿ Neural Networks

¿ Evaluation Techniques

¿ Large Scale Machine Learning

¿ Machine Learning System Design

## Assessment pattern

Assessment type | Unit of assessment | Weighting |
---|---|---|

Coursework | Coursework | 25 |

Examination Online | Examination ONLINE (OPEN BOOK) EXAM WITHIN 4HR WINDOW | 75 |

## Alternative Assessment

NULL">

## Assessment Strategy

The assessment strategy for this module is designed to provide students with the opportunity to demonstrate the following.

Problem Classes, assignments, examination:

Knowledge of machine learning concepts including why machine learning is necessary and for what kinds of circumstances.

Knowledge of the fundamental machine learning paradigms and representative learning algorithms including their application scope and the underlying assumptions.

Skills of identifying the suitable machine learning paradigms for a given problem from a specific domain.

Knowledge of designing machine learning systems including how to achieve optimum performance and how to deal with large-scale data.

Skills of applying machine learning methods, mathematical and computer-based models, and using computer software (Python) to solve target problems.

Programming skills and understanding of software tools, development environments, libraries and reusable components (such as Python workflows).

Laboratory based assessment: Practical knowledge and skills on how to implement basic machine learning systems based on an understanding of relevant knowledge delivered in lectures.

Skills of identifying and analyse problems, and developing software solutions to remove problems. Assessed by laboratory exercises.

Thus, the summative assessment for this module consists of the following.

· Examination 70%

· Coursework 30% (weeks 5-10)

The examination consists of a written examination. There are several questions each from different areas of the course. Some questions each may consist of a few sub-questions for testing knowledge, analytical, and design skills.

The coursework assessments consist of using the Python programming language to perform a carefully designed experiment, with a report summarising the outcomes. The purpose of the coursework is for students to practically apply the theoretical knowledge gained from the lectures to real-world applications.

Formative assessment and feedback

For the module, students will receive formative assessment/feedback in the following ways.

· During lectures, by question and answer sessions

· During supervised computer laboratory sessions

## Module aims

- The aim of this module is to offer a fundamental course on the principles of modern machine learning which underpin a variety of disciplines like Machine Vision, Natural Language Processing, Remote Sensing, Surveillance, Medical Imaging, Multimedia etc. In particular the course focuses on basic learning paradigms and representative learning algorithms that have been widely exploited and explored in the past decades across various domains as above.

## Learning outcomes

Attributes Developed | ||

001 | Be able to demonstrate an understanding of machine learning principles and the theory behind those | KT |

002 | Be able to choose an appropriate machine learning method for a given target problem to be solved, and predict the outcome of the applied solution | T |

003 | Be able to formulate problems from a specific domain in a mathematical way and solve them to achieve optimality in performance | CT |

004 | Be able to analyse some non-trivial problems in real-world applications, understand the concepts behind them and come up with possible algorithmic solutions. | CP |

Attributes Developed

**C** - Cognitive/analytical

**K** - Subject knowledge

**T** - Transferable skills

**P** - Professional/Practical skills

## Methods of Teaching / Learning

The learning and teaching strategy is designed to achieve the following aims:

¿ To introduce the basic ideas of machine learning to set up a solid understanding for the fundamental learning algorithms.

¿ To introduce the necessary mathematical knowledge for machine learning such as linear algebra.

¿ To learn to analyse the problem from a mathematical perspective and identify the best machine learning paradigm that can be used to build possible solutions.

¿ To learn basic programming skills and understanding of software tools, development environments, libraries and reusable components such as Python libraries.

¿ To learn skills of applying machine learning methods, and of using computer software (Python) to solve representative problems. Skills involve identifying and analysing the problems based on some domain knowledge, and developing software solutions to resolve the problems.

Indicated Lecture Hours (which may also include seminars, tutorials, workshops and other contact time) are approximate and may include in-class tests where one or more of these are an assessment on the module. In-class tests are scheduled/organised separately to taught content and will be published on to student personal timetables, where they apply to taken modules, as soon as they are finalised by central administration. This will usually be after the initial publication of the teaching timetable for the relevant semester.

## Reading list

https://readinglists.surrey.ac.uk

Upon accessing the reading list, please search for the module using the module code: **EEEM066**

## Other information

¿ Reference textbook: Bishop, Christopher M., and Nasser M. Nasrabadi. Pattern recognition and machine learning. Vol. 4. No. 4. New York: Springer, 2006. ¿ Further reference textbook (alternative to Bishop): Murphy, Kevin P. Probabilistic machine learning: an introduction. MIT press, 2022. ¿ Easy-to-digest online textbook for neural network fundamentals: http://neuralnetworksanddeeplearning.com/, Nielsen, Michael A. Neural networks and deep learning. Vol. 25. San Francisco, CA, USA: Determination press, 2015. ¿ Basic interactive practice with ML and Python: https://www.hackerrank.com/skills-directory/machine_learning_basic ¿ Continued: https://www.hackerrank.com/skills-directory/machine_learning_advanced

Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2022/3 academic year.