Published in Military Embedded Systems
In this latest column for our ongoing series on Deep Learning, we will consider the question, “How can I teach my machine to learn?” Like humans, machines learn from experience. They make observations from inputs of images, text, or other data, and then look for patterns. After the machine runs through the mathematical layers, it learns to make better decisions based on the examples it was given. The decision outputs can be continuous (for example, fluctuating prices), binary (“yes” or “no”), or categorical (such as recognizing an aircraft, tank, helicopter, or submarine, etc.).
In the case of a categorical output, the resulting answer will be several variables (for example, attributes that describe the aircraft) instead of a single variable. The training environment for machine learning applications will roughly fit into one of three major categories: supervised learning, unsupervised learning, or reinforced learning. In this column, we will look at both supervised and unsupervised learning, plus the hybrid approach of semisupervised learning. In our next column for this series, we will consider reinforced, machine-learning environments.
Supervised learning: teach me
Because it is both the easiest to understand and the simplest to implement, supervised learning has emerged as the most popular method for machine learning. Supervised learning uses labeled data on both the input and output, which enables the machine to learn the relationship between the inputs and the outputs. A label is a tag (or description) given to the objects in the data. One can think of the machine-learning algorithm as a child and the labeled data as flash cards the child uses to learn. Given a specific labeled input, the algorithm is able to predict the answer.
The output label provides the algorithm with feedback that lets it know if its answer is correct. Over time, the algorithm is able to learn through observation and discover patterns in the data. After discovering the patterns, the algorithm is ready to tackle a new, previously unknown input, and based on that input, correctly provide the output. This approach to machine learning can be described as the machine version of “concept learning,” as defined by psychology.
There are two main types of supervised learning problems. The first problem type uses classification algorithms to predict a categorical result. The second type uses regression algorithms to predict a numerical label based on the strength of correlation between attributes. Both object recognition and gesture interpretation use classification algorithms.
Assume the task is to classify (or identify) a type of aircraft based on a photographic image. The first step is to consider the various attributes needed to identify an aircraft. Since the number of possible attributes is rather large, we’ll just focus on wings. Wing position would be one attribute, with options for top-mounted, mid-mounted, or bottom-mounted. Wing shapes could be straight, swept-back, delta, or semi-delta. Other wing attributes would include slant, taper, and wing-tip shape.
These are of course only some of the wing attributes. Now imagine identifying additional attributes to describe the engines, fuselage, and tail, etc. To complicate matters, most combat aircraft can also carry different ordnance, fuel tanks, or pods, depending on their mission. It gets even more complex; keep in mind that the aircraft classification has to work effectively for all possible viewing aspects, including front, side, back, different rotation angles, and in all types of weather and backgrounds.