Search result: Catalogue data in Autumn Semester 2020
|Cyber Security Master|
|252-0535-00L||Advanced Machine Learning||W||10 credits||3V + 2U + 4A||J. M. Buhmann, C. Cotrini Jimenez|
|Abstract||Machine learning algorithms provide analytical methods to search data sets for characteristic patterns. Typical tasks include the classification of data, function fitting and clustering, with applications in image and speech analysis, bioinformatics and exploratory data analysis. This course is accompanied by practical machine learning projects.|
|Objective||Students will be familiarized with advanced concepts and algorithms for supervised and unsupervised learning; reinforce the statistics knowledge which is indispensible to solve modeling problems under uncertainty. Key concepts are the generalization ability of algorithms and systematic approaches to modeling and regularization. Machine learning projects will provide an opportunity to test the machine learning algorithms on real world data.|
|Content||The theory of fundamental machine learning concepts is presented in the lecture, and illustrated with relevant applications. Students can deepen their understanding by solving both pen-and-paper and programming exercises, where they implement and apply famous algorithms to real-world data.|
Topics covered in the lecture include:
What is data?
Computational learning theory
Ensembles: Bagging and Boosting
Max Margin methods
Dimensionality reduction techniques
Non-parametric density estimation
Learning Dynamical Systems
|Lecture notes||No lecture notes, but slides will be made available on the course webpage.|
|Literature||C. Bishop. Pattern Recognition and Machine Learning. Springer 2007.|
R. Duda, P. Hart, and D. Stork. Pattern Classification. John Wiley &
Sons, second edition, 2001.
T. Hastie, R. Tibshirani, and J. Friedman. The Elements of Statistical
Learning: Data Mining, Inference and Prediction. Springer, 2001.
L. Wasserman. All of Statistics: A Concise Course in Statistical
Inference. Springer, 2004.
|Prerequisites / Notice||The course requires solid basic knowledge in analysis, statistics and numerical methods for CSE as well as practical programming experience for solving assignments.|
Students should have followed at least "Introduction to Machine Learning" or an equivalent course offered by another institution.
PhD students are required to obtain a passing grade in the course (4.0 or higher based on project and exam) to gain credit points.
|263-3010-00L||Big Data||W||10 credits||3V + 2U + 4A||G. Fourny|
|Abstract||The key challenge of the information society is to turn data into information, information into knowledge, knowledge into value. This has become increasingly complex. Data comes in larger volumes, diverse shapes, from different sources. Data is more heterogeneous and less structured than forty years ago. Nevertheless, it still needs to be processed fast, with support for complex operations.|
|Objective||This combination of requirements, together with the technologies that have emerged in order to address them, is typically referred to as "Big Data." This revolution has led to a completely new way to do business, e.g., develop new products and business models, but also to do science -- which is sometimes referred to as data-driven science or the "fourth paradigm".|
Unfortunately, the quantity of data produced and available -- now in the Zettabyte range (that's 21 zeros) per year -- keeps growing faster than our ability to process it. Hence, new architectures and approaches for processing it were and are still needed. Harnessing them must involve a deep understanding of data not only in the large, but also in the small.
The field of databases evolves at a fast pace. In order to be prepared, to the extent possible, to the (r)evolutions that will take place in the next few decades, the emphasis of the lecture will be on the paradigms and core design ideas, while today's technologies will serve as supporting illustrations thereof.
After visiting this lecture, you should have gained an overview and understanding of the Big Data landscape, which is the basis on which one can make informed decisions, i.e., pick and orchestrate the relevant technologies together for addressing each business use case efficiently and consistently.
|Content||This course gives an overview of database technologies and of the most important database design principles that lay the foundations of the Big Data universe. We take the monolithic, one-machine relational stack from the 1970s, smash it down and rebuild it on top of large clusters: starting with distributed storage, and all the way up to syntax, models, validation, processing, indexing, and querying. A broad range of aspects is covered with a focus on how they fit all together in the big picture of the Big Data ecosystem.|
No data is harmed during this course, however, please be psychologically prepared that our data may not always be in third normal form.
- physical storage: distributed file systems (HDFS), object storage(S3), key-value stores
- logical storage: document stores (MongoDB), column stores (HBase), graph databases (neo4j), data warehouses (ROLAP)
- data formats and syntaxes (XML, JSON, RDF, Turtle, CSV, XBRL, YAML, protocol buffers, Avro)
- data shapes and models (tables, trees, graphs, cubes)
- type systems and schemas: atomic types, structured types (arrays, maps), set-based type systems (?, *, +)
- an overview of functional, declarative programming languages across data shapes (SQL, XQuery, JSONiq, Cypher, MDX)
- the most important query paradigms (selection, projection, joining, grouping, ordering, windowing)
- paradigms for parallel processing, two-stage (MapReduce) and DAG-based (Spark)
- resource management (YARN)
- what a data center is made of and why it matters (racks, nodes, ...)
- underlying architectures (internal machinery of HDFS, HBase, Spark, neo4j)
- optimization techniques (functional and declarative paradigms, query plans, rewrites, indexing)
Large scale analytics and machine learning are outside of the scope of this course.
|Literature||Papers from scientific conferences and journals. References will be given as part of the course material during the semester.|
|Prerequisites / Notice||This course, in the autumn semester, is only intended for:|
- Computer Science students
- Data Science students
- CBB students with a Computer Science background
Mobility students in CS are also welcome and encouraged to attend. If you experience any issue while registering, please contact the study administration and you will be gladly added.
For students of all other departements interested in this fascinating topic: I would love to have you visit my lectures as well! So there is a series of two courses specially designed for you:
- "Information Systems for Engineers" (SQL, relational databases): this Fall
- "Big Data for Engineers" (similar to Big Data, but adapted for non Computer Scientists): Spring 2021
There is no hard dependency, so you can either them in any order, but it may be more enjoyable to start with Information Systems for Engineers.
Students who successfully completed Big Data for Engineers are not allowed to enrol in the course Big Data.
|263-3845-00L||Data Management Systems||W||8 credits||3V + 1U + 3A||G. Alonso|
|Abstract||The course will cover the implementation aspects of data management systems using relational database engines as a starting point to cover the basic concepts of efficient data processing and then expanding those concepts to modern implementations in data centers and the cloud.|
|Objective||The goal of the course is to convey the fundamental aspects of efficient data management from a systems implementation perspective: storage, access, organization, indexing, consistency, concurrency, transactions, distribution, query compilation vs interpretation, data representations, etc. Using conventional relational engines as a starting point, the course will aim at providing an in depth coverage of the latest technologies used in data centers and the cloud to implement large scale data processing in various forms.|
|Content||The course will first cover fundamental concepts in data management: storage, locality, query optimization, declarative interfaces, concurrency control and recovery, buffer managers, management of the memory hierarchy, presenting them in a system independent manner. The course will place an special emphasis on understating these basic principles as they are key to understanding what problems existing systems try to address. It will then proceed to explore their implementation in modern relational engines supporting SQL to then expand the range of systems used in the cloud: key value stores, geo-replication, query as a service, serverless, large scale analytics engines, etc.|
|Literature||The main source of information for the course will be articles and research papers describing the architecture of the systems discussed. The list of papers will be provided at the beginning of the course.|
|263-2400-00L||Reliable and Interpretable Artificial Intelligence||W||6 credits||2V + 2U + 1A||M. Vechev|
|Abstract||Creating reliable and explainable probabilistic models is a fundamental challenge to solving the artificial intelligence problem. This course covers some of the latest and most exciting advances that bring us closer to constructing such models.|
|Objective||The main objective of this course is to expose students to the latest and most exciting research in the area of explainable and interpretable artificial intelligence, a topic of fundamental and increasing importance. Upon completion of the course, the students should have mastered the underlying methods and be able to apply them to a variety of problems.|
To facilitate deeper understanding, an important part of the course will be a group hands-on programming project where students will build a system based on the learned material.
|Content||The course covers some of the latest research (over the last 2-3 years) underlying the creation of safe, trustworthy, and reliable AI (more information here: https://www.sri.inf.ethz.ch/teaching/riai2020):|
* Adversarial Attacks on Deep Learning (noise-based, geometry attacks, sound attacks, physical attacks, autonomous driving, out-of-distribution)
* Defenses against attacks
* Combining gradient-based optimization with logic for encoding background knowledge
* Complete Certification of deep neural networks via automated reasoning (e.g., via numerical abstractions, mixed-integer solvers).
* Probabilistic certification of deep neural networks
* Training deep neural networks to be provably robust via automated reasoning
* Understanding and Interpreting Deep Networks
* Probabilistic Programming
|Prerequisites / Notice||While not a formal requirement, the course assumes familiarity with basics of machine learning (especially probability theory, linear algebra, gradient descent, and neural networks). These topics are usually covered in “Intro to ML” classes at most institutions (e.g., “Introduction to Machine Learning” at ETH).|
For solving assignments, some programming experience in Python is excepted.
|263-3210-00L||Deep Learning||W||8 credits||3V + 2U + 2A||T. Hofmann|
|Abstract||Deep learning is an area within machine learning that deals with algorithms and models that automatically induce multi-level data representations.|
|Objective||In recent years, deep learning and deep networks have significantly improved the state-of-the-art in many application domains such as computer vision, speech recognition, and natural language processing. This class will cover the mathematical foundations of deep learning and provide insights into model design, training, and validation. The main objective is a profound understanding of why these methods work and how. There will also be a rich set of hands-on tasks and practical projects to familiarize students with this emerging technology.|
|Prerequisites / Notice||This is an advanced level course that requires some basic background in machine learning. More importantly, students are expected to have a very solid mathematical foundation, including linear algebra, multivariate calculus, and probability. The course will make heavy use of mathematics and is not (!) meant to be an extended tutorial of how to train deep networks with tools like Torch or Tensorflow, although that may be a side benefit.|
The participation in the course is subject to the following condition:
- Students must have taken the exam in Advanced Machine Learning (252-0535-00) or have acquired equivalent knowledge, see exhaustive list below:
Advanced Machine Learning
Computational Intelligence Lab
Introduction to Machine Learning
Statistical Learning Theory
Probabilistic Artificial Intelligence
|263-5210-00L||Probabilistic Artificial Intelligence||W||8 credits||3V + 2U + 2A||A. Krause|
|Abstract||This course introduces core modeling techniques and algorithms from machine learning, optimization and control for reasoning and decision making under uncertainty, and study applications in areas such as robotics and the Internet.|
|Objective||How can we build systems that perform well in uncertain environments and unforeseen situations? How can we develop systems that exhibit "intelligent" behavior, without prescribing explicit rules? How can we build systems that learn from experience in order to improve their performance? We will study core modeling techniques and algorithms from statistics, optimization, planning, and control and study applications in areas such as sensor networks, robotics, and the Internet. The course is designed for graduate students.|
- Probabilistic inference (variational inference, MCMC)
- Bayesian learning (Gaussian processes, Bayesian deep learning)
- Probabilistic planning (MDPs, POMPDPs)
- Multi-armed bandits and Bayesian optimization
- Reinforcement learning
|Prerequisites / Notice||Solid basic knowledge in statistics, algorithms and programming. |
The material covered in the course "Introduction to Machine Learning" is considered as a prerequisite.
- Page 1 of 1