Artificial neural network are computing systems inspired by the biological neural networks that constitute animal brains.
We can also define them like an interconnected group of artificial neurons that uses a mathematical or computational model for information processing based on a connectionistic approach to computation. They can be used to model complex relationships between inputs and outputs or to find patterns in data.
The utility of artificial neural network models lies in the fact that they can be used to infer a function from observations and also to use it.
Unsupervised neural networks can also be used to learn representations of the input that capture the salient characteristics of the input distribution and more recently, deep learning algorithms, which can implicitly learn the distribution function of the observed data.
Neural networks learn (or are trained) by processing examples, each of which contains a known “input” and “result,” forming probability-weighted associations between the two, which are stored within the data structure of the net itself.
The training of a neural network from a given example is usually conducted by determining the difference between the processed output of the network (often a prediction) and a target output. This difference is the error.
The network then adjusts its weighted associations according to a learning rule and using this error value. Successive adjustments will cause the neural network to produce output which is increasingly similar to the target output. After a sufficient number of these adjustments the training can be terminated based upon certain criteria. This is known as supervised learning.
Such systems “learn” to perform tasks by considering examples, generally without being programmed with task-specific rules. For example, in image recognition, they might learn to identify images that contain cats by analyzing example images that have been manually labeled as “cat” or “no cat” and using the results to identify cats in other images.
They do this without any prior knowledge of cats, for example, that they have fur, tails, whiskers, and cat-like faces. Instead, they automatically generate identifying characteristics from the examples that they process.
Application areas of Artifical neural networks include nonlinear system identification and control (vehicle control, process control), game-playing and decision making (backgammon, chess, racing), pattern recognition (radar systems, face identification, object recognition), sequence recognition (gesture, speech, handwritten text recognition), medical diagnosis, financial applications, data mining (or knowledge discovery in databases, “KDD”), visualization and e-mail spam filtering.
For example, it is possible to create a semantic profile of user’s interests emerging from pictures trained for object recognition.