Credits: 5

Schedule: 10.09.2019 - 22.10.2019

Teaching Period (valid 01.08.2018-31.07.2020): 

I-II (Autumn)
Lectures only in Period I and independent project work in Period II.

Learning Outcomes (valid 01.08.2018-31.07.2020): 

After the course, the student is able to apply the basic machine learning methods to data and to understand new models based on these principles.

Content (valid 01.08.2018-31.07.2020): 

The course deals with basic principles needed to understand and apply machine learning models and methods. The topics include supervised and unsupervised learning, Bayesian decision theory, parametric methods, tuning model complexity, dimensionality reduction, clustering, nonparametric methods, decision trees, comparing and combining algorithms, as well as a few applications of these methods.

Details on the course content (applies in this implementation): 

This course has a focus on understanding the principles of machine learning, which requires the use of mathematics and statistics.

These courses are recommended to get broader, practical experience and to gather the prerequisite knowledge fo the course:

Assessment Methods and Criteria (valid 01.08.2018-31.07.2020): 

The grading will be based on several multiple choice quizzes, the completion of home assignments, peer reviewing the home assignments of other students and completion of a data analysis project. There will be no written exam.

Elaboration of the evaluation criteria and methods, and acquainting students with the evaluation (applies in this implementation): 

*Update on course assessment methods and criteria for Autumn 2019*

  • The course assessment will be mainly based on a course exam. The exam gives maximum of 100 points.
  • Bonus points can be obtained by completing weekly home exercises (maximum 10 points)
  • There will be no data analysis project and no peer reviewing of home assignments by students
  • Grade boundaries: 1: 50 2: 58 3: 67 4: 76 5: 85 

Workload (valid 01.08.2018-31.07.2020): 

Lectures and exercises.

Study Material (valid 01.08.2018-31.07.2020): 

To be specified in MyCourses at the start of the course.

Details on the course materials (applies in this implementation): 

The lectures are mostly based on Ethem Alpaydin's book Introduction to Machine Learning, third edition (2014):

The book can be found  as e-book in Aalto Library:

Some theoretical content is based on: Mohri, M., Rostamizadeh, A. and Talwalkar, A., 2018. Foundations of machine learning. MIT press. The book presents the statistical learning theory perspective to Machine Learning. This book is availablr online at

Other good textbooks on machine learning:

Some tutorial papers related to machine learning: 

Videolectures of Andrew Ng: 

Substitutes for Courses (valid 01.08.2018-31.07.2020): 

Replaces courses T-61.3050 Machine Learning: Basic Principles and T-61.3030 Principles of Neural Computing.

Prerequisites (valid 01.08.2018-31.07.2020): 

CS-C3160 Data Science, CS-C3110 Datasta tietoon or equivalent skills.

Grading Scale (valid 01.08.2018-31.07.2020): 


Additional information for the course (applies in this implementation): 

Assumed background knowledge for the course:

  • Basic probability theory (rules of probability, expectation, variance)
  • Linear algebra (vector and matrix operations, eigenvalues)
  • Calculus (derivatives, integrals)
  • Data structures (sequences, trees and graphs)
  • Programming (Python recommended, but R or MATLAB, or any suitable language will do)

Some familiarity with data analysis will be useful.

Details on the schedule (applies in this implementation): 


Attending the lectures is voluntary.


Exercises are voluntary. Each week there is a set of exercises, published according to the schedule below. In each set there are theoretical questions relating to the lectures as well as practical questions related to the computing assignment. The exercises are completed in Mycourses by the deadlines given below.

Each week maximum of 20 points are available, which gives 100 points maximum in the 5 sets of exercises. The total exercise points will be divided by 10, and added to the course exam points, thus maximum of 10 points will be added to the exam points.

Computing assignments

Computing assignments are voluntary, but you need to complete them in order to obtain the exercise points relating to the computing assignment. The recomended programming language is Python, but other suitable programming languages can be used, such as R or Matlab. 

Exercise garages

Attending the garages is voluntary. Each week there are five exercise garages where the teaching assistants of the course can help you in case there are unclear issues. 

Exercise submission schedule
Exercise #TopicPublication dateSubmission deadline
1Prerequisite questionnaire (anynymous)10.9.2019 10:0015.9.2019 23:59
213.9.2019 17:0022.9.2019 23:59
320.9.2019 17:0029.9.2019 23:59
427.9.2019 17:006.10.2019 23:59
54.10.2019 17:0013.10.2019 23:59
611.10.2019 17:0020.10.2019 23:59


Registration and further information