Search result: Catalogue data in Spring Semester 2021

Cyber Security Master Information
Field of Specialization
Core Courses
NumberTitleTypeECTSHoursLecturers
263-4660-00LApplied Cryptography Information Restricted registration - show details
Number of participants limited to 150.
W8 credits3V + 2U + 2PK. Paterson
AbstractThis 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.
Learning objectiveThe 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.
ContentBasic 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.
LiteratureTextbook: Boneh and Shoup, “A Graduate Course in Applied Cryptography”, https://crypto.stanford.edu/~dabo/cryptobook/BonehShoup_0_4.pdf.
Prerequisites / NoticeStudents should have taken the D-INFK Bachelor's course “Information Security" (252-0211-00) or an alternative first course covering cryptography at a similar level. / In this course, we will use Moodle for content delivery: https://moodle-app2.let.ethz.ch/course/view.php?id=14558.
Electives
NumberTitleTypeECTSHoursLecturers
252-0408-00LCryptographic Protocols Information W6 credits2V + 2U + 1AM. Hirt, U. Maurer
AbstractThe 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.
Learning objectiveIndroduction to a very active research area with many gems and paradoxical
results. Spark interest in fundamental problems.
ContentThe 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.
Lecture notesthe lecture notes are in German, but they are not required as the entire
course material is documented also in other course material (in english).
Prerequisites / NoticeA 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.
263-2925-00LProgram Analysis for System Security and Reliability Information W7 credits2V + 1U + 3AM. Vechev
AbstractSecurity issues in modern systems (blockchains, datacenters, deep learning, etc.) result in billions of losses due to hacks and system downtime. This course introduces fundamental techniques (ranging from automated analysis, machine learning, synthesis, zero-knowledge and their combinations) that can be applied in practice so to build more secure and reliable modern systems.
Learning objective* Understand the fundamental techniques used to create modern security and reliability analysis engines that are used worldwide.

* Understand how symbolic techniques are combined with machine learning (e.g., deep learning, reinforcement learning) so to create new kinds of learning-based analyzers.

* Understand how to quantify and fix security and reliability issues in modern deep learning models.

* Understand open research questions from both theoretical and practical perspectives.
ContentPlease see: https://www.sri.inf.ethz.ch/teaching/pass2021 for detailed course content.
263-4600-00LFormal Methods for Information Security Information W5 credits2V + 1U + 1AS. Krstic, R. Sasse, C. Sprenger
AbstractThe course focuses on formal methods for the modeling and analysis of security protocols for critical systems, ranging from authentication protocols for network security to electronic voting protocols and online banking. In addition, we will also introduce the notions of non-interference and runtime monitoring.
Learning objectiveThe students will learn the key ideas and theoretical foundations of formal modeling and analysis of security protocols. The students will complement their theoretical knowledge by solving practical exercises, completing a small project, and using state-of-the-art tools. The students also learn the fundamentals of non-interference and runtime monitoring.
ContentThe course treats formal methods mainly for the modeling and analysis of security protocols. Cryptographic protocols (such as SSL/TLS, SSH, Kerberos, SAML single-sign on, and IPSec) form the basis for secure communication and business processes. Numerous attacks on published protocols show that the design of cryptographic protocols is extremely error-prone. A rigorous analysis of these protocols is therefore indispensable, and manual analysis is insufficient. The lectures cover the theoretical basis for the (tool-supported) formal modeling and analysis of such protocols. Specifically, we discuss their operational semantics, the formalization of security properties, and techniques and algorithms for their verification.

The second part of this course will cover a selection of advanced topics in security protocols such as abstraction techniques for efficient verification, secure communication with humans, the link between symbolic protocol models and cryptographic models as well as RFID protocols (a staple of the Internet of Things) and electronic voting protocols, including the relevant privacy properties. Moreover, we will give an introduction to two additional topics: non-interference as a general notion of secure systems, both from a semantic and a programming language perspective (type system), and runtime verification/monitoring to detect violations of security policies expressed as trace properties.
263-4656-00LDigital Signatures Information W5 credits2V + 2AD. Hofheinz
AbstractDigital signatures as one central cryptographic building block. Different security goals and security definitions for digital signatures, followed by a variety of popular and fundamental signature schemes with their security analyses.
Learning objectiveThe student knows a variety of techniques to construct and analyze the security of digital signature schemes. This includes modularity as a central tool of constructing secure schemes, and reductions as a central tool to proving the security of schemes.
ContentWe will start with several definitions of security for signature schemes, and investigate the relations among them. We will proceed to generic (but inefficient) constructions of secure signatures, and then move on to a number of efficient schemes based on concrete computational hardness assumptions. On the way, we will get to know paradigms such as hash-then-sign, one-time signatures, and chameleon hashing as central tools to construct secure signatures.
LiteratureJonathan Katz, "Digital Signatures."
Prerequisites / NoticeIdeally, students will have taken the D-INFK Bachelors course "Information Security" or an equivalent course at Bachelors level.
Seminar
NumberTitleTypeECTSHoursLecturers
252-2603-00LSeminar on Systems Security Information Restricted registration - show details
Number of participants limited to 22.

The deadline for deregistering expires at the end of the second week of the semester. Students who are still registered after that date, but do not attend the seminar, will officially fail the seminar.
W2 credits2SS. Shinde
AbstractThe seminar will focus on fundamental and recent topics in systems
security.
Learning objectiveThe learning objective is to analyze selected research
papers published at top systems+security venues and then identify open
problems in this space. The seminar will achieve this via several
components: reading papers, technical presentations, writing analysis
and critique summaries, class discussions, and exploring potential
research topics.
ContentEach student will pick one paper from the selected list, present it in
the class, and lead the discussion for that paper. All students will
read at most two research papers per week and submit their critique
summaries before each class.
Prerequisites / NoticeStudents who are either interested in security research or are
exploring thesis topics are highly encouraged to take this course.
Students with systems/architecture/verification/PL expertise and basic
security understanding are welcome.
263-4651-00LCurrent Topics in Cryptography Information Restricted registration - show details
Number of participants limited to 24.

The deadline for deregistering expires at the end of the second week of the semester. Students who are still registered after that date, but do not attend the seminar, will officially fail the seminar.
W2 credits2SD. Hofheinz, U. Maurer, K. Paterson
AbstractIn this seminar course, students present and discuss a variety of recent research papers in Cryptography.
Learning objectiveIndependent study of scientific literature and assessment of its contributions as well as learning and practicing presentation techniques.
ContentThe course lecturers will provide a list of papers from which students will select.
LiteratureThe reading list will be published on the course website.
Prerequisites / NoticeIdeally, students will have taken the D-INFK Bachelors course “Information Security" or an equivalent course at Bachelors level. Ideally, they will have attended or will attend in parallel the Masters course in "Applied Cryptography”.
Semester Project
NumberTitleTypeECTSHoursLecturers
260-0100-00LSemester Project Restricted registration - show details
Only for Cyber Security MSc
W12 credits26AProfessors
AbstractThe Semester Project provides students with the opportunity to apply acquired knowledge and skills.
Learning objectiveThe students can gain hand-on experience by solving independently a technical-scientific problem.
Prerequisites / NoticePrerequisites: At least one core course in Cyber Security and one inter focus course must have been completed successfully.
Minor
Computational Science
Core Courses
NumberTitleTypeECTSHoursLecturers
401-3632-00LComputational StatisticsW8 credits3V + 1UM. Mächler
AbstractWe 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.
Learning objectiveThe 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.
ContentSee the class website
Prerequisites / NoticeAt least one semester of (basic) probability and statistics.

Programming experience is helpful but not required.
Electives
NumberTitleTypeECTSHoursLecturers
252-0526-00LStatistical Learning Theory Information W8 credits3V + 2U + 2AJ. M. Buhmann, C. Cotrini Jimenez
AbstractThe course covers advanced methods of statistical learning:

- Variational methods and optimization.
- Deterministic annealing.
- Clustering for diverse types of data.
- Model validation by information theory.
Learning objectiveThe 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.
Content- 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.
Lecture notesA draft of a script will be provided. Lecture slides will be made available.
LiteratureHastie, 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
Prerequisites / NoticeKnowledge of machine learning (introduction to machine learning and/or advanced machine learning)
Basic knowledge of statistics.
261-5120-00LMachine Learning for Health Care Information Restricted registration - show details
Number of participants limited to 150.
W5 credits3P + 1AV. Boeva, G. Rätsch, J. Vogt
AbstractThe 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.
Learning objectiveDuring 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.
ContentThe 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.
Prerequisites / NoticeData 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-5300-00LGuarantees for Machine Learning Information Restricted registration - show details
Number of participants limited to 30.

Last cancellation/deregistration date for this graded semester performance: 17 March 2021! Please note that after that date no deregistration will be accepted and a "no show" will appear on your transcript.
W7 credits3G + 3AF. Yang
AbstractThis course is aimed at advanced master and doctorate students who want to conduct independent research on theory for modern machine learning (ML). It teaches classical and recent methods in statistical learning theory commonly used to prove theoretical guarantees for ML algorithms. The knowledge is then applied in independent project work that focuses on understanding modern ML phenomena.
Learning objectiveLearning objectives:

- acquire enough mathematical background to understand a good fraction of theory papers published in the typical ML venues. For this purpose, students will learn common mathematical techniques from statistics and optimization in the first part of the course and apply this knowledge in the project work
- critically examine recently published work in terms of relevance and determine impactful (novel) research problems. This will be an integral part of the project work and involves experimental as well as theoretical questions
- find and outline an approach (some subproblem) to prove a conjectured theorem. This will be practiced in lectures / exercise and homeworks and potentially in the final project.
- effectively communicate and present the problem motivation, new insights and results to a technical audience. This will be primarily learned via the final presentation and report as well as during peer-grading of peer talks.
ContentThis course touches upon foundational methods in statistical learning theory aimed at proving theoretical guarantees for machine learning algorithms, touching on the following topics
- concentration bounds
- uniform convergence and empirical process theory
- high-dimensional statistics (e.g. sparsity)
- regularization for non-parametric statistics (e.g. in RKHS, neural networks)
- implicit regularization via gradient descent (e.g. margins, early stopping)
- minimax lower bounds

The project work focuses on current theoretical ML research that aims to understand modern phenomena in machine learning, including but not limited to
- how overparameterization could help generalization ( RKHS, NN )
- how overparameterization could help optimization ( non-convex optimization, loss landscape )
- complexity measures and approximation theoretic properties of randomly initialized and trained NN
- generalization of robust learning ( adversarial robustness, standard and robust error tradeoff, distribution shift)
Prerequisites / NoticeIt’s absolutely necessary for students to have a strong mathematical background (basic real analysis, probability theory, linear algebra) and good knowledge of core concepts in machine learning taught in courses such as “Introduction to Machine Learning”, “Regression”/ “Statistical Modelling”. In addition to these prerequisites, this class requires a high degree of mathematical maturity—including abstract thinking and the ability to understand and write proofs.

Students have usually taken a subset of Fundamentals of Mathematical Statistics, Probabilistic AI, Neural Network Theory, Optimization for Data Science, Advanced ML, Statistical Learning Theory, Probability Theory (D-MATH)
Distributed Systems
Core Courses
NumberTitleTypeECTSHoursLecturers
227-0558-00LPrinciples of Distributed Computing Information W7 credits2V + 2U + 2AR. Wattenhofer, M. Ghaffari
AbstractWe 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.
Learning objectiveDistributed 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.
ContentDistributed 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
Lecture notesAvailable. Our course script is used at dozens of other universities around the world.
LiteratureLecture 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
Prerequisites / NoticeCourse pre-requisites: Interest in algorithmic problems. (No particular course needed.)
263-3800-00LAdvanced Operating Systems Information W7 credits2V + 2U + 2AD. Cock, T. Roscoe
AbstractThis 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.
Learning objectiveThe 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
ContentThe 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.
Prerequisites / NoticeThe 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-3855-00LCloud Computing Architecture Information W9 credits3V + 2U + 3AG. Alonso, A. Klimovic
AbstractCloud computing hosts a wide variety of online services that we use on a daily basis, including web search, social networks, and video streaming. This course will cover how datacenter hardware, systems software, and application frameworks are designed for the cloud.
Learning objectiveAfter successful completion of this course, students will be able to: 1) reason about performance, energy efficiency, and availability tradeoffs in the design of cloud system software, 2) describe how datacenter hardware is organized and explain why it is organized as such, 3) implement cloud applications as well as analyze and optimize their performance.
ContentIn this course, we study how datacenter hardware, systems software, and applications are designed at large scale for the cloud. The course covers topics including server design, cluster management, large-scale storage systems, serverless computing, data analytics frameworks, and performance analysis.
Lecture notesLecture slides will be available on the course website.
Prerequisites / NoticeUndergraduate courses in 1) computer architecture and 2) operating systems, distributed systems, and/or database systems are strongly recommended.
Elective Courses
NumberTitleTypeECTSHoursLecturers
252-0312-00LUbiquitous Computing Information W6 credits2V + 3AC. Holz
AbstractUbiquitous Computing means interacting with information and with each other anywhere, mediated through miniature technology everywhere. We will investigate the technical aspects of Ubicomp, particularly sensing, processing, and sense making: input (touch & gesture), activity, monitoring cardiovascular health and neurological conditions, context & location sensing, affective computing.
Learning objectiveThe course will combine high-level concepts with low-level technical methods needed to sense, detect, and understand them.

High-level:
– input modalities for interactive systems (touch, gesture)
– "activities" and "events" (exercises and other mechanical activities such as movements and resulting vibrations)
– health monitoring (basic cardiovascular physiology)
– location (GPS, urban simulations, smart cities and development)
– affective computing (emotions, mood, personality)

Low-level:
– sampling (Shannon Nyquist) and filtering (FIR, IIR), time and frequency domains (Fourier transforms)
– cross-modal sensor systems, signal synchronization and correlation
– event detection, classification, prediction using basic signal processing as well as learning-based methods
– sensor types: optical, mechanical/acoustic, electromagnetic

– signals modalities and processing of: application (modalities/methods)
* touch detection (resistive sensing, capacitive sensing, diffuse illumination/DI, spectral reflections, frustrated total internal reflection/FTIR, fingerprint scanning, surface-acoustic waves)
* gesture recognition (inertial sensing through accelerometers, gyroscopes)
* activity detection and tracking (inertial, acoustic, vibrotactile for classification, counting, vibrometry)
* occupation and use (electricity monitoring, water consumption, single-point sensing)
* cardiovascular (electrocardioagraphy, photoplethysmography, pulse oximetry, ballistocardiography, blood pressure, pulse transit time, bio impedance)
* affective computing (heart rate variability, R-R intervals, electrodermal activity, sympathetic tone, facial expressions)
* neurological (fatigue, fatigability)
* location (GPS, BLE, Wifi)
Content"The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it" — Mark Weiser, 1991.

This is the premise of Ubiquitous Computing, a vision that is slowly becoming reality as everything is a device and we can interact with information and with each other anywhere, mediated through miniature technology. Along with this change, interaction modalities have changed, too, from explicit input on keyboards and mice to implicit and passively observed input through sensors in the environment (e.g., speakers, cameras, temperature/occupancy detectors) and those we now wear on our bodies (e.g., health sensors, activity sensors, miniature computers we call smartwatches).

In this course, we will look at the technical side of Ubicomp, particularly
– sensing (incl. 'signals', sampling, data acquisition methods, controlled user studies, uncontrolled studies in-the-wild),
– processing (incl. frequencies, feature extraction, detection), and
– sense making: input sensing (touch & gesture), activity sensing (motion), monitoring cardiovascular health, affective state, neurological conditions (with basics on cardiovascular physiology + PPG, PulseOx, ECG, EDA, BCG, SCG, HRV, BioZ, IPG, PAT, PTT), context & location sensing (GPS/Wifi, motion).

Lectures will be accompanied by practical sessions that focus on sensor modalities and signal processing. Here, we will work on existing data sets and devise methods to record our own data for processing and prediction purposes.

A series of reading assignments, covering both well-established publications in Ubicomp as well as emerging results and methods, will bridge the fundamentals and topics taught in class to academic research and real-world problems.

More information on the course site: https://teaching.siplab.org/ubiquitous_computing/2021/
Lecture notesCopies of slides will be made available. Lectures will be recorded and made available online.

More information on the course site: https://teaching.siplab.org/ubiquitous_computing/2021/
LiteratureWill 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-0817-00LDistributed Systems Laboratory Information W10 credits9PG. Alonso, T. Hoefler, A. Klimovic, A. Singla, R. Wattenhofer, C. Zhang
AbstractThis course involves the participation in a substantial development and/or evaluation project involving distributed systems technology. There are projects available in a wide range of areas: from web services to ubiquitous computing including as well wireless networks, ad-hoc networks, and distributed application on mobile phones.
Learning objectiveStudents acquire practical knowledge about technologies from the area of distributed systems.
ContentThis course involves the participation in a substantial development and/or evaluation project involving distributed systems technology. There are projects available in a wide range of areas: from web services to ubiquitous computing including as well wireless networks, ad-hoc networks, and distributed application on mobile phones. The objecte of the project is for the students to gain hands-on-experience with real products and the latest technology in distributed systems. There is no lecture associated to the course.
263-3710-00LMachine Perception Information Restricted registration - show details
Number of participants limited to 200.
W8 credits3V + 2U + 2AO. Hilliges, S. Tang
AbstractRecent 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.
Learning objectiveStudents 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.
ContentWe 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
LiteratureDeep Learning
Book by Ian Goodfellow and Yoshua Bengio
Prerequisites / Notice***
In accordance with the ETH Covid-19 master plan the lecture will be fully virtual. Details on the course website.
***

This 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 Pytorch, scikit-learn and scikit-image. We will provide introductions to Pytorch 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.
Information Systems
Core Courses
NumberTitleTypeECTSHoursLecturers
263-2925-00LProgram Analysis for System Security and Reliability Information W7 credits2V + 1U + 3AM. Vechev
AbstractSecurity issues in modern systems (blockchains, datacenters, deep learning, etc.) result in billions of losses due to hacks and system downtime. This course introduces fundamental techniques (ranging from automated analysis, machine learning, synthesis, zero-knowledge and their combinations) that can be applied in practice so to build more secure and reliable modern systems.
Learning objective* Understand the fundamental techniques used to create modern security and reliability analysis engines that are used worldwide.

* Understand how symbolic techniques are combined with machine learning (e.g., deep learning, reinforcement learning) so to create new kinds of learning-based analyzers.

* Understand how to quantify and fix security and reliability issues in modern deep learning models.

* Understand open research questions from both theoretical and practical perspectives.
ContentPlease see: https://www.sri.inf.ethz.ch/teaching/pass2021 for detailed course content.
Elective Courses
NumberTitleTypeECTSHoursLecturers
252-0312-00LUbiquitous Computing Information W6 credits2V + 3AC. Holz
AbstractUbiquitous Computing means interacting with information and with each other anywhere, mediated through miniature technology everywhere. We will investigate the technical aspects of Ubicomp, particularly sensing, processing, and sense making: input (touch & gesture), activity, monitoring cardiovascular health and neurological conditions, context & location sensing, affective computing.
Learning objectiveThe course will combine high-level concepts with low-level technical methods needed to sense, detect, and understand them.

High-level:
– input modalities for interactive systems (touch, gesture)
– "activities" and "events" (exercises and other mechanical activities such as movements and resulting vibrations)
– health monitoring (basic cardiovascular physiology)
– location (GPS, urban simulations, smart cities and development)
– affective computing (emotions, mood, personality)

Low-level:
– sampling (Shannon Nyquist) and filtering (FIR, IIR), time and frequency domains (Fourier transforms)
– cross-modal sensor systems, signal synchronization and correlation
– event detection, classification, prediction using basic signal processing as well as learning-based methods
– sensor types: optical, mechanical/acoustic, electromagnetic

– signals modalities and processing of: application (modalities/methods)
* touch detection (resistive sensing, capacitive sensing, diffuse illumination/DI, spectral reflections, frustrated total internal reflection/FTIR, fingerprint scanning, surface-acoustic waves)
* gesture recognition (inertial sensing through accelerometers, gyroscopes)
* activity detection and tracking (inertial, acoustic, vibrotactile for classification, counting, vibrometry)
* occupation and use (electricity monitoring, water consumption, single-point sensing)
* cardiovascular (electrocardioagraphy, photoplethysmography, pulse oximetry, ballistocardiography, blood pressure, pulse transit time, bio impedance)
* affective computing (heart rate variability, R-R intervals, electrodermal activity, sympathetic tone, facial expressions)
* neurological (fatigue, fatigability)
* location (GPS, BLE, Wifi)
Content"The most profound technologies are those that disappear. They weave themselves into the fabric of everyday life until they are indistinguishable from it" — Mark Weiser, 1991.

This is the premise of Ubiquitous Computing, a vision that is slowly becoming reality as everything is a device and we can interact with information and with each other anywhere, mediated through miniature technology. Along with this change, interaction modalities have changed, too, from explicit input on keyboards and mice to implicit and passively observed input through sensors in the environment (e.g., speakers, cameras, temperature/occupancy detectors) and those we now wear on our bodies (e.g., health sensors, activity sensors, miniature computers we call smartwatches).

In this course, we will look at the technical side of Ubicomp, particularly
– sensing (incl. 'signals', sampling, data acquisition methods, controlled user studies, uncontrolled studies in-the-wild),
– processing (incl. frequencies, feature extraction, detection), and
– sense making: input sensing (touch & gesture), activity sensing (motion), monitoring cardiovascular health, affective state, neurological conditions (with basics on cardiovascular physiology + PPG, PulseOx, ECG, EDA, BCG, SCG, HRV, BioZ, IPG, PAT, PTT), context & location sensing (GPS/Wifi, motion).

Lectures will be accompanied by practical sessions that focus on sensor modalities and signal processing. Here, we will work on existing data sets and devise methods to record our own data for processing and prediction purposes.

A series of reading assignments, covering both well-established publications in Ubicomp as well as emerging results and methods, will bridge the fundamentals and topics taught in class to academic research and real-world problems.

More information on the course site: https://teaching.siplab.org/ubiquitous_computing/2021/
Lecture notesCopies of slides will be made available. Lectures will be recorded and made available online.

More information on the course site: https://teaching.siplab.org/ubiquitous_computing/2021/
LiteratureWill 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
  •  Page  1  of  3 Next page Last page     All