Undergraduate Course: Introductory Applied Machine Learning (INFR10069)
Course Outline
School  School of Informatics 
College  College of Science and Engineering 
Credit level (Normal year taken)  SCQF Level 10 (Year 3 Undergraduate) 
Availability  Not available to visiting students 
SCQF Credits  20 
ECTS Credits  10 
Summary  Since the early days of AI, researchers have been interested in making computers learn, rather than simply programming them to do tasks. This is the field of machine learning. The main area that will be discussed is supervised learning, which is concerned with learning to predict an output, given inputs. A second area of study is unsupervised learning, where we wish to discover the structure in a set of patterns; there is no output 'teacher signal'.
The primary aim of the course is to provide the student with a set of practical tools that can be applied to solve realworld problems in machine learning, coupled with an appropriate, principled approach to formulating a solution. 
Course description 
Introduction to Machine Learning and its Goals. Introduction to Data and Models. Memory based methods. Decision Trees. Error functions, Minimising Error. Regression, Logistic Regression, Neural Networks. Margin Based Methods: Perceptron, Support Vector Machines. Naïve Bayes. Dimensionality Reduction. Clustering: Kmeans, Simple Gaussian Mixture Models, Hierarchical Clustering. Boosting Approaches. Model Averaging, Mixtures of Experts. Evaluation of Performance.
[We will also use a modern machine learning programming environment]

Entry Requirements (not applicable to Visiting Students)
Prerequisites 

Corequisites  
Prohibited Combinations  Students MUST NOT also be taking
Introductory Applied Machine Learning (INFR11182) OR
Introductory Applied Machine Learning (INFD11005)

Other requirements  MSc students must take the level 11 version (INFR11182) instead.
Students should check these maths and programming requirements carefully, as the course assumes and builds on these foundations. Experience has shown that students without this background can struggle with the course.
Maths requirements:
1. Linear algebra: Vectors: scalar (dot) product, transpose, unit vectors, vector length, orthogonality. Matrices: addition, matrix multiplication, matrix inversion. Eigenvectors, determinants quadratic forms.
2. Special functions: properties and combination rules for logarithm and exponential.
3. Calculus: Rules for differentiation of standard functions. Functions of several variables. Partial differentiation. Multivariate maxima and minima.
4. Geometry: Basics of lines, planes and hyperplanes. Coordinate geometry of circle, sphere, ellipse, ellipsoid and ndimensional generalizations.
5. Probability theory: Discrete and continuous univariate random variables. Expectation, variance. Univariate Gaussian distribution. Joint and conditional distributions.
Programming requirements:
Students should be familiar with programming in a modern objectoriented language, ideally Python which is the course language. 
Course Delivery Information

Academic year 2020/21, Available to all students (SV1)

Quota: None 
Course Start 
Semester 1 
Timetable 
Timetable 
Learning and Teaching activities (Further Info) 
Total Hours:
200
(
Lecture Hours 20,
Seminar/Tutorial Hours 4,
Supervised Practical/Workshop/Studio Hours 4,
Summative Assessment Hours 2,
Programme Level Learning and Teaching Hours 4,
Directed Learning and Independent Learning Hours
166 )

Assessment (Further Info) 
Written Exam
50 %,
Coursework
50 %,
Practical Exam
0 %

Additional Information (Assessment) 
Coursework  50%
Exam  50%.
If delivered in semester 1, this course will have an option for semester 1 only visiting undergraduate students, providing assessment prior to the end of the calendar year. 
Feedback 
Not entered 
Exam Information 
Exam Diet 
Paper Name 
Hours & Minutes 

Main Exam Diet S1 (December)   2:00   Resit Exam Diet (August)   2:00  
Learning Outcomes
On completion of this course, the student will be able to:
 Explain the scope, goals and limits of machine learning, and the main subareas of the field.
 Describe the various techniques covered in the syllabus and where they fit within the structure of the discipline.
 Critically compare, contrast and evaluate the different ML techniques in terms of their applicability to different Machine Learning problems.
 Given a data set and problem, use appropriate software to apply these techniques to the data set to solve the problem.
 Given appropriate data, use a systematic approach to conducting experimental investigations and assessing scientific hypotheses.

Reading List
Books that may be useful, but are not required:
 HandsOn Machine Learning with ScikitLearn & Tensor Flow. Aurelien
Geron, O'Reilly, 2017.
 Elements of Statistical Learning by T. Hastie, R. Tibshirani and J. Friedman (Springer 2009)
 Bayesian Reasoning and Machine Learning by D. Barber (CUP, 2012)
 Data Mining: Practical Machine Learning Tools and Techniques, Ian H. Witten, Eibe Frank, Mark A. Hall, 3rd edition, Morgan Kaufmann, 2011. 
Contacts
Course organiser  Prof Chris Williams
Tel: (0131 6)51 1212
Email: C.K.I.Williams@ed.ac.uk 
Course secretary  Mrs Michelle Bain
Tel: (0131 6)51 7607
Email: michelle.bain@ed.ac.uk 

