Syllabus 2017 - 2018¶
Contents¶
In this course we follow the Coursera course on Machine Learning as thought by Andrew Ng. To get all AUC students on the same scientific page as soon as possible, at the start of the course we will study some subjects that the Coursera course considers a prerequisite (like programming with an array language) or does not treat in detail (like the probabilistic interpretation of learning). We will also deal with some introductory linear algebra subjects as needed in this course.
Recommended Prior Knowledge¶
- Python programming: A prerequisite to follow this course on Machine Learning is the Programming your World course. We therefore assume you know how to write simple programs in Python. In this course we will use the Numpy library quite a lot. Some knowledge of Numpy can help quite a lot but for those that have never worked with Numpy we hope to provide enough exercises to catch up.
- Linear Algebra: We hope students have some prior knowledge of the basics of Linear Algebra. If not, the first few weeks are the opportunity to fill the voids.
- Probability and Statistics: Probability and statistics are the mathematical tools to deal with uncertaintity. Uncertaintity due to noise, due to lack of knowledge, due to oversimplified models of reality (whatever that may be) are all in the realm of a probabilistic view of machine learning. The coursera course does not emphasize this probabilistic view. Throughout the course we do highlight this link. For those who have only a very basic knowledge of probability and statistics we hope to provide enough background material and exercises to get to grips with this probabilistic view on a basic level.
Teaching Staff¶
- Gosia Migut, m.a.migut@uva.nl (Coordinator of course)
- Rein van den Boomgaard, rvdboomgaard@gmail.com
Format¶
- Video lectures from Coursera. You have to sign up for Machine Learning course to view the lectures. They explain concepts and theory; students watch these “at home”. There are separate files with the “slides” and “summaries” of the video lectures. These are good for reference. Video lectures will not be reviewed in class other then by questions asked by students.
- Classic lectures: for a few concepts no fitting video lectures are available, so these will be explained in class. For these parts of the course Lecture Notes are available that summarize the theory.
- Class meetings: most of these meetings will be devoted to either:
- discuss the questions raised by students following from viewing the video’s or reading the written material.
- work on the LabExercises. Every LabExercise, be it theoretical questions or programming exercises, have to be documented in IPython notebooks.
- projects labs: the last part of the course is a project in which students apply Machine Learning to a real problem or develop an implementation of an algorithm and evaluate this on a given dataset.
Attendance¶
Attendance is mandatory, as usual in AUC courses. You may at most skip 2 class meetings. It is mandatory to inform the instructors in case you cannot attend a meeting.
Study Materials¶
Obligatory¶
- Video’s of Coursera Course Machine Learning of Andrew Ng
- Lecture Notes
- LabExercises
Extra¶
- Programming
- Machine Learning
Assessment¶
- Ungraded LabExercises (discussed in lectures) 10%
- Graded LabExercises (hand in via GitHub) 2x 15%
- Midterm Exam 20%
- Final Exam 20%
- Project 20%
Collaboration and plagiarism¶
Obviously the general AUC rules for plagiarism apply to this course. This basically means that you are allowed to discuss assignments and you are allowed to consult information in other sources like internet but the actual code or text should you be your own. If your answer relies heavily on a source outside the course then you should report this with your solution. Collaboration on “written exercises” that are not graded is unrestricted.