×
☰ Menu

Patterns, Features, and Classes

Suppose that you are required to distinguish football players and jockeys by their physical characteristics. Height would be one characteristic, and by itself would probably be a good discriminator.

What about football and basketball players? Height alone might not be enough. Let's add weight to the decision. If we plot a sampling of jockeys, football players, and basketball players along axes of height and weight, the jockeys would be clustered down in the low-weight, low-height section, the football players might be clustered in the high-weight, high-height section, and the basketball players might be clustered in the taller-than-football-player height but slightly-less-than-football-player weight section. Clearly, there will be some overlap. Many football players could be playing basketball, many basketball players could be playing football, and many do indeed play both.

Even if you can't tell perfectly, we can make reasonable guesses based on these statistical properties. This is statistical pattern recognition. The quantities that measure in order to make our decision are called features. The items that we are trying to classify are vectors of these features and are called patterns. The categories in which are trying to classify the patterns are called classes. The vector space spanned by the features is called a feature space.

Training and Testing

When you present a pattern recognition with a set of classified patterns so that it can learn the characteristics of the set, we call that training.

When you give a system that has been designed to recognize patterns an unknown pattern and ask it to classify it, that is called testing.

Pattern recognition thus usually consists of two phases: training and testing. Most often, these occur as two separate phases. If, however, you have a feedback stage where the system is told the correct classification of misclassified patterns, one can continue to update the set characteristics during the test phase. This is sometimes called on-the-fly training.

Supervised vs. Unsupervised Training

The method of training just described requires that you present the recognition system with (pattern, class) pairs. This assumes that, that one knows ahead of time, the classes and have available examples of each one. This is called supervised training. Sometimes, though, we would like to simply present the system with a set of patterns and ask it to identify classes or clusters in the data. This is called unsupervised training

How It Works

Image classification analyses the numerical properties of various image features and organizes data into categories. Classification algorithms typically employ two phases of processing: training and testing. In the initial training phase, characteristic properties of typical image features are isolated and, based on these, a unique description of each classification category, i.e. training class, is created. In the subsequent testing phase, these feature-space partitions are used to classify image features.

The description of training classes is an extremely important component of the classification process. In supervised classification, statistical processes (i.e. based on an a priori knowledge of probability distribution functions) or distribution-free processes can be used to extract class descriptors. The unsupervised classification relies on clustering algorithms to automatically segment the training data into prototype classes. In either case, the motivating criteria for constructing training classes are that they are:

  1. Independent, i.e. a change in the description of one training class should not change the value of another,
  2. Discriminatory, i.e. different image features should have significantly different descriptions, and
  3. Reliable, all image features within a training group should share the common definitive descriptions of that group.