Announcements

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

Personnel

Instructor: Selim Aksoy
Office: EA 422
Email:

Course Information

Schedule: Mon 10:40-12:30, Thu 8:40-10:30 (EA 502)
Office hours: Thu 10:40-12:30 (EA 422)
Prerequisites: Probability theory, statistics, linear algebra

Texts

Lecture Schedule

Chapters

Contents

Introduction to Pattern Recognition

[ Slides ]

Topics:
  • Pattern recognition systems
  • The design cycle
  • An example
References:

Bayesian Decision Theory

[ Slides ]

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

Parametric Models

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

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

Non-parametric Methods

[ Slides ]

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

Probabilistic Graphical Models

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

Topics:
  • Directed graphical models - Bayesian networks
  • Undirected graphical models
  • Inference using graphical models
  • Learning graphical models
References:

Feature Reduction and Selection

[ Slides ]

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

Non-Bayesian Classifiers

[ Slides: Part 1 | Part 2 ]

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

Structural and Syntactic Pattern Recognition

[ Slides ]

Topics:
  • Graph-theoretic methods
  • Recognition with strings
  • Grammatical methods
Readings:
  • DHS Ch 8.5-8.6
References:

Exam

Assignments

  1. Homework assignment 1: description (Due: October 29, 2019 as online submission)
  2. Homework assignment 2: description | data (Due: November 21, 2019 as online submission)
  3. Homework assignment 3: description | data (Due: December 23, 2019 as online submission)

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

Project

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 presentation, 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%
Homework:40%
Project:30%
Class participation:5%

Related Links