You are here

Machine Learning Spring 2018

Machine Learning (CO22-320372)

Jacobs University Bremen, Spring 2018, Herbert Jaeger

Class sessions: Wednesdays 8:15 – 9:30  Thursdays 9:45-11:00, lecture hall in Res. 1

TAs: Tayyab Mateen (t.mateen at and Tianlin Liu (t.liu at

Course description. Machine learning (ML) is all about algorithms which are fed with (large quantities of) real-world data, and which return a compressed ``model'' of the data. An example is the ``world model'' of a robot: the input data are sensor data streams, from which the robot learns a model of its environment -- needed, for instance, for navigation. Another example is a spoken language model: the input data are speech recordings, from which ML methods build a model of spoken English -- useful, for instance, in automated speech recognition systems. There is a large number of formalisms in which such models can be cast, and an equally large diversity of learning algorithms. However, there is a relatively small number of fundamental challenges which are common to all of these formalisms and algorithms: most notably, the ``curse of dimensionality'' and the almost deadly-dangerous problem of under- vs.\ overfitting. This lecture introduces such fundamental concepts and illustrates them with a choice of elementary model formalisms (linear classifiers and regressors, radial basis function networks, clustering, mixtures of Gaussians, Parzen windows). Furthermore, the course also provides a refresher of the requisite concepts from probability theory, statistics, and linear algebra.

Homework. There will be two kinds of homeworks, which are treated quite differently. A. Paper-and-pencil  problems. These homeworks give an opportunity to exercise the theoretical concepts introduced in the lecture. These homeworks will not be checked or graded, and doing them is not mandatory. Instead, the problems will be discussed and show-solved in weekly tutorial sessions held by the TAs. Model solutions will be put online a week after issuing the problem sheets. B. Programming miniprojects. The other type of homework comes in the form of  small-sized machine learning programming projects. Students work in teams of two or three, each team submitting a single solution, by email to the TAs, consisting of the code and a documentation (typeset pdf document, preferably generated in Latex, other word processing software allowed). These miniproject homeworks will be graded. Programming can be done in Matlab or Python.

Grading and exams: Grading and exams: The final course grade will be composed from programming homeworks (20%), presence sheets (10%), and quizzes/exams. There will be three miniquizzes (written in class, 30 minutes), the best two of which will each account to 20% of the final grade (worst will be dropped), and one final exam, counting 30%. All quizzes and the final exam are open book.

Fully self-contained lecture notes are here (Version 1.3, February 20, 2018. Change w.r.t. previous version from Feb 3: some added contents in Section 4).

Schedule (this will be filled in synchrony with reality as we go along)

Feb 1

       Introduction: What this course aims to achieve              

Feb 7 Introducing the TICS example. Continuous -> discrete data transformations: binning and clustering. Reading: Sections 2.1, 2.2 in the lecture notes
Feb 8 Discrete -> continuous data transformations. A quick recap of basic concepts from probability theory. Reading: Appendix A in the lecture notes Exercise sheet 1
Feb 14 The curse of dimensionality and the concept of manifolds in high-dimensional vector spaces. Reading: Section 2.3
Feb 15 Data manifolds, continued. The field of ML: overview and navigation guide. Reading: Section 3 Solutions to exercise 1 Exercise sheet 2
Feb 21 Basics of pattern classification. A look in passing at decision trees. Reading: Section 4 of LNs.
Feb 22 Optimal decision boundaries. Dimension reduction by feature extraction. Reading: Section 5 up to (excluding) 5.1 Exercise sheet 3
Feb 28  
Mar 1  
Mar 7  
Mar 8  
Mar 14  
Mar 15  
Mar 21  
Mar 22  
Apr 4  
Apr 5  
Apr 11  
Apr 12  
Apr 18  
Apr 19  
Apr 25  
Apr 26  
May 2  
May 3  
May 9  
May 16  





The online lecture notes are self-contained, and no further literature is necessary for this course. However, if you want to study some topics in more depth, the following are recommended references.

Bishop, Christopher M.: Neural Networks for Pattern Recognition (Oxford Univ. Press, 1995.) IRC: QA76.87 .B574 1995 A recommendable basic reference (beyond the online lecture notes)

Bishop, Christopher M.: Pattern Recognition and Machine Learning. Springer Verlag, 2006 Much more up-to-date and comprehensive than the previously mentioned Bishop book, but I dare say too thick and advanced for an undergraduate course (730 pages) -- more like a handbook for practicians. To find your way into ML, the older, slimmer Bishop book will work better.

Michie, D., Spiegelhalter, D.J., Taylor, C.C.: Machine Learning, Neural and Statistical Classification (1994) Free and online at and at the course resource repository. A transparently written book, concentrating on classification. Good backup reading. Thanks to Mantas for pointing this out!

Duda, R.O., Hart, P.E., Stork, D.G.: Pattern Classification, 2nd edition (John Wiley, 2001) IRC: Q327 .D83 2001  Covers more than the Bishop book, more detailed and more mathematically oriented. Backup reference for the deep probers

T. Hastie, R. Tibshirani, J. Friedman, The Elements of Statistical Learning: Data Mining, Inference, and Prediction. Springer Verlag 2001. IRC:  Q325.75 .H37 2001 I have found this book only recently and haven't studied it in detail – looks extremely well written, combining (statistical) maths with applications and principal methods of machine learning, full of illuminating color graphics. May become my favourite.

Farhang-Boroujeny, B.: Adaptive Filters, Theory and Applications (John Wiley, 1999). IRC: TK7872.F5 F37 1998  Some initial portions of this book describe online linear filtering with the LMS algorithm, which will possibly be covered in the course

Goodfellow, I., Bengio, Y., Courville, A.: Deep learning. MIT Press, 2016. Legal online version available. The "bible" of deep learning. 

Mitchell, Tom M.: Machine Learning (McGraw-Hill, 1997) IRC: Q325.5 .M58 1997. More general and more comprehensive than the course, covers many branches of ML that are not treated in the course. Gives a good overview of the larger picture of ML

Nabney, Ian T.: NETLAB: Algorithms for Pattern Recognition (Springer Verlag, 2001). IRC: TA1637 .N33 2002. A companion book to the Bishop book, concentrating on Matlab implementations of the main techniques described in the Bishop book. Matlab code is public and can be downloaded from