Introduction to Pattern Recognition

Transkript

Introduction to Pattern Recognition
Introduction to Pattern Recognition
Selim Aksoy
Department of Computer Engineering
Bilkent University
[email protected]
CS 551, Spring 2010
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
1 / 39
Human Perception
I
Humans have developed highly sophisticated skills for
sensing their environment and taking actions according to
what they observe, e.g.,
I
I
I
I
I
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, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
2 / 39
What is Pattern Recognition?
I
A pattern is an entity, vaguely defined, that could be given a
name, e.g.,
I
I
I
I
I
I
I
fingerprint image,
handwritten word,
human face,
speech signal,
DNA sequence,
...
Pattern recognition is the study of how machines can
I
I
I
observe the environment,
learn to distinguish patterns of interest,
make sound and reasonable decisions about the categories
of the patterns.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
3 / 39
Human and Machine Perception
I
We are often influenced by the knowledge of how patterns
are modeled and recognized in nature when we develop
pattern recognition algorithms.
I
Research on machine perception also helps us gain deeper
understanding and appreciation for pattern recognition
systems in nature.
I
Yet, we also apply many techniques that are purely
numerical and do not have any correspondence in natural
systems.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
4 / 39
Pattern Recognition Applications
Table 1: Example pattern recognition applications.
Problem Domain
Application
Input Pattern
Pattern Classes
Document image analysis
Document classification
Document classification
Multimedia database retrieval
Speech recognition
Optical character recognition
Internet search
Junk mail filtering
Internet search
Telephone directory assistance
Information extraction
Personal identification
Document image
Text document
Email
Video clip
Speech waveform
Characters, words
Semantic categories
Junk/non-junk
Video genres
Spoken words
Natural language processing
Biometric recognition
Medical
Military
Industrial automation
Industrial automation
Remote sensing
Bioinformatics
Data mining
CS 551, Spring 2010
Sentences
Face, iris, fingerprint
Parts of speech
Authorized users for access
control
Computer aided diagnosis
Microscopic image
Cancerous/healthy cell
Automatic target recognition Optical or infrared image
Target type
Printed circuit board inspec- Intensity or range image
Defective/non-defective prodtion
uct
Fruit sorting
Images taken on a conveyor Grade of quality
belt
Forecasting crop yield
Multispectral image
Land use categories
Sequence analysis
DNA sequence
Known types of genes
Searching for meaningful pat- Points in multidimensional Compact and well-separated
terns
space
clusters
c
2009,
Selim Aksoy (Bilkent University)
5 / 39
Pattern Recognition Applications
Figure 1: English handwriting recognition.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
6 / 39
Pattern Recognition Applications
Figure 2: Chinese handwriting recognition.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
7 / 39
Pattern Recognition Applications
Figure 3: Fingerprint recognition.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
8 / 39
Pattern Recognition Applications
Figure 4: Biometric recognition.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
9 / 39
Pattern Recognition Applications
Figure 5: Cancer detection and grading using microscopic tissue data.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
10 / 39
Pattern Recognition Applications
Figure 6: Cancer detection and grading using microscopic tissue data.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
11 / 39
Pattern Recognition Applications
Figure 7: Land cover classification using satellite data.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
12 / 39
Pattern Recognition Applications
Figure 8: Building and building group recognition using satellite data.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
13 / 39
Pattern Recognition Applications
Figure 9: License plate recognition: US license plates.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
14 / 39
Pattern Recognition Applications
Figure 10: Clustering of microarray data.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
15 / 39
An Example
I
Problem: Sorting incoming
fish on a conveyor belt
according to species.
I
Assume that we have only
two kinds of fish:
I
I
sea bass,
salmon.
Figure 11: Picture taken from a
camera.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
16 / 39
An Example: Decision Process
I
What kind of information can distinguish one species from
the other?
I
I
What can cause problems during sensing?
I
I
length, width, weight, number and shape of fins, tail shape,
etc.
lighting conditions, position of fish on the conveyor belt,
camera noise, etc.
What are the steps in the process?
I
capture image → isolate fish → take measurements → make
decision
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
17 / 39
An Example: Selecting Features
I
Assume a fisherman told us that a sea bass is generally
longer than a salmon.
I
We can use length as a feature and decide between sea
bass and salmon according to a threshold on length.
I
How can we choose this threshold?
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
18 / 39
An Example: Selecting Features
Figure 12: Histograms of the length feature for two types of fish in training
samples. How can we choose the threshold l∗ to make a reliable decision?
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
19 / 39
An Example: Selecting Features
I
Even though sea bass is longer than salmon on the
average, there are many examples of fish where this
observation does not hold.
I
Try another feature: average lightness of the fish scales.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
20 / 39
An Example: Selecting Features
Figure 13: Histograms of the lightness feature for two types of fish in training
samples. It looks easier to choose the threshold x∗ but we still cannot make a
perfect decision.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
21 / 39
An Example: Cost of Error
I
We should also consider costs of different errors we make
in our decisions.
I
For example, if the fish packing company knows that:
I
I
I
Customers who buy salmon will object vigorously if they see
sea bass in their cans.
Customers who buy sea bass will not be unhappy if they
occasionally see some expensive salmon in their cans.
How does this knowledge affect our decision?
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
22 / 39
An Example: Multiple Features
I
Assume we also observed that sea bass are typically wider
than salmon.
I
We can use two features in our decision:
I
I
I
lightness: x1
width: x2
Each fish image is now represented as a point (feature
vector )
!
x1
x=
x2
in a two-dimensional feature space.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
23 / 39
An Example: Multiple Features
Figure 14: Scatter plot of lightness and width features for training samples.
We can draw a decision boundary to divide the feature space into two
regions. Does it look better than using only lightness?
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
24 / 39
An Example: Multiple Features
I
Does adding more features always improve the results?
I
I
I
I
I
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, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
25 / 39
An Example: Decision Boundaries
I
Can we do better with another decision rule?
I
More complex models result in more complex boundaries.
Figure 15: We may distinguish training samples perfectly but how can
we predict how well we can generalize to unknown samples?
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
26 / 39
An Example: Decision Boundaries
I
How can we manage the tradeoff between complexity of
decision rules and their performance to unknown samples?
Figure 16: Different criteria lead to different decision boundaries.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
27 / 39
More on Complexity
1
0
−1
0
1
Figure 17: Regression example: plot of 10 sample points for the input
variable x along with the corresponding target variable t. Green curve is the
true function that generated the data.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
28 / 39
More on Complexity
1
0
0
−1
−1
0
1
0
(a) 0’th order polynomial
1
−1
−1
(c) 3’rd order polynomial
1
0
1
1
(b) 1’st order polynomial
0
0
1
0
1
(d) 9’th order polynomial
Figure 18: Polynomial curve fitting: plots of polynomials having various
orders, shown as red curves, fitted to the set of 10 sample points.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
29 / 39
More on Complexity
1
0
0
−1
−1
0
1
(a) 15 sample points
1
0
1
(b) 100 sample points
Figure 19: Polynomial curve fitting: plots of 9’th order polynomials fitted to
15 and 100 sample points.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
30 / 39
Pattern Recognition Systems
Physical environment
Data acquisition/sensing
Training data
Pre−processing
Pre−processing
Feature extraction
Feature extraction/selection
Features
Features
Classification
Model
Model learning/estimation
Post−processing
Decision
Figure 20: Object/process diagram of a pattern recognition system.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
31 / 39
Pattern Recognition Systems
I
Data acquisition and sensing:
I
I
I
Pre-processing:
I
I
I
Measurements of physical variables.
Important issues: bandwidth, resolution, sensitivity,
distortion, SNR, latency, etc.
Removal of noise in data.
Isolation of patterns of interest from the background.
Feature extraction:
I
Finding a new representation in terms of features.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
32 / 39
Pattern Recognition Systems
I
Model learning and estimation:
I
I
Classification:
I
I
Learning a mapping between features and pattern groups
and categories.
Using features and learned models to assign a pattern to a
category.
Post-processing:
I
I
I
Evaluation of confidence in decisions.
Exploitation of context to improve performance.
Combination of experts.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
33 / 39
The Design Cycle
Select
features
Collect
data
Select
model
Train
classifier
Evaluate
classifier
Figure 21: The design cycle.
I
Data collection:
I
I
Collecting training and testing data.
How can we know when we have adequately large and
representative set of samples?
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
34 / 39
The Design Cycle
I
Feature selection:
I
I
I
Domain dependence and prior information.
Computational cost and feasibility.
Discriminative features.
I
I
I
I
Similar values for similar patterns.
Different values for different patterns.
Invariant features with respect to translation, rotation and
scale.
Robust features with respect to occlusion, distortion,
deformation, and variations in environment.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
35 / 39
The Design Cycle
I
Model selection:
I
I
I
I
I
I
I
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,
syntactic or structural, neural, and hybrid.
How can we know how close we are to the true model
underlying the patterns?
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
36 / 39
The Design Cycle
I
Training:
I
I
I
I
How can we learn the rule from data?
Supervised learning: a teacher provides a category label or
cost for each pattern in the training set.
Unsupervised learning: the system forms clusters or natural
groupings of the input patterns.
Reinforcement learning: no desired category is given but the
teacher provides feedback to the system such as the
decision is right or wrong.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
37 / 39
The Design Cycle
I
Evaluation:
I
I
I
How can we estimate the performance with training
samples?
How can we predict the performance with future data?
Problems of overfitting and generalization.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
38 / 39
Summary
I
Pattern recognition techniques find applications in many
areas: machine learning, statistics, mathematics, computer
science, biology, etc.
I
There are many sub-problems in the design process.
I
Many of these problems can indeed be solved.
I
More complex learning, searching and optimization
algorithms are developed with advances in computer
technology.
I
There remain many fascinating unsolved problems.
CS 551, Spring 2010
c
2009,
Selim Aksoy (Bilkent University)
39 / 39

Benzer belgeler

Introduction to Pattern Recognition

Introduction to Pattern Recognition Industrial automation Industrial automation Remote sensing Bioinformatics Data mining

Detaylı

Content-Based Image Retrieval - Bilkent University Computer

Content-Based Image Retrieval - Bilkent University Computer Content-Based Image Retrieval Selim Aksoy Department of Computer Engineering Bilkent University [email protected]

Detaylı