Course syllabus

Course-PM

TDA231 / DIT381 Algorithms for machine learning and inference lp4 vt19 (7.5 hp)

Course is offered by the Department of Computer Science and Engineering

Contact details

Instructor and examiner

      Morteza H. Chehreghani

Assistants

      Vasileios Athanasiou vasath@chalmers.se

      Divya Gover divya.grover@chalmers.se

      Emilio Jorge emilio.jorge@chalmers.se

      Simon Pfreundschuh simon.pfreundschuh@chalmers.se

      Aristide Tossou aristide@chalmers.se

      Yuchong Zhang yuchong@chalmers.se

Student representatives

      Rikard Helgegren, rikhel@student.chalmers.se

      Andreas Demetriou, anddem@student.chalmers.se

      Leelawadee Sirikul, leepearploy@gmail.com

      Edin Tataragic, tedin@student.chalmers.se

      Felix Hulthén, felixhu@student.chalmers.se

Course purpose

Today we have entered the era of “Big Data” : science, engineering and technology are producing increasingly large data streams, with petabyte and exabyte scales becoming increasingly common. We are flooded with data from the internet, social networks like Facebook and Twitter and high throughput experiments from Biology and Physics labs. Machine Learning is an area of Computer Science which deals with designing algorithms that allow computers to automatically make sense of this data tsunami by extracting interesting patterns and insights from raw data. The goal of this course is to introduce some of the fundamental concepts, techniques and algorithms in modern Machine Learning with special emphasis on Statistical Pattern Recognition.

Learning objectives

Learning objectives:

  • apply sound mathematical foundations to the inference of hypotheses from empirical data and models on scientific grounds;
  • explain a representative set of available Machine Learning approaches;
  • evaluate the methods qualitatively and quantitatively, and to recognize both their strengths and limitations.

Links to the syllabus and study plan:

Schedule

TimeEdit

Course literature

The course book is S. Rogers and M. Girolami, A First Course in Machine Learning, 2nd edition, Chapman & Hall/CRC 2016, ISBN: 9781498738484.

Further reading

Schedule

Date and time Main topic Slides Recommended reading Room for consultation

Tue, Mar 26

10:0011:45

Machine Learning – What, Why and How?Linear Modeling

Intro

Linear Models & Beyound

A First Course In Machine Learning, Chapter 1  no consultation

Fri, Mar 29

10:0011:45

Non-linear model and model selection previous lecture A First Course In Machine Learning, Chapter 1 no consultation

Tue, Apr 02

10:0011:45

Linear Regression: Probabilistic approach Probabilistic Regression A First Course In Machine Learning, Chapter 2 no consultation

Fri, Apr 05

10:0011:45

Linear Regression: Bayesian approach Bayesian Regression A First Course In Machine Learning, Chapter 3

EL 43

13:15-14:00

Tue, Apr 09

10:0011:45

Naive Bayes Classification Naive Bayes Classification A First Course In Machine Learning, Chapter 5.2.1

EL 43

13:15-14:00

Fri, Apr 12

10:0011:45

Nearest Neighbor

SVM I

KNN

SVM

A First Course In Machine Learning, Chapter 5.3, 5.4

EL 43

13:15-14:00

Tue, Apr 16

10:0011:45

SVM II previous lecture A First Course In Machine Learning, Chapter 5.3, 5.4

EL 43

13:15-14:00

Fri, May 3

10:0011:45

Logistic Regression Logistic Regression A First Course In Machine Learning, Chapter 4

EL 43

13:15-14:00

Tue, May 7

10:0011:45

Deep Neural Networks Deep Learning 1

Deep Learning, Chapter 6 (7, 8 for further reading)

playground.tensorflow.org

EL 43

13:15-14:00

Fri, May 10

10:0011:45

CNNs Deep Learning 2 Deep Learning, Chapter 9

EL 43

13:15-14:00

Tue, May 14

10:0011:45

RNNs and Sequential Data Models Deep Learning 3 Deep Learning, Chapter 10

EL 43

13:15-14:00

Fri, May 17

10:0011:45

Clustering and K-means

K-means A First Course In Machine Learning, Chapter 6

EL 43

13:15-14:00

Tue, May 21

10:0011:45

Industry Lecture 1

EL 43

13:15-14:00

Fri, May 24

10:0011:45

Mixture Models and EM GMM Christopher M. Bishop, Pattern Recognition and Machine Learning, Ch 9

EL 43

13:15-14:00

Tue, May 28

10:0011:45

Industry Lecture 2

EL 43

13:15-14:00

Changes made since the last occasion

  • All the assignments will be in Python.

Examination form

The final exam will be in the form of a take home exam. The take home exam is to be done individually and it is allowed to use books and read sources on the internet but not to get help from others.

The take home exam will contribute to the 50% of the final grade. The rest 50% of the final grade will be based on the assignments. The score will then be normalized to 60 points and follow the grade distribution 28 (3,G) 36 (4) 48 (5, VG).

The take home exam will be published online and will be due the following day. This day will be during the exam week and will be selected according to a doodle to accommodate as many students as possible.

The exam will be available from 8.00 Monday 3rd of June until 13.00 Tuesday 4th of June. All submissions will be handled through canvas. Either you submit a latex-pdf or take photos of your handwritten solutions and convert it to pdf.

We already compensate for those of you who will have another exam overlapping with the take home exam (you can see it as a 24+5 hour exam). If you for some reason have two exams (other than the take home exam) in that time slot we will provide an additional extension of 5 hours.

To get an extension you should provide information on what exams you are signed up for and when they are in a message on canvas to Emilio Jorge.

 

Practice exams

exam_2018   2018solutions

exam_2017   2017solutions

exam_2016   2016solutions

exam_2015

Assignments

  • We will use Python3
  • Note that all homework are in Jupyter Notebook (they are not pdf). It is installed in the halls ES61-ES62, E-studio and MT9 but can easily be installed on any computer. You can also use google-colab to open/run these notebooks.
  • All assignments are to be solved in groups of 2 and uploaded on canvas. If you don’t have a partner, post in Looking for teammate.  Join an assignment work group here: People
  • Each homework consists of both theoretical and practical problems.
  • Upload the updated Jupyter notebook with discussions/results of practical questions (including results and/or plots and outputs of your code). All plots/results should be visible such that the notebooks do not have to be run but the code in the notebooks should reproduce the plots/results if we choose to do so. Write the solutions to theoretical questions in the notebook itself, using Latex-math mode for writing equations etc.
  • Assignment .pdf:s may be subject to minor changes (such as spelling corrections) up until one week before the deadline.

 

There will be five assignments in the course and they will be done in groups of two. If an assignment is handed in late without an valid excuse the points for the assignment will be reduced linearly by 10% per commenced day.

Homework Due date Data Points Grader Relevant lectures Solution sketch
hw1 - Probability and MLE 8/4 15 Vasileios, Aristide
hw2 - Bayesian learning 23/4 15 Vasileios, Aristide
hw3 - Algorithms for Classification 9/5 20 Divya, Yuchong
hw4 - Deep learning 21/5 30 Simon, Emilio
hw5 - Clustering 29/5 20 Yuchong, Divya

 

Course summary:

Date Details Due