A neural network (also called an artificial neural network) is an adaptive system that learns by using interconnected nodes or neurons in a layered structure that resembles a human brain. A neural network can learn from data—so it can be trained to recognize patterns, classify data, and forecast future events.
A neural network breaks down the input into layers of abstraction. It can be trained using many examples to recognize patterns in speech or images, for example, just as the human brain does. Its behavior is defined by the way its individual elements are connected and by the strength, or weights, of those connections. These weights are automatically adjusted during training according to a specified learning rule until the artificial neural network performs the desired task correctly.
Neural networks are a type of machine learning approach inspired by how neurons signal to each other in the human brain. Neural networks are especially suitable for modeling non-linear relationships, and they are typically used to perform pattern recognition and classify objects or signals in speech, vision, and control systems.
Here are a few examples of how neural networks are used in machine learning applications:
Neural networks, particularly deep neural networks, have become known for their proficiency at complex identification applications such as face recognition, text translation, and voice recognition. These approaches are a key technology driving innovation in advanced driver assistance systems and tasks including lane classification and traffic sign recognition.
Inspired by biological nervous systems, a neural network combines several processing layers, using simple elements operating in parallel. The network consists of an input layer, one or more hidden layers, and an output layer. In each layer there are several nodes, or neurons, and the nodes in each layer use the outputs of all nodes in the previous layer as inputs, such that all neurons interconnect with each other through the different layers. Each neuron typically is assigned a weight that is adjusted during the learning process and decreases or increases in the weight change the strength of that neuron’s signal.
Like other machine learning algorithms:
The first and simplest neural network was the perceptron, introduced by Frank Rosenblatt in 1958. It consisted of a single neuron and essentially a linear regression model with a sigmoid activation function. Since then, increasingly complex neural networks have been explored, leading up to today’s deep networks, which can contain hundreds of layers.
Deep learning refers to neural networks with many layers, whereas neural networks with only two or three layers of connected neurons are also known as shallow neural networks. Deep learning has become popular because it eliminates the need to extract features from images, which previously challenged the application of machine learning to image and signal processing. However, although feature extraction can be omitted in image processing applications, some form of feature extraction is still commonly applied to signal processing tasks to improve model accuracy.
The types of neural network commonly used for engineering applications include:
You can learn more about deep learning here:
MATLAB® offers specialized toolboxes for machine learning, neural networks, deep learning, computer vision, and automated driving applications.
With just a few lines of code, MATLAB lets you develop neural networks without being an expert. Get started quickly, create and visualize neural network models, integrate them into your existing applications, and deploy them to servers, enterprise systems, clusters, clouds, and embedded devices.
Developing AI applications, and specifically neural networks, typically involves these steps: