SWE 582 Machine Learning for Data Analytics, Fall 2015


A. Taylan Cemgil
For contact details and further information see the web: http://www.cmpe.boun.edu.tr/~cemgil/


Some class notes can be found as iPython notebooks on various topics:

Course Description

Data mining deals with extracting patterns from large and heterogeneous data sets by combining methods from statistics and artificial intelligence with database management. Data mining provides computational tools to transform raw data into useful information. As such, it is becoming an increasingly important branch of computer science useful for a wide range of applications, such as marketing, surveillance, fraud detection, credibility assessment, recommendation systems and scientific discovery.
This course is designed as a continuation of a basic introduction course as SWE546 Data Mining. The aim here is to provide a detailed review of modern machine learning techniques and the underlying mathematical theory. As such, it is suitable for students with some previous exposure to Data mining who want to elaborate their knowledge on machine learning.


SWE546 or equivalent, or consent of the instructor


  • Introduction, Summary of Data Mining

  • Probability Theory Review, Graphical Models

  • Construction of Probabilistic models, Hierarchical Modeling,

  • Bayesian Linear Models

  • Gaussian Processes

  • Sequential Data

  • Hidden Markov Models (HMM's),

  • Data Visualization

  • Data Fusion, Tensor factorization models

  • Nonlinear Optimization Techniques

  • Scaling up Machine Learning

Reference Books

  • Bayesian Reasoning and Machine Learning
    David Barber, 2012
    Online, published by the Cambridge University Press

  • Pattern Recognition and Machine Learning,
    Christopher Bishop
    Book Website

  • Machine Learning, A Probabilistic Perspective
    Kevin P. Murphy
    Book Website


  1. ../ipynb/Sampling.html


  1. Linear Algebra Review

  2. Matrix Calculus

  3. Probability Theory

  4. A short cribsheet by Ian Murray

Computer Usage

Homeworks require using Python or Octave


  1. Class Participation, Classwork and Homeworks 0.50

  2. 1 Final Project, to be presented in class 0.30

  3. 1 Written Exam 0.20