(:requiretuid:)

Vorlesung: Statistical Machine Learning

Quick Facts

Lecturer:Jan Peters
Teaching Assistants:Daniel Tanneberg, Boris Belousov
Lectures:Wednesday, 13:30-17:00 in Room S103/226
Language:English
Office Hours:Daniel Tanneberg, Request by Email
 Boris Belousov, Request by Email
TU-CAN:20-00-0358-iv Machine Learning: Statistical Approaches
Credits:6,0 ECTS (4 SWS)

Exam:Fri, 20. Jul. 2018, 13:00-15:00 in Rooms:
Last NameRoom
A - KrS105/122
L - ZS206/030

Description

As the World Wide Web keeps growing, computer science keeps evolving from is traditional form, slowly slowly becoming the art to create intelligent software and hardware systems that draw relevant information from the enormous amount of available data.

Why? Let's look at the facts: billions of web pages are at our disposal, videos with an accumulated time of 20 hours are uploaded every minute on Youtube and the supermarket chain Walmart alone performed more than one million transactions per hour, creating a database of more than 2.5 petabytes of information. John Naisbitt has stated the problem very clearly:

"We are drowning in information and starving for knowledge."

In the future of computer science, machine learning will therefore be an important core technology. Not only that, machine learning already is the technology which promises the best computer science jobs. Hal Varian, the Chief Engineer of Google in 2009 depicted it like this:

"I keep saying the sexy job in the next ten years will be statisticians and machine learners. People think I am joking, but who would have guessed that computer engineers would have been the sexy job of the 1990s? The ability to take data, to be able to understand it, to process it, to extract value from it, to visualize it, to communicate it, that is going to be a hugely important skill in the next decades. "

Accordingly, this lecture serves as an introduction to machine learning. Special emphasis is placed on a clear presentation of the lectures contents supplemented by small sample problems regarding each of the topics. The teacher pays particular attention to his interactions with the participants of the lecture, asking multiple question and appreciating enthusiastic students.

Contents

The course gives an introduction to statistical machine learning methods. The following topics are expected to be covered throughout the semester:

  • Probability Distributions
  • Linear Models for Regression and Classification
  • Kernel Methods, Graphical Models
  • Mixture Models and EM
  • Approximate Inference
  • Continuous Latent Variables
  • Hidden Markov Models

Requirements

Math classes from the bachelor's degree, basic programming abilities, introductory classes to computer science.

Other Information

  • All course announcements go through the mailing list -- make sure to subscribe to it to not miss homework releases and important announcements
  • Use the forum for communication and questions
  • Programming guidelines for Python may help you get started with Python

Lectures

Nr.TopicSlides
01Lecture Organizationpdf Δ
02Linear Algebra Refresherpdf Δ
03Optimization Refresherpdf
04Statistics Refresherpdf Δ
05Bayesian Decision Theorypdf Δ
06Probability Density Estimationpdf Δ
07Clustering, Evaluationpdf Δ
08Regressionpdf Δ
09Linear Classificationpdf Δ
10Linear Dimensionality Reduction and Learning Theorypdf Δ
11Neural Networkspdf
12Support Vector Machinespdf
13Kernel Regression and GPspdf Δ
14Graphical Modelspdf
15Boostingpdf

Additional Material

Here are some tutorials on relevant topics for the lecture.

  1. An overview of gradient descent optimization algorithms (Sebastian Ruder)
  2. Covariant/natural gradient notes (Marc Toussaint)
  3. Bayesian Linear Regression, video (Jeff Miller)
  4. GP, video (John Cunningham)
  5. GP Regression, video (Jeff Miller)
  6. SVM, pdf (Andrew Ng)
  7. SVM, video (Patrick Winston)

Homeworks

  • Four homeworks will be given during the course.
  • Homeworks are not compulsory but we strongly suggest that you complete them as they provide hands-on experience on the topics.
  • The homework should be done in groups of two. These groups should remain unchanged for the remainder of the semester.
  • Homeworks can be handed in at any time before the deadline by dropping them in the mailbox outside Room E314@S2|02.
  • Homeworks will only be graded if they are submitted in time, that is
- Handed in before the beginning of the lecture on the delivery date, OR
- Left in the mailbox no later than ten minutes before the lecture on the delivery date.
  • Only one copy per group has to be submitted.
  • Email delivery will be accepted exceptionally, only if a good reason exists.
  • We provide a Latex template for submitting your solutions (you need to use the TUD Latex template). We highly recommend you to use it!
  • If the exercise includes programming, then code is expected to be handed in (except if noted differently).
  • We use Python for programming assignments. You are allowed to use numpy and any plotting library you like (we recommend matplotlib). You are not allowed to use scikit-learn and scipy, unless explicitly stated otherwise.
  • We encourage the creation of nice plots (different symbols for different lines) as showing the results clearly is as important as obtaining them.
  • Include only important snippets of your code, not entire files. You can include snippets in the Latex template using the 'listings' package. Alternatively, if you use ipython/jupyter notebook, you can directly export your notebook (code + plots) as HTML and print it.
  • Your code must be briefly documented.
  • The assignment may be updated after its release if any issue is detected.
  • After the deadline there will be a presentation of the solutions.
  • Partial solutions (including only plots and numerical results, no code or explanation) will be published after the above presentation.
  • After the homeworks are corrected, they will be given back to you.
  • Successfully completing the homeworks will provide up to one additional bonus point for the final grade (only if you pass the exam) according to the following rule

{$ \min\left\lbrace \frac{\text{your homework points \: (including bonus)}}{\text{homework points \: (excluding bonus)}} \: , \: 1\right\rbrace $}

Homework Assignments

TopicPDFTemplateAdditional MaterialPartial Solutions
Linear Algebra, Statistics and Optimization Refresherpdfzip-pdf
Bayesian Decision Theory, Density Estimation and EMpdfzipdatasetspdf
Linear Regression, Linear Classification and PCApdfzipdatasetspdf
Support Vector Machines, Neural Networks and Gaussian Processespdfzipdatasetspdf

Final Exam

  • The final exam date will be announced during the semester.
  • The exam will cover all material presented in the lectures, unless specified otherwise.
  • The exam will consist of roughly 30 questions and will take 90 minutes.
  • Students are allowed to bring to the exam a cheat sheet consisting of a single A4 paper. The paper must be handwritten (not printed) and you can write on both faces.
  • Students are allowed to use a non-electronic dictionary and a non-programmable calculator.
  • You have to identify yourself with both a personal ID and the TU-ID.
  • This pdf shows you how the exam will look like.

Literature

The most important books for this class are:

  1. C.M. Bishop. Pattern Recognition and Machine Learning, Springer free online copy
  2. K.P. Murphy. Machine Learning: a Probabilistic Perspective, MIT Press

Additionally, the following books might be useful for specific topics:

  1. D. Barber. Bayesian Reasoning and Machine Learning, Cambridge University Press Free online copy
  2. T. Hastie, R. Tibshirani, and J. Friedman. The Elements of Statistical Learning, Springer Verlag Free online copy
  3. D. MacKay. Information Theory, Inference, and Learning Algorithms, Cambridge University Press Free online copy
  4. R. O. Duda, P. E. Hart, and D. G. Stork. Pattern Classification, Willey-Interscience
  5. T. M. Mitchell. Machine Learning, McGraw-Hill
  6. R. Sutton, A. Barto. Reinforcement Learning - An Introduction, MIT Press free online copy
  7. M. Jordan. An Introduction to Probabilistic Graphical Models Free online copy


Teaching Staff

Lectures will be held by Jan Peters and additionally supervised by Daniel Tanneberg and Boris Belousov.

Jan Peters heads the Intelligent Autonomous Systems Lab at the Department of Computer Science at the TU Darmstadt. Jan has studied computer science, electrical, control, mechanical and aerospace engineering. You can find Jan Peters in the Robert-Piloty building S2 | 02 room E314. You can also contact him through mail@jan-peters.net.

Daniel Tanneberg is a Ph.D. student at the Intelligent Autonomous Systems (IAS) Group at the Technical University of Darmstadt since October 2015. He is investigating the applicability and properties of (spiking/stochastic) deep neural networks for open-ended robot learning. He is working on the GOAL-Robots project, that aims at developing goal-based open-ended autonomous learning robots; building lifelong learning robots. You can contact him by email at daniel@robot-learning.de .


Boris Belousov is interested in the theory and applications of motor skill learning in robotics. Deep insights from classical control, information theory, and statistics are bringing us to the next level of autonomy, enabling robots to perform increasingly delicate, skilled tasks. However, our understanding of generalization and compositionality in movement generation and execution is lagging behind. If you are interested in bridging the gap, get in touch with boris@robot-learning.de.


For further inquiries do not hesitate to contact us immediately!