Machine Learning for Computer Vision: Lecture, Exercise and Project

Computer vision has made tantalizing progress in the past five years, bringing us self-driving cars, automated scene parsing and more. Machine Learning is the driving force behind this revolution.

This course will talk about methods which can be used to e.g. segment urban scenes from the CityScape dataset.


This course will cover the building blocks of modern computer vision systems, notably

  • unstructured prediction
    • using shallow classifiers such as support vector machines or decision trees
    • using deep classifiers (convolutional neural networks)
  • structured prediction
    • using probabilistic graphical models
  • optimal decisions and policies
    • from reinforcement learning
  • optimization
    • dynamic programming
    • linear and integer linear programming, quadratic programs


As the name suggests, the course consists of 2 hours of lectures per week, practical computer / programming exercises in python, and a project in which you solve a problem of your choice. The latter has a total duration of two to three weeks full-time and can extend into the semester break.

What you need to know beforehand

Some prior exposure to machine learning and / or computer vision are helpful but not strictly needed. You should however be comfortable with all of the following by the start of the course:

  • multivariable calculus, multivariate geometry
  • linear algebra: linear system of equations, eigenproblems
  • probability theory: multivariate random variables, first- and second order moments, Bayes theorem
  • basic python programming

How to join

Just come along for the first lecture on Tuesday, October 17th 2017 at 13:45, but: please be on time. Venue: Mathematikon B, Berliner Str. 43, 3rd floor, seminar room B128.