Unsupervised Machine Learning

582638
5
Algoritmit ja koneoppiminen
Syventävät opinnot
Unsupervised learning is one of the main streams of machine learning, and closely related to multivariate statistics and data mining. This course describes some of the main methods in unsupervised learning, such as principal and independent component analysis, clustering, and nonlinear dimension reduction methods. In recent years, machine learning has become heavily dependent on statistical theory which is why this course is somewhere on the borderline between statistics and computer science. Emphasis is put both on the statistical/probabilistic formulation of the methods as well as on their computational implementation. The course is intended to CS students in the algorithms and machine learning specialisation, to statistics students, and to mathematics students in the statistical machine learning specialisation.

Koe

02.05.2014 16.00 B123
Vuosi Lukukausi Päivämäärä Periodi Kieli Vastuuhenkilö
2014 kevät 11.03-25.04. 4-4 Englanti Aapo Hyvärinen

Luennot

Aika Huone Luennoija Päivämäärä
Ti 14-16 C222 Aapo Hyvärinen 11.03.2014-25.04.2014
To 14-16 C222 Aapo Hyvärinen 11.03.2014-25.04.2014
Pe 14-16 C222 Aapo Hyvärinen 11.03.2014-25.04.2014

Information for international students

The course will be completely in English.

Yleistä

 

Target audience

Master's students in computer science (specialization in algorithms & machine learning, or bioinformatics), applied mathematics (specialization statistical machine learning or e.g. stochastics), or statistics.

Description

Unsupervised learning is one of the main streams of machine learning, and closely related to exploratory data analysis and data mining. This course describes some of the main methods in unsupervised learning.

In recent years, machine learning has become heavily dependent on statistical theory which is why this course is somewhere on the borderline between statistics and computer science. Emphasis is put both on the statistical formulation of the methods as well as on their computational implementation. The goal is not only to introduce the methods on a theoretical level but also to show how they can be implemented in scientific computing environments such as Matlab or R.

Computer projects are an important part of the course, but they are given separate credits, see Projects for Unsupervised Machine Learning. The projects will be given in the exercice session marked below in the schedule.

One of the weekly sessions (usually Friday) will be an exercice session, the possibly final timetable is as follows (note Easter break in the last line): 

Tue 11 Mar Lecture * Thu 13 Mar Lecture * Fri 14 Mar

Lecture

Tue 18 Mar

Exercices

Intro to projects

* Thu 20 Mar Lecture * Fri 21 Mar Exercices
Tue 25 Jan Lecture * Thu 27 Mar Lecture * Fri 28 Mar Exercices
Tue 1 Apr Lecture * Thu 3 Apr Lecture * Fri 4 Apr Exercices
Tue 8 Apr Lecture * Thu 10 Apr Lecture * Fri 11 Apr Exercices
Tue 15 Apr Lecture Easter break Thu 24 Apr Lecture * Fri 25 Apr Exercices

The exercices will be taught by Jouni Puuronen and the computer projects by Hugo Eyherabide.

Prerequisites

  • Computer science majors: Bachelor's degree recommended. It should include the following mathematics courses: calculus (including vector calculus), linear algebra I&II, introduction to probability. You should also have done "Introduction to machine learning" in Period II.
  • Statistics majors: Bachelor's degree recommended.
  • Mathematics majors: Bachelor's degree recommended. It should include basic courses in calculus (including vector calculus), linear algebra I&II, introduction to probability, introduction to statistical inference.

 

Contents

  • Introduction. Supervised vs. unsupervised learning. Applications of unsupervised learning. Probabilistic formulation. Review of some basic mathematics (linear algebra, probability)
  • Numerical optimization. Gradient method, Newton's method, stochastic gradient, projected gradient methods
  • Principal component analysis and factor analysis. Formulation as minimization of reconstruction error or maximization of component variance. Computation using covariance matrix and its eigen-value decomposition. Factor analysis and interpretation of PCA as estimation of gaussian generative model. Factor rotations.
  • Independent component analysis. Problem of blind source separation, why non-gaussianity is needed for identifiability. Correlation vs. independence. ICA as maximization of non-gaussianity, measurement of non-Gaussianity by cumulants. Likelihood of the model and maximum likelihood estimation. Implementation by gradient methods and FastICA. Applications of component analysis.
  • Clustering. K-means algorithm.Gaussian mixture model: Maximization of likelihood, EM algorithm.
  • Nonlinear dimension reduction. Non-metric multi-dimensional scaling and related methods: kernel PCA, Laplacian eigenmaps, IsoMap. Kohonen's self-organizing map

Kurssin suorittaminen

There will be a single exam at the end of the course (with renewal exams and separate exams according to usual departmental standards). Check the exact timetable and place on the CS dept exam page.

Active participation in the exercise sessions will give you points for the exam, details are given below (see the link for the exercices).

 

Kirjallisuus ja materiaali

Here are the complete lecture notes for this year's course. Just to keep search engines away, you need the login uml and password uml. There is no book for the course.

Here are the exercices to be considered in the exercice sessions (usually Fridays) as well as information on exercice points.