Proseminar Differentiable Programming

Differentiable Programming is the idea that many programs describe differentiable functions and that their derivatives can be computed algorithmically through automatic differentiation. Combined with gradient-based optimization methods this is a powerful method to learn parameters, that generalizes approaches in machine learning from neural networks to arbitrary differentiable programs. In this seminar we take differentiable programming as a starting point to explore some of the related ideas in optimization and automatic differentiation, as well as various applications in, among others, control, physics, simulation and computer graphics.

The proseminar is divided into four areas. Optimization, automatic differentiation, applications and advanced topics. Below is a list of papers we intend to discuss from each of these areas. When signing up please select your area of interest. We will then randomly distribute the spots within each area and you will be assigned to research and conduct one of the talks from this area. The papers in advanced topics were chosen to be a serious challenge. Before signing up, please make sure you are happy to read them. Advanced topics are likely to require quite a bit of background reading and are expected to be a significantly bigger time committment than the rest. (Some more help from us can be expected too.)

Structure:

Requirements:

Language: The seminar will be held in English. If you are very interested but uncomfortable giving your presentation in English exceptions are possible.

List of Papers:

  1. Optimization
  1. Automatic Differentiation
  1. Applications
  1. Advanced Topics

Dates