Search result: Catalogue data in Spring Semester 2015
Computer Science Master | ||||||
Focus Courses | ||||||
Focus Courses in Computational Science | ||||||
Focus Core Courses Computational Science | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
---|---|---|---|---|---|---|
263-2300-00L | How To Write Fast Numerical Code Prerequisite: Master student, solid C programming skills. | W | 6 credits | 3V + 2U | M. Püschel | |
Abstract | This course introduces the student to the foundations and state-of-the-art techniques in developing high performance software for numerical functionality such as linear algebra and others. The focus is on optimizing for the memory hierarchy and for special instruction sets. Finally, the course will introduce the recent field of automatic performance tuning. | |||||
Objective | Software performance (i.e., runtime) arises through the interaction of algorithm, its implementation, and the microarchitecture the program is run on. The first goal of the course is to provide the student with an understanding of this interaction, and hence software performance, focusing on numerical or mathematical functionality. The second goal is to teach a general systematic strategy how to use this knowledge to write fast software for numerical problems. This strategy will be trained in a few homeworks and semester-long group projects. | |||||
Content | The fast evolution and increasing complexity of computing platforms pose a major challenge for developers of high performance software for engineering, science, and consumer applications: it becomes increasingly harder to harness the available computing power. Straightforward implementations may lose as much as one or two orders of magnitude in performance. On the other hand, creating optimal implementations requires the developer to have an understanding of algorithms, capabilities and limitations of compilers, and the target platform's architecture and microarchitecture. This interdisciplinary course introduces the student to the foundations and state-of-the-art techniques in high performance software development using important functionality such as linear algebra functionality, transforms, filters, and others as examples. The course will explain how to optimize for the memory hierarchy, take advantage of special instruction sets, and, if time permits, how to write multithreaded code for multicore platforms. Much of the material is based on state-of-the-art research. Further, a general strategy for performance analysis and optimization is introduced that the students will apply in group projects that accompany the course. Finally, the course will introduce the students to the recent field of automatic performance tuning. | |||||
Focus Elective Courses Computational Science | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
252-0526-00L | Statistical Learning Theory | W | 4 credits | 2V + 1U | J. M. Buhmann | |
Abstract | The course covers advanced methods of statistical learning : PAC learning and statistical learning theory;variational methods and optimization, e.g., maximum entropy techniques, information bottleneck, deterministic and simulated annealing; clustering for vectorial, histogram and relational data; model selection; graphical models. | |||||
Objective | The course surveys recent methods of statistical learning. The fundamentals of machine learning as presented in the course "Introduction to Machine Learning" are expanded and in particular, the theory of statistical learning is discussed. | |||||
Content | # Boosting: A state-of-the-art classification approach that is sometimes used as an alternative to SVMs in non-linear classification. # Theory of estimators: How can we measure the quality of a statistical estimator? We already discussed bias and variance of estimators very briefly, but the interesting part is yet to come. # Statistical learning theory: How can we measure the quality of a classifier? Can we give any guarantees for the prediction error? # Variational methods and optimization: We consider optimization approaches for problems where the optimizer is a probability distribution. Concepts we will discuss in this context include: * Maximum Entropy * Information Bottleneck * Deterministic Annealing # Clustering: The problem of sorting data into groups without using training samples. This requires a definition of ``similarity'' between data points and adequate optimization procedures. # Model selection: We have already discussed how to fit a model to a data set in ML I, which usually involved adjusting model parameters for a given type of model. Model selection refers to the question of how complex the chosen model should be. As we already know, simple and complex models both have advantages and drawbacks alike. # Reinforcement learning: The problem of learning through interaction with an environment which changes. To achieve optimal behavior, we have to base decisions not only on the current state of the environment, but also on how we expect it to develop in the future. | |||||
Lecture notes | no script; transparencies of the lectures will be made available. | |||||
Literature | Duda, Hart, Stork: Pattern Classification, Wiley Interscience, 2000. Hastie, 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 / Notice | Requirements: basic knowledge of statistics, interest in statistical methods. It is recommended that Introduction to Machine Learning (ML I) is taken first; but with a little extra effort Statistical Learning Theory can be followed without the introductory course. | |||||
151-0104-00L | Uncertainty Quantification for Engineering & Life Sciences Does not take place this semester. Number of participants limited to 40. | W | 4 credits | 3G | P. Koumoutsakos | |
Abstract | Quantification of uncertainties in computational models pertaining to applications in engineering and life sciences. Exploitation of massively available data to develop computational models with quantifiable predictive capabilities. Applications of Uncertainty Quantification and Propagation to problems in mechanics, control, systems and cell biology. | |||||
Objective | The course will teach fundamental concept of Uncertainty Quantification and Propagation (UQ+P) for computational models of systems in Engineering and Life Sciences. Emphasis will be placed on practical and computational aspects of UQ+P including the implementation of relevant algorithms in multicore architectures. | |||||
Content | Topics that will be covered include: Uncertainty quantification under parametric and non-parametric modelling uncertainty, Bayesian inference with model class assessment, Markov Chain Monte Carlo simulation, prior and posterior reliability analysis. | |||||
Lecture notes | The class will be largely based on the book: Data Analysis: A Bayesian Tutorial by Devinderjit Sivia as well as on class notes and related literature that will be distributed in class. | |||||
Literature | 1. Data Analysis: A Bayesian Tutorial by Devinderjit Sivia 2. Probability Theory: The Logic of Science by E. T. Jaynes 3. Class Notes | |||||
Prerequisites / Notice | Fundamentals of Probability, Fundamentals of Computational Modeling | |||||
Seminar Computational Science | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
252-5251-00L | Computational Science | W | 2 credits | 2S | P. Arbenz, T. Hoefler, P. Koumoutsakos | |
Abstract | Class participants study and make a 40 minute presentation (in English) on fundamental papers of Computational Science. A preliminary discussion of the talk (structure, content, methodology) with the responsible professor is required. The talk has to be given in a way that the other seminar participants can understand it and learn from it. Participation throughout the semester is mandatory. | |||||
Objective | Studying and presenting fundamental works of Computational Science. Learning how to make a scientific presentation. | |||||
Content | Class participants study and make a 40 minute presentation (in English) on fundamental papers of Computational Science. A preliminary discussion of the talk (structure, content, methodology) with the responsible professor is required. The talk has to be given in a way that the other seminar participants can understand it and learn from it. Participation throughout the semester is mandatory. | |||||
Lecture notes | none | |||||
Literature | Papers will be distributed in the first seminar in the first week of the semester | |||||
252-5704-00L | Advanced Methods in Computer Graphics Number of participants limited to 24. | W | 2 credits | 2S | M. Gross, O. Sorkine Hornung | |
Abstract | This seminar covers advanced topics in computer graphics with a focus on the latest research results. Topics include modeling, rendering, animation, physical simulation, computational photography, and others. | |||||
Objective | The goal is to obtain an in-depth understanding of actual problems and research topics in the field of computer graphics as well as improve presentation and critical analysis skills. |
- Page 1 of 1