Search result: Catalogue data in Autumn Semester 2020

Computer Science Master Information
Master Studies (Programme Regulations 2009)
Focus Courses
Focus Courses General Studies
Focus Elective Courses General Studies
NumberTitleTypeECTSHoursLecturers
252-3005-00LNatural Language Processing Information Restricted registration - show details
Number of participants limited to 200.
W5 credits2V + 1U + 1AR. Cotterell
AbstractThis 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.
ObjectiveThe 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.
ContentThis 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.
LiteratureJacob Eisenstein: Introduction to Natural Language Processing (Adaptive Computation and Machine Learning series)
263-3210-00LDeep Learning Information Restricted registration - show details W8 credits3V + 2U + 2AT. Hofmann
AbstractDeep learning is an area within machine learning that deals with algorithms and models that automatically induce multi-level data representations.
ObjectiveIn 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 / NoticeThis 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
https://ml2.inf.ethz.ch/courses/aml/

Computational Intelligence Lab
http://da.inf.ethz.ch/teaching/2019/CIL/

Introduction to Machine Learning
https://las.inf.ethz.ch/teaching/introml-S19

Statistical Learning Theory
http://ml2.inf.ethz.ch/courses/slt/

Computational Statistics
https://stat.ethz.ch/lectures/ss19/comp-stats.php

Probabilistic Artificial Intelligence
https://las.inf.ethz.ch/teaching/pai-f18
263-3850-00LInformal Methods Information W5 credits2G + 2AD. Cock
AbstractFormal methods are increasingly a key part of the methodological toolkit of systems programmers - those writing operating systems, databases, and distributed systems. This course is about how to apply concepts, techniques, and principles from formal methods to such software systems, and how to get into the habit of thinking formally about systems design even when writing low-level C code.
ObjectiveThis course is about equipping students whose focus is systems with the insights and conceptual tools provided by formal methods, and thereby enabling them to become better systems programmers.
By the end of the course, students should be able to seamlessly integrate basic concepts form formal methods into how they conceive, design, implement, reason about, and debug computer systems.

The goal is not to provide a comprehensive introduction to formal methods - this is well covered by other courses in the department. Instead, it is intended to provide students in computer systems (who may or may not have existing background knowledge of formal methods) with a basis for applying formal methods in their work.
ContentThis course does not assume prior knowledge of formal methods, and will start with a quick review of topics such static vs. dynamic reasoning, variants and invariants, program algebra and refinement, etc. However, it is strongly recommended that students have already taken one of the introductory formal methods course at ETH (or equivalents elsewhere) before taking this course - the emphasis is on reinforcing these concepts by applying them, not to teach them from scratch.

Instead, the majority of the course will be about how to apply these techniques to actual, practical code in real systems. We will work from real systems code written both by students taking the course, and practical systems developed using formal techniques, in particular the verified seL4 microkernel will be a key case study. We will also focus on informal, pen-and-paper arguments for correctness of programs and systems rather than using theorem provers or automated verification tools; again these latter techniques are well covered in other courses (and recommended as a complement to this one).
263-4500-00LAdvanced Algorithms Information W9 credits3V + 2U + 3AM. Ghaffari
AbstractThis is a graduate-level course on algorithm design (and analysis). It covers a range of topics and techniques in approximation algorithms, sketching and streaming algorithms, and online algorithms.
ObjectiveThis course familiarizes the students with some of the main tools and techniques in modern subareas of algorithm design.
ContentThe lectures will cover a range of topics, tentatively including the following: graph sparsifications while preserving cuts or distances, various approximation algorithms techniques and concepts, metric embeddings and probabilistic tree embeddings, online algorithms, multiplicative weight updates, streaming algorithms, sketching algorithms, and derandomization.
Lecture noteshttps://people.inf.ethz.ch/gmohsen/AA20/
Prerequisites / NoticeThis course is designed for masters and doctoral students and it especially targets those interested in theoretical computer science, but it should also be accessible to last-year bachelor students.

Sufficient comfort with both (A) Algorithm Design & Analysis and (B) Probability & Concentrations. E.g., having passed the course Algorithms, Probability, and Computing (APC) is highly recommended, though not required formally. If you are not sure whether you're ready for this class or not, please consult the instructor.
263-5210-00LProbabilistic Artificial Intelligence Information Restricted registration - show details W8 credits3V + 2U + 2AA. Krause
AbstractThis 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.
ObjectiveHow 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.
ContentTopics covered:
- Probability
- 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 / NoticeSolid basic knowledge in statistics, algorithms and programming.
The material covered in the course "Introduction to Machine Learning" is considered as a prerequisite.
263-5905-00LMixed Reality Laboratory Information
This only applies to Study Regulations 09: In the Master Programme max. 10 credits can be accounted by Labs on top of the Interfocus Courses. Additional Labs will be listed on the Addendum.
W10 credits9PF. Bogo, M. R. Oswald
AbstractThe goal of this course is an introduction and hands-on experience on latest mixed reality technology at the cross-section of 3D computer graphics and vision, human machine interaction as well as gaming technology.
ObjectiveThe goal is to get a clear understanding on how to build mixed reality apps, covering current software SDKs and game engines, as well as foundations of 3D graphics, computer vision and human machine interaction.
Small groups of students will realize a particular software project and deploy it to an MR/AR device such as Microsoft HoloLens or a tablet or smartphone.
ContentThe course introduces latest mixed reality technology and provides introductory elements for a number of related fields including:
Introduction to Mixed Reality / Augmented Reality / Virtual Reality Introduction to 3D Computer Graphics, 3D Computer Vision During the course, small groups of students will work on a particular project with the goal to design, develop and deploy a mixed reality application. The project topics are flexible and can reach from proof-of-concept vision/graphics/hmi research, to apps that support teaching with interactive augmented reality, or game development. The default platform will be Microsoft HoloLens in combination with C# and Unity3D. Besides introductory lectures and guest lectures covering the above mentioned topics, the focus of this course is on the project work and technical project-related aspects. There will be no exercises, but weekly meetings to exchange ideas, discuss technical issues and to track progress.
Prerequisites / NoticePrerequisites include:
- Good programming skills (C# / C++ / Java etc.)
- Computer graphics/vision experience: Students should have taken, at a minimum, Visual Computing. Higher level courses are recommended, such as Introduction to Computer Graphics, 3D Vision, Computer Vision.
261-5100-00LComputational Biomedicine Information Restricted registration - show details
Number of participants limited to 60.
W5 credits2V + 1U + 1AG. Rätsch, V. Boeva, N. Davidson
AbstractThe course critically reviews central problems in Biomedicine and discusses the technical foundations and solutions for these problems.
ObjectiveOver the past years, rapid technological advancements have transformed classical disciplines such as biology and medicine into fields of apllied data science. While the sheer amount of the collected data often makes computational approaches inevitable for analysis, it is the domain specific structure and close relation to research and clinic, that call for accurate, robust and efficient algorithms. In this course we will critically review central problems in Biomedicine and will discuss the technical foundations and solutions for these problems.
ContentThe course will consist of three topic clusters that will cover different aspects of data science problems in Biomedicine:
1) String algorithms for the efficient representation, search, comparison, composition and compression of large sets of strings, mostly originating from DNA or RNA Sequencing. This includes genome assembly, efficient index data structures for strings and graphs, alignment techniques as well as quantitative approaches.
2) Statistical models and algorithms for the assessment and functional analysis of individual genomic variations. this includes the identification of variants, prediction of functional effects, imputation and integration problems as well as the association with clinical phenotypes.
3) Models for organization and representation of large scale biomedical data. This includes ontolgy concepts, biomedical databases, sequence annotation and data compression.
Prerequisites / NoticeData Structures & Algorithms, Introduction to Machine Learning, Statistics/Probability, Programming in Python, Unix Command Line
227-0575-00LAdvanced Topics in Communication Networks (Autumn 2020) Information W6 credits2V + 2UL. Vanbever
AbstractThis course covers advanced topics and technologies in computer networks, both theoretically and practically. It is offered each Fall semester, with rotating topics. Repetition for credit is possible with consent of the instructor. In the Fall 2020, the course will cover advanced topics in Internet routing and forwarding.
ObjectiveThe goals of this course is to provide students with a deeper understanding of the existing and upcoming Internet routing and forwarding technologies used in large-scale computer networks such as Internet Service Providers (e.g., Swisscom or Deutsche Telekom), Content Delivery Networks (e.g., Netflix) and Data Centers (e.g., Google). Besides covering the fundamentals, the course will be “hands-on” and will enable students to play with the technologies in realistic network environments, and even implement some of them on their own during labs and a final group project.
ContentThe course will cover advanced topics in Internet routing and forwarding such as:

- Tunneling
- Hierarchical routing
- Traffic Engineering and Load Balancing
- Virtual Private Networks
- Quality of Service/Queuing/Scheduling
- IP Multicast
- Fast Convergence
- Network virtualization
- Network programmability (OpenFlow, P4)
- Network measurements

The course will be divided in two main blocks. The first block (~10 weeks) will interleave classical lectures with practical exercises and labs. The second block (~4 weeks) will consist of a practical project which will be performed in small groups (~3 students). During the second block, lecture slots will be replaced by feedback sessions where students will be able to ask questions and get feedback about their project. The last week of the semester will be dedicated to student presentations and demonstrations.
Lecture notesLecture notes and material will be made available before each course on the course website.
LiteratureRelevant references will be made available through the course website.
Prerequisites / NoticePrerequisites: Communication Networks (227-0120-00L) or equivalents / good programming skills (in any language) are expected as both the exercices and the final project will involve coding.
401-3054-14LProbabilistic Methods in Combinatorics Information W6 credits2V + 1UB. Sudakov
AbstractThis course provides a gentle introduction to the Probabilistic Method, with an emphasis on methodology. We will try to illustrate the main ideas by showing the application of probabilistic reasoning to various combinatorial problems.
Objective
ContentThe topics covered in the class will include (but are not limited to): linearity of expectation, the second moment method, the local lemma, correlation inequalities, martingales, large deviation inequalities, Janson and Talagrand inequalities and pseudo-randomness.
Literature- The Probabilistic Method, by N. Alon and J. H. Spencer, 3rd Edition, Wiley, 2008.
- Random Graphs, by B. Bollobás, 2nd Edition, Cambridge University Press, 2001.
- Random Graphs, by S. Janson, T. Luczak and A. Rucinski, Wiley, 2000.
- Graph Coloring and the Probabilistic Method, by M. Molloy and B. Reed, Springer, 2002.
401-3901-00LMathematical OptimizationW11 credits4V + 2UR. Zenklusen
AbstractMathematical treatment of diverse optimization techniques.
ObjectiveThe goal of this course is to get a thorough understanding of various classical mathematical optimization techniques with an emphasis on polyhedral approaches. In particular, we want students to develop a good understanding of some important problem classes in the field, of structural mathematical results linked to these problems, and of solution approaches based on this structural understanding.
ContentKey topics include:
- Linear programming and polyhedra;
- Flows and cuts;
- Combinatorial optimization problems and techniques;
- Equivalence between optimization and separation;
- Brief introduction to Integer Programming.
Literature- Bernhard Korte, Jens Vygen: Combinatorial Optimization. 6th edition, Springer, 2018.
- Alexander Schrijver: Combinatorial Optimization: Polyhedra and Efficiency. Springer, 2003. This work has 3 volumes.
- Ravindra K. Ahuja, Thomas L. Magnanti, James B. Orlin. Network Flows: Theory, Algorithms, and Applications. Prentice Hall, 1993.
- Alexander Schrijver: Theory of Linear and Integer Programming. John Wiley, 1986.
Prerequisites / NoticeSolid background in linear algebra.
401-4521-70LGeometric Tomography - Uniqueness, Statistical Reconstruction and Algorithms Information Restricted registration - show details W4 credits2VJ. Hörrmann
AbstractSelf-contained course on the theoretical aspects of the reconstruction of geometric objects from tomographic projection and section data.
ObjectiveIntroduction to geometric tomography and understanding of various theoretical aspects of reconstruction problems.
ContentThe problem of reconstruction of an object from geometric information like X-ray data is a classical inverse problem on the overlap between applied mathematics, statistics, computer science and electrical engineering. We focus on various aspects of the problem in the case of prior shape information on the reconstruction object. We will answer questions on uniqueness of the reconstruction and also cover statistical and algorithmic aspects.
LiteratureR. Gardner: Geometric Tomography
F. Natterer: The Mathematics of Computerized Tomography
A. Rieder: Keine Probleme mit inversen Problemen
Prerequisites / NoticeA sound mathematical background in geometry, analysis and probability is required though a repetition of relevant material will be included. The ability to understand and write mathematical proofs is mandatory.
636-0017-00LComputational BiologyW6 credits3G + 2AT. Stadler, T. Vaughan
AbstractThe aim of the course is to provide up-to-date knowledge on how we can study biological processes using genetic sequencing data. Computational algorithms extracting biological information from genetic sequence data are discussed, and statistical tools to understand this information in detail are introduced.
ObjectiveAttendees will learn which information is contained in genetic sequencing data and how to extract information from this data using computational tools. The main concepts introduced are:
* stochastic models in molecular evolution
* phylogenetic & phylodynamic inference
* maximum likelihood and Bayesian statistics
Attendees will apply these concepts to a number of applications yielding biological insight into:
* epidemiology
* pathogen evolution
* macroevolution of species
ContentThe course consists of four parts. We first introduce modern genetic sequencing technology, and algorithms to obtain sequence alignments from the output of the sequencers. We then present methods for direct alignment analysis using approaches such as BLAST and GWAS. Second, we introduce mechanisms and concepts of molecular evolution, i.e. we discuss how genetic sequences change over time. Third, we employ evolutionary concepts to infer ancestral relationships between organisms based on their genetic sequences, i.e. we discuss methods to infer genealogies and phylogenies. Lastly, we introduce the field of phylodynamics, the aim of which is to understand and quantify population dynamic processes (such as transmission in epidemiology or speciation & extinction in macroevolution) based on a phylogeny. Throughout the class, the models and methods are illustrated on different datasets giving insight into the epidemiology and evolution of a range of infectious diseases (e.g. HIV, HCV, influenza, Ebola). Applications of the methods to the field of macroevolution provide insight into the evolution and ecology of different species clades. Students will be trained in the algorithms and their application both on paper and in silico as part of the exercises.
Lecture notesLecture slides will be available on moodle.
LiteratureThe course is not based on any of the textbooks below, but they are excellent choices as accompanying material:
* Yang, Z. 2006. Computational Molecular Evolution.
* Felsenstein, J. 2004. Inferring Phylogenies.
* Semple, C. & Steel, M. 2003. Phylogenetics.
* Drummond, A. & Bouckaert, R. 2015. Bayesian evolutionary analysis with BEAST.
Prerequisites / NoticeBasic knowledge in linear algebra, analysis, and statistics will be helpful. Programming in R will be required for the project work (compulsory continuous performance assessments). We provide an R tutorial and help sessions during the first two weeks of class to learn the required skills. However, in case you do not have any previous experience with R, we strongly recommend to get familiar with R prior to the semester start. For the D-BSSE students, we highly recommend the voluntary course „Introduction to Programming“, which takes place at D-BSSE from Wednesday, September 12 to Friday, September 14, i.e. BEFORE the official semester starting date http://www.cbb.ethz.ch/news-events.html
For the Zurich-based students without R experience, we recommend the R course Link, or working through the script provided as part of this R course.
Seminar in General Studies
NumberTitleTypeECTSHoursLecturers
252-3811-00LCase Studies from Practice Seminar 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.
W3 credits2SM. Brandis
AbstractParticipants will learn how to analyze and solve IT problems in practice in a systematic way, present findings to decision bodies, and defend their conclusions.
ObjectiveParticipants understand the different viewpoints for IT-decisions in practice, including technical and business aspects, can effectively analyze IT questions from the different viewpoints and facilitate decision making.
ContentParticipants learn how to systematically approach an IT problem in practice. They work in groups of three to solve a case from a participating company in depth, studying provided materials, searching for additional information, analyzing all in depth, interviewing members from the company or discussing findings with them to obtain further insights, and presenting and defending their conclusion to company representatives, the lecturer, and all other participants of the seminar. Participants also learn how to challenge presentations from other teams, and obtain an overview of learnings from the cases other teams worked on.
Lecture notesMethodologies to analyze the cases and create final presentations. Short overview of each case.
Prerequisites / NoticeSuccesful completion of Lecture "Case Studies from Practice".
252-4601-00LCurrent Topics in Information Security 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 credits2SS. Capkun, K. Paterson, A. Perrig
AbstractThe seminar covers various topics in information security: security protocols (models, specification & verification), trust management, access control, non-interference, side-channel attacks, identity-based cryptography, host-based attack detection, anomaly detection in backbone networks, key-management for sensor networks.
ObjectiveThe main goals of the seminar are the independent study of scientific literature and assessment of its contributions as well as learning and practicing presentation techniques.
ContentThe seminar covers various topics in information security, including network security, cryptography and security protocols. The participants are expected to read a scientific paper and present it in a 35-40 min talk. At the beginning of the semester a short introduction to presentation techniques will be given.

Selected Topics

- security protocols: models, specification & verification
- trust management, access control and non-interference
- side-channel attacks
- identity-based cryptography
- host-based attack detection
- anomaly detection in backbone networks
- key-management for sensor networks
LiteratureThe reading list will be published on the course web site.
252-5051-00LAdvanced Topics in Machine Learning Information Restricted registration - show details
Number of participants limited to 40.

The deadline for deregistering expires at the end of the fourth week of the semester. Students who are still registered after that date, but do not attend the seminar, will officially fail the seminar.
W2 credits2SJ. M. Buhmann, G. Rätsch, J. Vogt, F. Yang
AbstractIn this seminar, recent papers of the pattern recognition and machine learning literature are presented and discussed. Possible topics cover statistical models in computer vision, graphical models and machine learning.
ObjectiveThe seminar "Advanced Topics in Machine Learning" familiarizes students with recent developments in pattern recognition and machine learning. Original articles have to be presented and critically reviewed. The students will learn how to structure a scientific presentation in English which covers the key ideas of a scientific paper. An important goal of the seminar presentation is to summarize the essential ideas of the paper in sufficient depth while omitting details which are not essential for the understanding of the work. The presentation style will play an important role and should reach the level of professional scientific presentations.
ContentThe seminar will cover a number of recent papers which have emerged as important contributions to the pattern recognition and machine learning literature. The topics will vary from year to year but they are centered on methodological issues in machine learning like new learning algorithms, ensemble methods or new statistical models for machine learning applications. Frequently, papers are selected from computer vision or bioinformatics - two fields, which relies more and more on machine learning methodology and statistical models.
LiteratureThe papers will be presented in the first session of the seminar.
252-5701-00LAdvanced Topics in Computer Graphics and Vision 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 credits2SM. Gross, M. Pollefeys, O. Sorkine Hornung, S. Tang
AbstractThis seminar covers advanced topics in computer graphics, such as modeling, rendering, animation, real-time graphics, physical simulation, and computational photography. Each time the course is offered, a collection of research papers is selected and each student presents one paper to the class and leads a discussion about the paper and related topics.
ObjectiveThe goal is to get an in-depth understanding of actual problems and research topics in the field of computer graphics as well as improve presentations and critical analysis skills.
ContentThis seminar covers advanced topics in computer graphics,
including both seminal research papers as well as the latest
research results. Each time the course is offered, a collection of
research papers are selected covering topics such as modeling,
rendering, animation, real-time graphics, physical simulation, and
computational photography. Each student presents one paper to the
class and leads a discussion about the paper and related topics.
All students read the papers and participate in the discussion.
Lecture notesno script
LiteratureIndividual research papers are selected each term. See http://graphics.ethz.ch/ for the current list.
263-2100-00LResearch Topics in Software Engineering 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 credits2SZ. Su, M. Vechev
AbstractThis seminar is an opportunity to become familiar with current research in software engineering and more generally with the methods and challenges of scientific research.
ObjectiveEach 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).
ContentThe 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.
LiteratureThe publications to be presented will be announced on the seminar home page at least one week before the first session.
Prerequisites / NoticeOrganizational note: the seminar will meet only when there is a scheduled presentation. Please consult the seminar's home page for information.
227-2211-00LSeminar in Computer Architecture 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 credits2SO. Mutlu, M. H. K. Alser, J. Gómez Luna
AbstractThis seminar course covers fundamental and cutting-edge research papers in computer architecture. It consists of multiple components that are aimed at improving students' (1) technical skills in computer architecture, (2) critical thinking and analysis abilities on computer architecture concepts, as well as (3) technical presentation of concepts and papers in both spoken and written forms.
ObjectiveThe main objective is to learn how to rigorously analyze and present papers and ideas on computer architecture. We will have rigorous presentation and discussion of selected papers during lectures and a written report delivered by each student at the end of the semester.
This course is for those interested in computer architecture. Registered students are expected to attend every meeting, participate in the discussion, and create a synthesis report at the end of the course.
ContentTopics will center around computer architecture. We will, for example, discuss papers on hardware security; accelerators for key applications like machine learning, graph processing and bioinformatics; memory systems; interconnects; processing in memory; various fundamental and emerging paradigms in computer architecture; hardware/software co-design and cooperation; fault tolerance; energy efficiency; heterogeneous and parallel systems; new execution models; predictable computing, etc.
Lecture notesAll materials will be posted on the course website: https://safari.ethz.ch/architecture_seminar/
Past course materials, including the synthesis report assignment, can be found in the Spring 2020 website for the course: https://safari.ethz.ch/architecture_seminar/spring2020/doku.php?id=start
LiteratureKey papers and articles, on both fundamentals and cutting-edge topics in computer architecture will be provided and discussed. These will be posted on the course website.
Prerequisites / NoticeDigital Design and Computer Architecture.
Students should (1) have done very well in Digital Design and Computer Architecture and (2) show a genuine interest in Computer Architecture.
263-2926-00LDeep Learning for Big Code 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 credits2SV. Raychev
AbstractThe seminar covers some of the latest and most exciting developments (industrial and research) in the field of Deep Learning for Code, including new methods and latest systems, as well as open challenges and opportunities.
ObjectiveThe objective of the seminar is to:

- Introduce students to the field of Deep Learning for Big Code.

- Learn how machine learning models can be used to solve practical challenges in software engineering and programming beyond traditional methods.

- Highlight the latest research and work opportunities in industry and academia available on this topic.
ContentThe last 5 years have seen increased interest in applying advanced machine learning techniques such as deep learning to new kind of data: program code. As the size of open source code increases dramatically (over 980 billion lines of code written by humans), so comes the opportunity for new kind of deep probabilistic methods and commercial systems that leverage this data to revolutionize software creation and address hard problems not previously possible. Examples include: machines writing code, program de-obfuscation for security, code search, and many more.

Interestingly, this new type of data, unlike natural language and images, introduces technical challenges not typically encountered when working with standard datasets (e.g., images, videos, natural language), for instance, finding the right representation over which deep learning operates. This in turn has the potential to drive new kinds of machine learning models with broad applicability.

Because of this, there has been substantial interest over the last few years in both industry (e.g., companies such as Facebook starting, various start-ups in the space such as http://deepcode.ai), academia (e.g., http://plml.ethz.ch) and government agencies (e.g., DARPA) on using machine learning to automate various programming tasks.

In this seminar, we will cover some of the latest and most exciting developments in the field of Deep Learning for Code, including new methods and latest systems, as well as open challenges and opportunities.

The seminar is carried out as a set of presentations chosen from a list of available papers. The grade is determined as a function of the presentation, handling questions and answers, and participation.
Prerequisites / NoticeThe seminar is carried out as a set of presentations chosen from a list of available papers. The grade is determined as a function of the presentation, handling questions and answers, and participation.

The seminar is ideally suited for M.Sc. students in Computer Science.
263-3504-00LHardware Acceleration for Data Processing Information
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 credits2SG. Alonso, A. Klimovic, C. Zhang
AbstractThe seminar will cover topics related to data processing using new hardware in general and hardware accelerators (GPU, FPGA, specialized processors) in particular.
ObjectiveThe seminar will cover topics related to data processing using new hardware in general and hardware accelerators (GPU, FPGA, specialized processors) in particular.
ContentThe general application areas are big data and machine learning. The systems covered will include systems from computer architecture, high performance computing, data appliances, and data centers.
Prerequisites / NoticeStudents taking this seminar should have the necessary background in systems and low level programming.
  • First page Previous page Page  2  of  3 Next page Last page     All