Search result: Catalogue data in Spring Semester 2020
|Computer Science Master|
|Focus Courses in Theoretical Computer Science|
|Focus Core Courses Theoretical Computer Science|
|261-5110-00L||Optimization for Data Science||W||8 credits||3V + 2U + 2A||B. Gärtner, D. Steurer|
|Abstract||This course provides an in-depth theoretical treatment of optimization methods that are particularly relevant in data science.|
|Objective||Understanding the theoretical guarantees (and their limits) of relevant optimization methods used in data science. Learning general paradigms to deal with optimization problems arising in data science.|
|Content||This course provides an in-depth theoretical treatment of optimization methods that are particularly relevant in machine learning and data science.|
In the first part of the course, we will first give a brief introduction to convex optimization, with some basic motivating examples from machine learning. Then we will analyse classical and more recent first and second order methods for convex optimization: gradient descent, projected gradient descent, subgradient descent, stochastic gradient descent, Nesterov's accelerated method, Newton's method, and Quasi-Newton methods. The emphasis will be on analysis techniques that occur repeatedly in convergence analyses for various classes of convex functions. We will also discuss some classical and recent theoretical results for nonconvex optimization.
In the second part, we discuss convex programming relaxations as a powerful and versatile paradigm for designing efficient algorithms to solve computational problems arising in data science. We will learn about this paradigm and develop a unified perspective on it through the lens of the sum-of-squares semidefinite programming hierarchy. As applications, we are discussing non-negative matrix factorization, compressed sensing and sparse linear regression, matrix completion and phase retrieval, as well as robust estimation.
|Prerequisites / Notice||As background, we require material taught in the course "252-0209-00L Algorithms, Probability, and Computing". It is not necessary that participants have actually taken the course, but they should be prepared to catch up if necessary.|
|263-4660-00L||Applied Cryptography |
Number of participants limited to 150.
|W||8 credits||3V + 2U + 2P||K. Paterson|
|Abstract||This course will introduce the basic primitives of cryptography, using rigorous syntax and game-based security definitions. The course will show how these primitives can be combined to build cryptographic protocols and systems.|
|Objective||The goal of the course is to put students' understanding of cryptography on sound foundations, to enable them to start to build well-designed cryptographic systems, and to expose them to some of the pitfalls that arise when doing so.|
|Content||Basic symmetric primitives (block ciphers, modes, hash functions); generic composition; AEAD; basic secure channels; basic public key primitives (encryption,signature, DH key exchange); ECC; randomness; applications.|
|Literature||Textbook: Boneh and Shoup, “A Graduate Course in Applied Cryptography”, https://crypto.stanford.edu/~dabo/cryptobook/BonehShoup_0_4.pdf.|
|Prerequisites / Notice||Ideally, students will have taken the D-INFK Bachelors course “Information Security" or an equivalent course at Bachelors level.|
- Page 1 of 1