Department of Computer Science | Institute of Theoretical Computer Science | CADMO
Prof. Emo Welzl and Prof. Bernd Gärtner
Lecturers: |
Bernd Gärtner (CAB G31.1) Niao He (CAB F62) |
---|---|
Assistants: |
Hongjie Chen (CAB F77) Ilyas Fatkhullin (OAS J28) Saeed Ilchi (CAB G19.2), contact assistant Xiang Li (CAB F61.2) Federico Soldà (CAB H31.2) Junchi Yang (CAB F61.2) |
Lectures: |
Mon 13-14 (NO C60), Tue 10-12 (ETF C1), Recordings of last year: ETH Video Portal (there may be a few changes in the content this year). |
Credit Points: | 10CP (261-5110-00L, 3V + 2U + 4A) |
Language: | English |
Schedule: | The course schedule can be found here. Please note that this plan is tentative and may be subject to changes during the semester. |
Contents: |
This course provides an in-depth theoretical treatment of classical and modern optimization methods that are relevant in data science. After a general discussion about the role that optimization has in the process of learning from data, we give an introduction to the theory of (convex) optimization. Based on this, we present and analyze algorithms in the following four categories: first-order methods (gradient and coordinate descent, Frank-Wolfe, subgradient and mirror descent, stochastic and incremental gradient methods); second-order methods (Newton and quasi Newton methods); non-convexity (local convergence, provable global convergence, cone programming, convex relaxations); min-max optimization (extragradient methods). The emphasis is on the motivations and design principles behind the algorithms, on provable performance bounds, and on the mathematical tools and techniques to prove them. The goal is to equip students with a fundamental understanding about why optimization algorithms work, and what their limits are. This understanding will be of help in selecting suitable algorithms in a given application, but providing concrete practical guidance is not our focus. |
Moodle: | All materials in the course are published through the moodle page of the course. |
Literature: |
|
Prerequisites: | A solid background in analysis and linear algebra; some background in theoretical computer science (computational complexity, analysis of algorithms); the ability to understand and write mathematical proofs. |
Grading: |
There will be a written exam in the examination session.
Furthermore, there will be four mandatory written graded assignments during the semester.
The final grade of the whole course will be calculated as a weighted average of the grades for the exam (60%) and the graded assignments (40%). Concretely, let PE be the performance in the final exam, and P1, P2, P3, P4 be the performances in the four graded assignments, measured as the percentage of points being attained (between 0% and 100%). A graded assignment that is not handed in is counted with a performance of 0%. Then the overall course performance is computed as P = 0.1*P1 + 0.1*P2 + 0.1*P3 + 0.1*P4 + 0.6*PE. A course performance of P >= 50% is guaranteed to lead to a passing grade, but depending on the overall performance of the cohort, we may lower the threshold for a passing grade. |
---|---|
Graded Assignments: |
At four times during the course of the semester, we will hand out graded assignments (compulsory continuous performance assessments). The solutions are expected to be typeset in LaTeX or similar. Assignments can be discussed with colleagues, but we expect an independent writeup. The release dates of the graded assignments are as follows:
|
Exam: |
Date to be determined. The exam lasts 180 minutes, it is written and students can bring at most four A4 pages of written aids (no restrictions regarding form or content). |
The exercises are discussed in classes. Students are expected to try to solve the problems beforehand. Your assistant is happy to look at your solutions and correct/comment them. We assign students to classes according to surnames. Attendance according to these assignments is not compulsory but encouraged. The details of the classes are as follows.
Group | Time | Room | Assistant |
---|---|---|---|
A | Tue 14-16 | CAB G51 |
First Half: Federico Soldà, Second Half: Xiang Li. |
B | Fri 14-16 | ML H44 |
First Half: Junchi Yang, Second Half: Ilyas Fatkhullin. |