1. (Sep 12) Course page is online.
  2. (Sep 12) Syllabus is available.
  3. (Sep 12) Slides for Introduction to Pattern Recognition are available.
  4. (Sep 12) Slides for Bayesian Decision Theory are available.
  5. (Sep 29) First part of the slides for Parametric Models is available.
  6. (Sep 29) Second part of the slides for Parametric Models is available.
  7. (Sep 29) Third part of the slides for Parametric Models is available.
  8. (Oct 13) Homework assignment 1 is available.
  9. (Oct 22) Slides for Non-parametric Methods are available.
  10. (Nov 2) First part of the slides for Probabilistic Graphical Models is available.
  11. (Nov 2) Second part of the slides for Probabilistic Graphical Models is available.
  12. (Nov 2) Third part of the slides for Probabilistic Graphical Models is available.
  13. (Nov 11) Homework assignment 2 is available.
  14. (Nov 21) Slides for Feature Reduction and Selection are available.
  15. (Nov 30) First part of the slides for Non-Bayesian Classifiers is available.
  16. (Nov 30) Second part of the slides for Non-Bayesian Classifiers is available.
  17. (Dec 9) Slides for Structural and Syntactic Pattern Recognition are available.
  18. (Dec 12) Homework assignment 3 is available.


Instructor: Selim Aksoy
Office: EA 422

Course Information

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


Lecture Schedule



Introduction to Pattern Recognition

[ Slides ]

(Sep 16, 18)

  • Pattern recognition systems
  • The design cycle
  • An example

Bayesian Decision Theory

[ Slides ]

(Sep 23, 25, 30)

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

Parametric Models

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

(Sep 30, Oct 2, 9, 14, 16, 21, 23)

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

Non-parametric Methods

[ Slides ]

(Oct 30)

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

Probabilistic Graphical Models

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

(Nov 4, 6, 18, 20)

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

Feature Reduction and Selection

[ Slides ]

(Nov 25, 27)

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

Non-Bayesian Classifiers

[ Slides: Part 1 | Part 2 ]

(Dec 2, 4)

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

Structural and Syntactic Pattern Recognition

[ Slides ]

(Dec 9, 11, 18, 23, 30)

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



  1. Homework assignment 1: description (Due: November 3, 2014 as online submission)
  2. Homework assignment 2: description | data (Due: December 8, 2014 as online submission)
  3. Homework assignment 3: description | data (Due: December 29, 2014 as online submission)

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 is strongly recommended because it is very convenient for prototyping and has 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