IAML-DL: Introductory Applied Machine Learning
Welcome!
We'll be introducing you to a number of machine learning methods and concepts, helping you understand how they work, and how to apply them. The course features a lot of hands-on work with Python.
We start on Monday of week 1, at which point we will be releasing the study materials.
The course operates as a "flipped classroom", meaning that your first introduction to a week's material is done outside the classroom. To facilitate this, we provide you with a weekly reading guide, pointing out resources (book sections/paragraphs, course material, websites, etc) that will help you learn the relevant topics.
Additionally, the course runs 4 weekly sessions of either labs or tutorials, alternating each week, from Week 2 to Week 9. Each week, starting in week 1, prior to the next week's lab or tutorial, you will be expected to study or attempt the relevant sheets. You can discuss these with other students, including the students on the campus course, on the course's Piazza Forum. The labs and tutorials sessions are held live on Learn 's Class Collaborate - these are drop-in sessions with no need to register.
Each week features a couple of topics for you to delve into, and there is a list of video recordings and accompanying slides available for you to get started on. These videos, together with the material in the Tutorials and Labs, also define the scope of examinable material. However, please note that to understand the topics in-depth you will have to engage well beyond a simple play through of the videos. It is also recommended that you familiarize yourselves with the School's common marking scheme, as mark distributions differ from those operating in some other educational systems: http://web.inf.ed.ac.uk/infweb/student-services/ito/students/common-marking-scheme.
At the end of each week, the team will be analyzing your communications on Piazza and Quiz results (from week 2) to understand where you are struggling or would like further information. We then use this material to prepare the next week's class meeting. There are 2 times for these sessions held each week, and they are run by your lecturer, Nigel.
To summarize, a typical week will have you:
- Read the week's study guide.
- Watch the recorded lectures, and attempt any quizzes on Learn.
- Prepare for next week's lab or tutorial.
- Ask/answer questions on Piazza.
- Attend this week's tutorial or lab.
- Attend the class meeting for the week's topics.
The course also features one coursework. This accounts for 30% of your grade. The remaining 70% of your grade comes from an open book exam at the end of the semester.
We're looking forward to meeting you!
Course Outline
This course is delivered using "flipped-classroom" methods. Intellectual content will be delivered via a combination of online short video segments (overall, per topic, approximately the same length as a traditional lecture). Some of the topics have online quizzes associated with them, intended for you to review your understanding. During most of the lecture slots we will have other activities to review the topic material, also available by online recording.
We expect to cover the following general areas:
- Review of maths and probability
- Feature engineering (e.g., basis transforms, selection , Principal Components Analysis)
- Classification vs. Regression
- Supervised methods (e.g., Naive Bayes, Decision Trees and Random Forests, Linear & Logistic Regression, Support Vector Machines, Nearest Neighbours, Neural Networks)
- Unsupervised clustering methods (e.g., k-Means, Gaussian Mixture Models, Hierarchical Clustering)
We will use a modern machine learning programming environment and industry-standard libraries.
Learning Outcomes
On successful completion of this course, you should 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.