Introduction to Pattern Recognition
Selim Aksoy
Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr
CS 551, Fall 2019
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 1 / 38
Introduction to Pattern Recognition Selim Aksoy Department of - - PowerPoint PPT Presentation
Introduction to Pattern Recognition Selim Aksoy Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr CS 551, Fall 2019 CS 551, Fall 2019 2019, Selim Aksoy (Bilkent University) c 1 / 38 Human Perception
Department of Computer Engineering Bilkent University saksoy@cs.bilkent.edu.tr
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 1 / 38
◮ Humans have developed highly sophisticated skills for
◮ recognizing a face, ◮ understanding spoken words, ◮ reading handwriting, ◮ distinguishing fresh food from its smell.
◮ We would like to give similar capabilities to machines.
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 2 / 38
◮ A pattern is an entity, vaguely defined, that could be given a
◮ fingerprint image, ◮ handwritten word, ◮ human face, ◮ speech signal, ◮ DNA sequence, ◮ . . .
◮ Pattern recognition is the study of how machines can
◮ observe the environment, ◮ learn to distinguish patterns of interest, ◮ make sound and reasonable decisions about the categories
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 3 / 38
◮ We are often influenced by the knowledge of how patterns
◮ Research on machine perception also helps us gain deeper
◮ Yet, we also apply many techniques that are purely
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 4 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 5 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 6 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 7 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 8 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 9 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 10 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 11 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 12 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 13 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 14 / 38
◮ Problem: Sorting incoming
◮ Assume that we have only
◮ sea bass, ◮ salmon.
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 15 / 38
◮ What kind of information can distinguish one species from
◮ length, width, weight, number and shape of fins, tail shape,
◮ What can cause problems during sensing?
◮ lighting conditions, position of fish on the conveyor belt,
◮ What are the steps in the process?
◮ capture image → isolate fish → take measurements → make
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 16 / 38
◮ Assume a fisherman told us that a sea bass is generally
◮ We can use length as a feature and decide between sea
◮ How can we choose this threshold?
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 17 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 18 / 38
◮ Even though sea bass is longer than salmon on the
◮ Try another feature: average lightness of the fish scales.
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 19 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 20 / 38
◮ We should also consider costs of different errors we make
◮ For example, if the fish packing company knows that:
◮ Customers who buy salmon will object vigorously if they see
◮ Customers who buy sea bass will not be unhappy if they
◮ How does this knowledge affect our decision?
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 21 / 38
◮ Assume we also observed that sea bass are typically wider
◮ We can use two features in our decision:
◮ lightness: x1 ◮ width: x2
◮ Each fish image is now represented as a point (feature
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 22 / 38
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 23 / 38
◮ Does adding more features always improve the results?
◮ Avoid unreliable features. ◮ Be careful about correlations with existing features. ◮ Be careful about measurement costs. ◮ Be careful about noise in the measurements.
◮ Is there some curse for working in very high dimensions?
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 24 / 38
◮ Can we do better with another decision rule? ◮ More complex models result in more complex boundaries.
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 25 / 38
◮ How can we manage the tradeoff between complexity of
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 26 / 38
1 −1 1
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 27 / 38
1 −1 1
(a) 0’th order polynomial
1 −1 1
(b) 1’st order polynomial
1 −1 1
(c) 3’rd order polynomial
1 −1 1
(d) 9’th order polynomial
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 28 / 38
1 −1 1
(a) 15 sample points
1 −1 1
(b) 100 sample points
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 29 / 38
Physical environment Data acquisition/sensing Pre−processing Feature extraction Features Classification Post−processing Decision Model learning/estimation Features Feature extraction/selection Pre−processing Training data Model
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 30 / 38
◮ Data acquisition and sensing:
◮ Measurements of physical variables. ◮ Important issues: bandwidth, resolution, sensitivity,
◮ Pre-processing:
◮ Removal of noise in data. ◮ Isolation of patterns of interest from the background.
◮ Feature extraction:
◮ Finding a new representation in terms of features. CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 31 / 38
◮ Model learning and estimation:
◮ Learning a mapping between features and pattern groups
◮ Classification:
◮ Using features and learned models to assign a pattern to a
◮ Post-processing:
◮ Evaluation of confidence in decisions. ◮ Exploitation of context to improve performance. ◮ Combination of experts. CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 32 / 38
◮ Data collection:
◮ Collecting training and testing data. ◮ How can we know when we have adequately large and
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 33 / 38
◮ Feature selection:
◮ Domain dependence and prior information. ◮ Computational cost and feasibility. ◮ Discriminative features. ◮ Similar values for similar patterns. ◮ Different values for different patterns. ◮ Invariant features with respect to translation, rotation and
◮ Robust features with respect to occlusion, distortion,
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 34 / 38
◮ Model selection:
◮ Domain dependence and prior information. ◮ Definition of design criteria. ◮ Parametric vs. non-parametric models. ◮ Handling of missing features. ◮ Computational complexity. ◮ Types of models: templates, decision-theoretic or statistical,
◮ How can we know how close we are to the true model
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 35 / 38
◮ Training:
◮ How can we learn the rule from data? ◮ Supervised learning: a teacher provides a category label or
◮ Unsupervised learning: the system forms clusters or natural
◮ Reinforcement learning: no desired category is given but the
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 36 / 38
◮ Evaluation:
◮ How can we estimate the performance with training
◮ How can we predict the performance with future data? ◮ Problems of overfitting and generalization. CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 37 / 38
◮ Pattern recognition techniques find applications in many
◮ There are many sub-problems in the design process. ◮ Many of these problems can indeed be solved. ◮ More complex learning, searching and optimization
◮ There remain many fascinating unsolved problems.
CS 551, Fall 2019 c 2019, Selim Aksoy (Bilkent University) 38 / 38