Suchergebnis: Katalogdaten im Frühjahrssemester 2020

Informatik Master Information
Vertiefungsfächer
Vertiefung General Studies
Kernfächer der Vertiefung General Studies
NummerTitelTypECTSUmfangDozierende
252-0538-00LShape Modeling and Geometry Processing Information W6 KP2V + 1U + 2AO. Sorkine Hornung
KurzbeschreibungThis course covers the fundamentals and some of the latest developments in geometric modeling and geometry processing. Topics include surface modeling based on point clouds and polygonal meshes, mesh generation, surface reconstruction, mesh fairing and parameterization, discrete differential geometry, interactive shape editing, topics in digital shape fabrication.
LernzielThe students will learn how to design, program and analyze algorithms and systems for interactive 3D shape modeling and geometry processing.
InhaltRecent advances in 3D geometry processing have created a plenitude of novel concepts for the mathematical representation and interactive manipulation of geometric models. This course covers the fundamentals and some of the latest developments in geometric modeling and geometry processing. Topics include surface modeling based on point clouds and triangle meshes, mesh generation, surface reconstruction, mesh fairing and parameterization, discrete differential geometry, interactive shape editing and digital shape fabrication.
SkriptSlides and course notes
Voraussetzungen / BesonderesPrerequisites:
Visual Computing, Computer Graphics or an equivalent class. Experience with C++ programming. Solid background in linear algebra and analysis. Some knowledge of differential geometry, computational geometry and numerical methods is helpful but not a strict requirement.
261-5110-00LOptimization for Data Science Information W8 KP3V + 2U + 2AB. Gärtner, D. Steurer
KurzbeschreibungThis course provides an in-depth theoretical treatment of optimization methods that are particularly relevant in data science.
LernzielUnderstanding 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.
InhaltThis 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.
Voraussetzungen / BesonderesAs 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-2925-00LProgram Analysis for System Security and Reliability Information W6 KP2V + 1U + 2AP. Tsankov
KurzbeschreibungSecurity issues in modern systems (blockchains, datacenters, AI) result in billions of losses due to hacks. This course introduces the security issues in modern systems and state-of-the-art automated techniques for building secure and reliable systems. The course has a practical focus and covers systems built by successful ETH spin-offs.
Lernziel* Learn about security issues in modern systems -- blockchains, smart contracts, AI-based systems (e.g., autonomous cars), data centers -- and why they are challenging to address.

* Understand how the latest automated analysis techniques work, both discrete and probabilistic.

* Understand how these techniques combine with machine-learning methods, both supervised and unsupervised.

* Understand how to use these methods to build reliable and secure modern systems.

* Learn about new open problems that if solved can lead to research and commercial impact.
InhaltPart I: Security of Blockchains

- We will cover existing blockchains (e.g., Ethereum, Bitcoin), how they work, what the core security issues are, and how these have led to massive financial losses.
- We will show how to extract useful information about smart contracts and transactions using interactive analysis frameworks for querying blockchains (e.g. Google's Ethereum BigQuery).
- We will discuss the state-of-the-art security tools (e.g., https://securify.ch) for ensuring that smart contracts are free of security vulnerabilities.
- We will study the latest automated reasoning systems (e.g., https://verx.ch) for checking custom (temporal) properties of smart contracts and illustrate their operation on real-world use cases.
- We will study the underlying methods for automated reasoning and testing (e.g., abstract interpretation, symbolic execution, fuzzing) are used to build such tools.


Part II: Security of Datacenters and Networks

- We will show how to ensure that datacenters and ISPs are secured using declarative reasoning methods (e.g., Datalog). We will also see how to automatically synthesize secure configurations (e.g. using SyNET and NetComplete) which lead to desirable behaviors, thus automating the job of the network operator and avoiding critical errors.
- We will discuss how to apply modern discrete probabilistic inference (e.g., PSI and Bayonet) so to reason about probabilistic network properties (e.g., the probability of a packet reaching a destination if links fail).


Part III: Machine Learning for Security

- We will discuss how machine learning models for structured prediction are used to address security tasks, including de-obfuscation of binaries (Debin: https://debin.ai), Android APKs (DeGuard: http://apk-deguard.com) and JavaScript (JSNice: http://jsnice.org).
- We will study to leverage program abstractions in combination with clustering techniques to learn security rules for cryptography APIs from large codebases.
- We will study how to automatically learn to identify security vulnerabilities related to the handling of untrusted inputs (cross-Site scripting, SQL injection, path traversal, remote code execution) from large codebases.


To gain a deeper understanding, the course will involve a hands-on programming project where the methods studied in the class will be applied.
263-3800-00LAdvanced Operating Systems Information W7 KP2V + 2U + 2AD. Cock, T. Roscoe
KurzbeschreibungThis course is intended to give students a thorough understanding of design and implementation issues for modern operating systems, with a particular emphasis on the challenges of modern hardware features. We will cover key design issues in implementing an operating system, such as memory management, scheduling, protection, inter-process communication, device drivers, and file systems.
LernzielThe goals of the course are, firstly, to give students:

1. A broader perspective on OS design than that provided by knowledge of Unix or Windows, building on the material in a standard undergraduate operating systems class

2. Practical experience in dealing directly with the concurrency, resource management, and abstraction problems confronting OS designers and implementers

3. A glimpse into future directions for the evolution of OS and computer hardware design
InhaltThe course is based on practical implementation work, in C and assembly language, and requires solid knowledge of both. The work is mostly carried out in teams of 3-4, using real hardware, and is a mixture of team milestones and individual projects which fit together into a complete system at the end. Emphasis is also placed on a final report which details the complete finished artifact, evaluates its performance, and discusses the choices the team made while building it.
Voraussetzungen / BesonderesThe course is based around a milestone-oriented project, where students work in small groups to implement major components of a microkernel-based operating system. The final assessment will be a combination grades awarded for milestones during the course of the project, a final written report on the work, and a set of test cases run on the final code.
263-4660-00LApplied Cryptography Information Belegung eingeschränkt - Details anzeigen
Number of participants limited to 150.
W8 KP3V + 2U + 2PK. Paterson
KurzbeschreibungThis 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.
LernzielThe 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.
InhaltBasic 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.
LiteraturTextbook: Boneh and Shoup, “A Graduate Course in Applied Cryptography”, https://crypto.stanford.edu/~dabo/cryptobook/BonehShoup_0_4.pdf.
Voraussetzungen / BesonderesIdeally, students will have taken the D-INFK Bachelors course “Information Security" or an equivalent course at Bachelors level.
227-0558-00LPrinciples of Distributed Computing Information W7 KP2V + 2U + 2AR. Wattenhofer, M. Ghaffari
KurzbeschreibungWe study the fundamental issues underlying the design of distributed systems: communication, coordination, fault-tolerance, locality, parallelism, self-organization, symmetry breaking, synchronization, uncertainty. We explore essential algorithmic ideas and lower bound techniques.
LernzielDistributed computing is essential in modern computing and communications systems. Examples are on the one hand large-scale networks such as the Internet, and on the other hand multiprocessors such as your new multi-core laptop. This course introduces the principles of distributed computing, emphasizing the fundamental issues underlying the design of distributed systems and networks: communication, coordination, fault-tolerance, locality, parallelism, self-organization, symmetry breaking, synchronization, uncertainty. We explore essential algorithmic ideas and lower bound techniques, basically the "pearls" of distributed computing. We will cover a fresh topic every week.
InhaltDistributed computing models and paradigms, e.g. message passing, shared memory, synchronous vs. asynchronous systems, time and message complexity, peer-to-peer systems, small-world networks, social networks, sorting networks, wireless communication, and self-organizing systems.

Distributed algorithms, e.g. leader election, coloring, covering, packing, decomposition, spanning trees, mutual exclusion, store and collect, arrow, ivy, synchronizers, diameter, all-pairs-shortest-path, wake-up, and lower bounds
SkriptAvailable. Our course script is used at dozens of other universities around the world.
LiteraturLecture Notes By Roger Wattenhofer. These lecture notes are taught at about a dozen different universities through the world.

Distributed Computing: Fundamentals, Simulations and Advanced Topics
Hagit Attiya, Jennifer Welch.
McGraw-Hill Publishing, 1998, ISBN 0-07-709352 6

Introduction to Algorithms
Thomas Cormen, Charles Leiserson, Ronald Rivest.
The MIT Press, 1998, ISBN 0-262-53091-0 oder 0-262-03141-8

Disseminatin of Information in Communication Networks
Juraj Hromkovic, Ralf Klasing, Andrzej Pelc, Peter Ruzicka, Walter Unger.
Springer-Verlag, Berlin Heidelberg, 2005, ISBN 3-540-00846-2

Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes
Frank Thomson Leighton.
Morgan Kaufmann Publishers Inc., San Francisco, CA, 1991, ISBN 1-55860-117-1

Distributed Computing: A Locality-Sensitive Approach
David Peleg.
Society for Industrial and Applied Mathematics (SIAM), 2000, ISBN 0-89871-464-8
Voraussetzungen / BesonderesCourse pre-requisites: Interest in algorithmic problems. (No particular course needed.)
401-3632-00LComputational StatisticsW8 KP3V + 1UM. H. Maathuis
KurzbeschreibungWe discuss modern statistical methods for data analysis, including methods for data exploration, prediction and inference. We pay attention to algorithmic aspects, theoretical properties and practical considerations. The class is hands-on and methods are applied using the statistical programming language R.
LernzielThe student obtains an overview of modern statistical methods for data analysis, including their algorithmic aspects and theoretical properties. The methods are applied using the statistical programming language R.
Voraussetzungen / BesonderesAt least one semester of (basic) probability and statistics.

Programming experience is helpful but not required.
Wahlfächer der Vertiefung General Studies
NummerTitelTypECTSUmfangDozierende
252-0312-00LUbiquitous Computing Information W4 KP2V + 1AC. Holz, F. Mattern, S. Mayer
KurzbeschreibungUnlike desktop computing, ubiquitous computing occurs anytime and everywhere, using any device, in any location, and in any format. Computers exist in different forms, from watches and phones to refrigerators or pairs of glasses.
Main topics: Smart environments, IoT, mobiles & wearables, context & location, sensing & tracking, computer vision on embedded systems, health monitoring, fabrication.
LernzielUnlike desktop computing, ubiquitous computing occurs anytime and everywhere, using any device, in any location, and in any format. Computers exist in different forms, from watches and phones to refrigerators or pairs of glasses.
Main topics: Smart environments, IoT, mobiles & wearables, context & location, sensing & tracking, computer vision on embedded systems, health monitoring, fabrication.
SkriptCopies of slides will be made available
LiteraturWill be provided in the lecture. To put you in the mood:
Mark Weiser: The Computer for the 21st Century. Scientific American, September 1991, pp. 94-104
252-0408-00LCryptographic Protocols Information W6 KP2V + 2U + 1AM. Hirt, U. Maurer
KurzbeschreibungThe course presents a selection of hot research topics in cryptography. The choice of topics varies and may include provable security, interactive proofs, zero-knowledge protocols, secret sharing, secure multi-party computation, e-voting, etc.
LernzielIndroduction to a very active research area with many gems and paradoxical
results. Spark interest in fundamental problems.
InhaltThe course presents a selection of hot research topics in cryptography. The choice of topics varies and may include provable security, interactive proofs, zero-knowledge protocols, secret sharing, secure multi-party computation, e-voting, etc.
Skriptthe lecture notes are in German, but they are not required as the entire
course material is documented also in other course material (in english).
Voraussetzungen / BesonderesA basic understanding of fundamental cryptographic concepts
(as taught for example in the course Information Security or
in the course Cryptography Foundations) is useful, but not required.
252-0437-00LVerteilte Algorithmen Information W5 KP3V + 1AF. Mattern
KurzbeschreibungModelle verteilter Berechnungen; Raum-Zeit Diagramme; Virtuelle Zeit; Logische Uhren und Kausalität; Wellenalgorithmen; Verteilte und parallele Graphtraversierung; Berechnung konsistenter Schnappschüsse; Wechselseitiger Ausschluss; Election und Symmetriebrechung; Verteilte Terminierung; Garbage-Collection in verteilten Systemen; Beobachten verteilter Systeme; Berechnung globaler Prädikate.
LernzielKennenlernen von Modellen und Algorithmen verteilter Systeme.
InhaltVerteilte Algorithmen sind Verfahren, die dadurch charakterisiert sind, dass mehrere autonome Prozesse gleichzeitig Teile eines gemeinsamen Problems in kooperativer Weise bearbeiten und der dabei erforderliche Informationsaustausch ausschliesslich über Nachrichten erfolgt. Derartige Algorithmen kommen im Rahmen verteilter Systeme zum Einsatz, bei denen kein gemeinsamer Speicher existiert und die Übertragungszeit von Nachrichten i.a. nicht vernachlässigt werden kann. Da dabei kein Prozess eine aktuelle konsistente Sicht des globalen Zustands besitzt, führt dies zu interessanten Problemen.
Im einzelnen werden u.a. folgende Themen behandelt:
Modelle verteilter Berechnungen; Raum-Zeit Diagramme; Virtuelle Zeit; Logische Uhren und Kausalität; Wellenalgorithmen; Verteilte und parallele Graphtraversierung; Berechnung konsistenter Schnappschüsse; Wechselseitiger Ausschluss; Election und Symmetriebrechung; Verteilte Terminierung; Garbage-Collection in verteilten Systemen; Beobachten verteilter Systeme; Berechnung globaler Prädikate.
Literatur- F. Mattern: Verteilte Basisalgorithmen, Springer-Verlag
- G. Tel: Topics in Distributed Algorithms, Cambridge University Press
- G. Tel: Introduction to Distributed Algorithms, Cambridge University Press, 2nd edition
- A.D. Kshemkalyani, M. Singhal: Distributed Computing, Cambridge University Press
- N. Lynch: Distributed Algorithms, Morgan Kaufmann Publ
252-0526-00LStatistical Learning Theory Information W7 KP3V + 2U + 1AJ. M. Buhmann, C. Cotrini Jimenez
KurzbeschreibungThe course covers advanced methods of statistical learning:

- Variational methods and optimization.
- Deterministic annealing.
- Clustering for diverse types of data.
- Model validation by information theory.
LernzielThe course surveys recent methods of statistical learning. The fundamentals of machine learning, as presented in the courses "Introduction to Machine Learning" and "Advanced Machine Learning", are expanded from the perspective of statistical learning.
Inhalt- Variational methods and optimization. We consider optimization approaches for problems where the optimizer is a probability distribution. We will discuss concepts like maximum entropy, information bottleneck, and deterministic annealing.

- Clustering. This is the problem of sorting data into groups without using training samples. We discuss alternative notions of "similarity" between data points and adequate optimization procedures.

- Model selection and validation. This refers to the question of how complex the chosen model should be. In particular, we present an information theoretic approach for model validation.

- Statistical physics models. We discuss approaches for approximately optimizing large systems, which originate in statistical physics (free energy minimization applied to spin glasses and other models). We also study sampling methods based on these models.
SkriptA draft of a script will be provided. Lecture slides will be made available.
LiteraturHastie, Tibshirani, Friedman: The Elements of Statistical Learning, Springer, 2001.

L. Devroye, L. Gyorfi, and G. Lugosi: A probabilistic theory of pattern recognition. Springer, New York, 1996
Voraussetzungen / BesonderesKnowledge of machine learning (introduction to machine learning and/or advanced machine learning)
Basic knowledge of statistics.
252-0570-00LGame Programming Laboratory Information
Im Masterstudium können zusätzlich zu den Vertiefungsübergreifenden Fächern nur max. 10 Kreditpunkte über Laboratorien erarbeitet werden. Weitere Laboratorien werden auf dem Beiblatt aufgeführt.
W10 KP9PB. Sumner
KurzbeschreibungDas Ziel dieses Kurses ist ein vertieftes Verständnis der Technologie und der Programmierung von Computer-Spielen. Die Studierenden entwerfen und entwickeln in kleinen Gruppen ein Computer-Spiel und machen sich so vertraut mit der Kunst des Spiel-Programmierens.
LernzielDas Ziel dieses neuen Kurses ist es, die Studenten mit der Technologie und der Kunst des Programmierens von modernen dreidimensionalen Computerspielen vertraut zu machen.
InhaltDies ist ein Kurs, der auf die Technologie von modernen dreidimensionalen Computerspielen eingeht. Während des Kurses werden die Studenten in kleinen Gruppen ein Computerspiel entwerfen und entwickeln. Der Schwerpunkt des Kurses wird auf technischen Aspekten der Spielentwicklung wie Rendering, Kinematographie, Interaktion, Physik, Animation und KI liegen. Zusätzlich werden wir aber auch Wert auf kreative Ideen für fortgeschrittenes Gameplay und visuelle Effekte legen.

Der Kurs wird als Labor durchgeführt. Zusätzlich zu Vorträgen und Übungen wird der Kurs in einen praktischen, hands-on Ansatz durchgeführt. Wir treffen uns einmal wöchentlich um technische Aspekte zu besprechen und den Fortschritt der Entwicklung zu verfolgen. Für die Enwicklung verwenden wir MonoGames. Dies ist eine Ansammlung von Bibliotheken und Werkzeugen um die Spieleentwicklung zu erleichtern. Die Entwicklung wird zunächst auf dem PC stattfinden, das Spiel wird dann im weiteren Verlauf auf der Xbox One Konsole eingesetzt.

Am Ende des Kurses werden die Resultate öffentlich präsentiert.
SkriptGame Design Workshop: A Playcentric Approach to Creating Innovative Games by Tracy Fullerton
Voraussetzungen / BesonderesDie Anzahl der Teilnehmer ist begrenzt.

Voraussetzung für die Teilnahme sind:

- Gute Programmierkenntnisse (Java, C++, C#, o.ä.)

- Erfahrung in Computergrafik: Teilnehmer sollten mindestens die Vorlesung Visual Computing besucht haben. Wir empfehlen auch noch die weiterführenden Kurse Introduction to Computer Graphics, Surface Representations and Geometric Modeling, und Physically-based Simulation in Computer Graphics.
252-0579-00L3D Vision Information W5 KP3G + 1AM. Pollefeys, V. Larsson
KurzbeschreibungThe course covers camera models and calibration, feature tracking and matching, camera motion estimation via simultaneous localization and mapping (SLAM) and visual odometry (VO), epipolar and mult-view geometry, structure-from-motion, (multi-view) stereo, augmented reality, and image-based (re-)localization.
LernzielAfter attending this course, students will:
1. understand the core concepts for recovering 3D shape of objects and scenes from images and video.
2. be able to implement basic systems for vision-based robotics and simple virtual/augmented reality applications.
3. have a good overview over the current state-of-the art in 3D vision.
4. be able to critically analyze and asses current research in this area.
InhaltThe goal of this course is to teach the core techniques required for robotic and augmented reality applications: How to determine the motion of a camera and how to estimate the absolute position and orientation of a camera in the real world. This course will introduce the basic concepts of 3D Vision in the form of short lectures, followed by student presentations discussing the current state-of-the-art. The main focus of this course are student projects on 3D Vision topics, with an emphasis on robotic vision and virtual and augmented reality applications.
252-0817-00LDistributed Systems Laboratory Information
Im Masterstudium können zusätzlich zu den Vertiefungsübergreifenden Fächern nur max. 10 Kreditpunkte über Laboratorien erarbeitet werden. Weitere Laboratorien werden auf dem Beiblatt aufgeführt.
W10 KP9PG. Alonso, T. Hoefler, F. Mattern, A. Singla, R. Wattenhofer, C. Zhang
KurzbeschreibungEntwicklung und / oder Evaluation eines umfangreicheren praktischen Systems mit Technologien aus dem Gebiet der verteilten Systeme. Das Projekt kann aus unterschiedlichen Teilbereichen (von Web-Services bis hin zu ubiquitären Systemen) stammen; typische Technologien umfassen drahtlose Ad-hoc-Netze oder Anwendungen auf Mobiltelefonen.
LernzielErwerb praktischer Kenntnisse bei Entwicklung und / oder Evaluation eines umfangreicheren praktischen Systems mit Technologien aus dem Gebiet der verteilten Systeme.
InhaltEntwicklung und / oder Evaluation eines umfangreicheren praktischen Systems mit Technologien aus dem Gebiet der verteilten Systeme. Das Projekt kann aus unterschiedlichen Teilbereichen (von Web-Services bis hin zu ubiquitären Systemen) stammen; typische Technologien umfassen drahtlose Ad-hoc-Netze oder Anwendungen auf Mobiltelefonen. Zu diesem Praktikum existiert keine Vorlesung. Bei Interesse bitte einen der beteiligten Professoren oder einen Assistenten der Forschungsgruppen kontaktieren.
252-1424-00LModels of ComputationW6 KP2V + 2U + 1AM. Cook
KurzbeschreibungThis course surveys many different models of computation: Turing Machines, Cellular Automata, Finite State Machines, Graph Automata, Circuits, Tilings, Lambda Calculus, Fractran, Chemical Reaction Networks, Hopfield Networks, String Rewriting Systems, Tag Systems, Diophantine Equations, Register Machines, Primitive Recursive Functions, and more.
LernzielThe goal of this course is to become acquainted with a wide variety of models of computation, to understand how models help us to understand the modeled systems, and to be able to develop and analyze models appropriate for new systems.
InhaltThis course surveys many different models of computation: Turing Machines, Cellular Automata, Finite State Machines, Graph Automata, Circuits, Tilings, Lambda Calculus, Fractran, Chemical Reaction Networks, Hopfield Networks, String Rewriting Systems, Tag Systems, Diophantine Equations, Register Machines, Primitive Recursive Functions, and more.
252-3005-00LNatural Language Understanding Information
Findet dieses Semester nicht statt.
Findet im HS20 wieder statt.
W5 KP2V + 1U + 1ANoch nicht bekannt
KurzbeschreibungThis course presents topics in natural language processing with an emphasis on modern techniques, primarily focusing on statistical and deep learning approaches. The course provides an overview of the primary areas of research in language processing as well as a detailed exploration of the models and techniques used both in research and in commercial natural language systems.
LernzielThe objective of the course is to learn the basic concepts in the statistical processing of natural languages. The course will be project-oriented so that the students can also gain hands-on experience with state-of-the-art tools and techniques.
InhaltThis course presents an introduction to general topics and techniques used in natural language processing today, primarily focusing on statistical approaches. The course provides an overview of the primary areas of research in language processing as well as a detailed exploration of the models and techniques used both in research and in commercial natural language systems.
LiteraturLectures will make use of textbooks such as the one by Jurafsky and Martin where appropriate, but will also make use of original research and survey papers.
252-5706-00LMathematical Foundations of Computer Graphics and Vision Information W5 KP2V + 1U + 1AM. R. Oswald, C. Öztireli
KurzbeschreibungThis course presents the fundamental mathematical tools and concepts used in computer graphics and vision. Each theoretical topic is introduced in the context of practical vision or graphic problems, showcasing its importance in real-world applications.
LernzielThe main goal is to equip the students with the key mathematical tools necessary to understand state-of-the-art algorithms in vision and graphics. In addition to the theoretical part, the students will learn how to use these mathematical tools to solve a wide range of practical problems in visual computing. After successfully completing this course, the students will be able to apply these mathematical concepts and tools to practical industrial and academic projects in visual computing.
InhaltThe theory behind various mathematical concepts and tools will be introduced, and their practical utility will be showcased in diverse applications in computer graphics and vision. The course will cover topics in sampling, reconstruction, approximation, optimization, robust fitting, differentiation, quadrature and spectral methods. Applications will include 3D surface reconstruction, camera pose estimation, image editing, data projection, character animation, structure-aware geometry processing, and rendering.
261-5120-00LMachine Learning for Health Care Information Belegung eingeschränkt - Details anzeigen
Number of participants limited to 150.
W5 KP3P + 1AG. Rätsch, J. Vogt, V. Boeva
KurzbeschreibungThe course will review the most relevant methods and applications of Machine Learning in Biomedicine, discuss the main challenges they present and their current technical problems.
LernzielDuring the last years, we have observed a rapid growth in the field of Machine Learning (ML), mainly due to improvements in ML algorithms, the increase of data availability and a reduction in computing costs. This growth is having a profound impact in biomedical applications, where the great variety of tasks and data types enables us to get benefit of ML algorithms in many different ways. In this course we will review the most relevant methods and applications of ML in biomedicine, discuss the main challenges they present and their current technical solutions.
InhaltThe course will consist of four topic clusters that will cover the most relevant applications of ML in Biomedicine:
1) Structured time series: Temporal time series of structured data often appear in biomedical datasets, presenting challenges as containing variables with different periodicities, being conditioned by static data, etc.
2) Medical notes: Vast amount of medical observations are stored in the form of free text, we will analyze stategies for extracting knowledge from them.
3) Medical images: Images are a fundamental piece of information in many medical disciplines. We will study how to train ML algorithms with them.
4) Genomics data: ML in genomics is still an emerging subfield, but given that genomics data are arguably the most extensive and complex datasets that can be found in biomedicine, it is expected that many relevant ML applications will arise in the near future. We will review and discuss current applications and challenges.
Voraussetzungen / BesonderesData Structures & Algorithms, Introduction to Machine Learning, Statistics/Probability, Programming in Python, Unix Command Line

Relation to Course 261-5100-00 Computational Biomedicine: This course is a continuation of the previous course with new topics related to medical data and machine learning. The format of Computational Biomedicine II will also be different. It is helpful but not essential to attend Computational Biomedicine before attending Computational Biomedicine II.
263-3501-00LFuture Internet Information W6 KP1V + 1U + 3AA. Singla
KurzbeschreibungThis course will discuss recent advances in networking, with a focus on the Internet, with topics ranging from the algorithmic design of applications like video streaming to the likely near-future of satellite-based networking.
LernzielThe goals of the course are to build on basic undergraduate-level networking, and provide an understanding of the tradeoffs and existing technology in the design of large, complex networked systems, together with concrete experience of the challenges through a series of lab exercises.
InhaltThe focus of the course is on principles, architectures, protocols, and applications used in modern networked systems. Example topics include:

- How video streaming services like Netflix work, and research on improving their performance.
- How Web browsing could be made faster
- How the Internet's protocols are improving
- Exciting developments in satellite-based networking (ala SpaceX)
- The role of data centers in powering Internet services

A series of programming assignments will form a substantial part of the course grade.
SkriptLecture slides will be made available at the course Web site: https://ndal.ethz.ch/courses/fi.html
LiteraturNo textbook is required, but there will be regularly assigned readings from research literature, liked to the course Web site: https://ndal.ethz.ch/courses/fi.html.
Voraussetzungen / BesonderesAn undergraduate class covering the basics of networking, such as Internet routing and TCP. At ETH, Computer Networks (252-0064-00L) and Communication Networks (227-0120-00L) suffice. Similar courses from other universities are acceptable too.
263-3710-00LMachine Perception Information Belegung eingeschränkt - Details anzeigen
Number of participants limited to 200.
W5 KP2V + 1U + 1AO. Hilliges
KurzbeschreibungRecent developments in neural networks (aka “deep learning”) have drastically advanced the performance of machine perception systems in a variety of areas including computer vision, robotics, and intelligent UIs. This course is a deep dive into deep learning algorithms and architectures with applications to a variety of perceptual tasks.
LernzielStudents will learn about fundamental aspects of modern deep learning approaches for perception. Students will learn to implement, train and debug their own neural networks and gain a detailed understanding of cutting-edge research in learning-based computer vision, robotics and HCI. The final project assignment will involve training a complex neural network architecture and applying it on a real-world dataset of human activity.

The core competency acquired through this course is a solid foundation in deep-learning algorithms to process and interpret human input into computing systems. In particular, students should be able to develop systems that deal with the problem of recognizing people in images, detecting and describing body parts, inferring their spatial configuration, performing action/gesture recognition from still images or image sequences, also considering multi-modal data, among others.
InhaltWe will focus on teaching: how to set up the problem of machine perception, the learning algorithms, network architectures and advanced deep learning concepts in particular probabilistic deep learning models

The course covers the following main areas:
I) Foundations of deep-learning.
II) Probabilistic deep-learning for generative modelling of data (latent variable models, generative adversarial networks and auto-regressive models).
III) Deep learning in computer vision, human-computer interaction and robotics.

Specific topics include: 
I) Deep learning basics:
a) Neural Networks and training (i.e., backpropagation)
b) Feedforward Networks
c) Timeseries modelling (RNN, GRU, LSTM)
d) Convolutional Neural Networks for classification
II) Probabilistic Deep Learning:
a) Latent variable models (VAEs)
b) Generative adversarial networks (GANs)
c) Autoregressive models (PixelCNN, PixelRNN, TCNs)
III) Deep Learning techniques for machine perception:
a) Fully Convolutional architectures for dense per-pixel tasks (i.e., instance segmentation)
b) Pose estimation and other tasks involving human activity
c) Deep reinforcement learning
IV) Case studies from research in computer vision, HCI, robotics and signal processing
LiteraturDeep Learning
Book by Ian Goodfellow and Yoshua Bengio
Voraussetzungen / BesonderesThis is an advanced grad-level course that requires a background in machine learning. Students are expected to have a solid mathematical foundation, in particular in linear algebra, multivariate calculus, and probability. The course will focus on state-of-the-art research in deep-learning and will not repeat basics of machine learning

Please take note of the following conditions:
1) The number of participants is limited to 200 students (MSc and PhDs).
2) Students must have taken the exam in Machine Learning (252-0535-00) or have acquired equivalent knowledge
3) All practical exercises will require basic knowledge of Python and will use libraries such as TensorFlow, scikit-learn and scikit-image. We will provide introductions to TensorFlow and other libraries that are needed but will not provide introductions to basic programming or Python.

The following courses are strongly recommended as prerequisite:
* "Visual Computing" or "Computer Vision"

The course will be assessed by a final written examination in English. No course materials or electronic devices can be used during the examination. Note that the examination will be based on the contents of the lectures, the associated reading materials and the exercises.
  •  Seite  1  von  3 Nächste Seite Letzte Seite     Alle