1. (Feb 4) Course page is online.
  2. (Feb 4) Slides for Introduction to Pattern Recognition are available.
  3. (Feb 4) Slides for Bayesian Decision Theory are available.
  4. (Feb 26) First part of the slides for Parametric Models is available.
  5. (Feb 26) Second part of the slides for Parametric Models is available.
  6. (Feb 26) Third part of the slides for Parametric Models is available.
  7. (Mar 1) Homework assignment 1 is available.
  8. (Mar 13) Slides for Non-parametric Methods are available.
  9. (Mar 19) First part of the slides for Probabilistic Graphical Models is available.


Instructor: Selim Aksoy
Office: EA 422

Course Information

Schedule: Tue 13:40-15:30, Thu 15:40-17:30 (EB 201)
Office hours: Tue 10:40-11:30, Tue 15:40-16:30 (EA 422)
Prerequisites: Probability theory, statistics, linear algebra


Lecture Schedule



Introduction to Pattern Recognition

[ Slides ]

  • Pattern recognition systems
  • The design cycle
  • An example

Bayesian Decision Theory

[ Slides ]

  • Modeling using continuous and discrete features
  • Discriminant functions
  • The Gaussian density
  • Error estimation

Parametric Models

[ Slides: Part 1 | Part 2 | Part 3 ]

  • Maximum-likelihood estimation
  • Bayesian estimation
  • Expectation-Maximization and mixture density estimation
  • Hidden Markov Models

Non-parametric Methods

[ Slides ]

  • Density estimation
  • Histogram-based estimation
  • Parzen windows estimation
  • Nearest neighbor estimation

Probabilistic Graphical Models

[ Slides: Part 1 | Part 2 | Part 3 ]

  • Directed graphical models - Bayesian networks
  • Undirected graphical models
  • Inference using graphical models
  • Learning graphical models

Feature Reduction and Selection

  • Problems of dimensionality
  • Component analysis
    • Principal components analysis (PCA)
    • Linear discriminant analysis (LDA)
  • Manifold learning
  • Feature selection

Non-Bayesian Classifiers

  • k-nearest neighbor classifier
  • Linear discriminant functions
  • Support vector machines

Structural and Syntactic Pattern Recognition

  • Graph-theoretic methods
  • Recognition with strings
  • Grammatical methods
  • DHS Ch 8.5-8.6



  1. Homework assignment 1: description (Due: March 20, 2019 as online submission)
  2. Homework assignment 2
  3. Homework assignment 3

Late submission policy: Unless you make prior arrangements with me (before the due date), no late homework will be accepted.


The purpose of the project is to enable the students to get some hands-on experience in the design, implementation and evaluation of pattern recognition algorithms by applying them to real-world problems. The objective is to try multiple algorithms for different steps of the design cycle such as feature extraction and selection, model learning and estimation, classification and evaluation, to get an acceptable accuracy on the selected data sets. An acceptable accuracy will be problem dependent but needs to be measured using formal quantitative methods.

You can use your own data from your thesis research, select data sets from the list of data resources below, or contact the instructor. In any case, you should get prior approval before starting your project.

You are free to use any programming language but Matlab and Python are strongly recommended because they are very convenient for prototyping and have many tools available for pattern recognition. You can write the codes yourself or use any code that is available in the public domain. In case you use somebody else's code, you are required to properly cite its source and know the details of the algorithms that the code implements.

You are required to work in groups of two, and submit a project proposal, an interim progress report, and a final report written in a conference paper format. Tentative schedule of the project is as follows:

All reports and software can be submitted using the online form.

Final report guidelines:

Grading Policy

Midterm exam:25%
Class participation:5%

Related Links