Problems Commonly Solved With Neural Networks
There are many different problems that can be solved with a neural network. However, neural networks are commonly used to address particular types of problems. The following four types of problem are frequently solved with neural networks:
- Classification
- Prediction
- Pattern recognition
- Optimization
These problems will be discussed briefly in the following sections. Many of the example programs throughout this book will address one of these four problems.
Classification
Classification is the process of classifying input into groups. For example, an insurance company may want to classify insurance applications into different risk categories, or an online organization may want its email system to classify incoming mail into groups of spam and non-spam messages.
Often, the neural network is trained by presenting it with a sample group of data and instructions as to which group each data element belongs. This allows the neural network to learn the characteristics that may indicate group membership.
Prediction
Prediction is another common application for neural networks. Given a time-based series of input data, a neural network will predict future values. The accuracy of the guess will be dependent upon many factors, such as the quantity and relevancy of the input data. For example, neural networks are commonly applied to problems involving predicting movements in financial markets.
This book will demonstrate several examples of prediction. Chapter 9, Predictive Neural Networks, provides an introductory explanation of how to use a neural network to make predictions. Chapter 10 shows a basic neural approach to analyzing the S&P 500.
Pattern Recognition
Pattern recognition is one of the most common uses for neural networks. Pattern recognition is a form of classification. Pattern recognition is simply the ability to recognize a pattern. The pattern must be recognized even when it is distorted. Consider the following everyday use of pattern recognition.
Every person who holds a driver’s license should be able to accurately identify a traffic light. This is an extremely critical pattern recognition procedure carried out by countless drivers every day. However, not every traffic light looks the same, and the appearance of a particular traffic light can be altered depending on the time of day or the season. In addition, many variations of the traffic light exist. Still, recognizing a traffic light is not a hard task for a human driver.
How hard is it to write a computer program that accepts an image and tells you if it is a traffic light? Without the use of neural networks, this could be a very complex task. Figure 1.5 illustrates several different traffic lights. Most common programming algorithms are quickly exhausted when presented with a complex pattern recognition problem.
Figure 1.5: Different Traffic Lights

Later in this book, an example will be provided of a neural network that reads handwriting. This neural network accomplishes the task by recognizing patterns in the individual letters drawn.
Optimization
Another common use for neural networks is optimization. Optimization can be applied to many different problems for which an optimal solution is sought. The neural network may not always find the optimal solution; rather, it seeks to find an acceptable solution. Optimization problems include circuit board assembly, resource allocation, and many others.
Perhaps one of the most well-known optimization problems is the traveling salesman problem (TSP). A salesman must visit a set number of cities. He would like to visit all cities and travel the fewest number of miles possible. With only a few cities, this is not a complex problem. However, with a large number of cities, brute force methods of calculation do not work nearly as well as a neural network approach.
