Undergraduate Course: Introductory Applied Machine Learning (INFR10069)
|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
|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 real-world problems in machine learning, coupled with an appropriate, principled approach to formulating a solution.
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: K-means, 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)
|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.
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 n-dimensional generalizations.
5. Probability theory: Discrete and continuous univariate random variables. Expectation, variance. Univariate Gaussian distribution. Joint and conditional distributions.
Students should be familiar with programming in a modern object-oriented language, ideally Python which is the course language.
Course Delivery Information
|Academic year 2020/21, Available to all students (SV1)
|Learning and Teaching activities (Further Info)
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
|Assessment (Further Info)
|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.
||Hours & Minutes
|Main Exam Diet S1 (December)||2:00|
|Resit Exam Diet (August)||2:00|
On completion of this course, the student will be able to:
- Explain the scope, goals and limits of machine learning, and the main sub-areas 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.
|Books that may be useful, but are not required:|
- Hands-On Machine Learning with Scikit-Learn & 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.
|Course organiser||Prof Chris Williams
Tel: (0131 6)51 1212
|Course secretary||Mrs Michelle Bain
Tel: (0131 6)51 7607