Martin Vechev: Catalogue data in Autumn Semester 2020
|Prof. Dr. Martin Vechev
Inst. Programmiersprachen u. -syst
ETH Zürich, CAB H 69.1
|+41 44 632 98 48
|Research Topics in Software Engineering
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.
|Z. Su, M. Vechev
|This seminar is an opportunity to become familiar with current research in software engineering and more generally with the methods and challenges of scientific research.
|Each student will be asked to study some papers from the recent software engineering literature and review them. This is an exercise in critical review and analysis. Active participation is required (a presentation of a paper as well as participation in discussions).
|The aim of this seminar is to introduce students to recent research results in the area of programming languages and software engineering. To accomplish that, students will study and present research papers in the area as well as participate in paper discussions. The papers will span topics in both theory and practice, including papers on program verification, program analysis, testing, programming language design, and development tools.
|The publications to be presented will be announced on the seminar home page at least one week before the first session.
|Prerequisites / Notice
|Organizational note: the seminar will meet only when there is a scheduled presentation. Please consult the seminar's home page for information.
|Reliable and Interpretable Artificial Intelligence
|2V + 2U + 1A
|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.
|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.
|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.