|
An
Artificial Neural Network (ANN)
is an adaptive computing paradigm that aims to solve problems by
emulating how a biological nervous system processes information.
Just like its biological counterpart, it consists of a large and
highly-interconnected group of processing elements called neurons
that can change in structure as it encounters new information while
learning to solve a problem. An artificial neuron has many inputs
but just a single output whose state depends on the inputs to the
neuron.
An ANN has to be
configured to solve a certain problem, which means that it has to
learn what to do first before it can be used in information
processing. It is not programmed algorithmically on what to do. ANNs learn by example like living organisms.
And in a similar manner too - by adjusting interconnections among
its neurons whenever called for by new external and/or internal
information.
The
structure of the most common type of ANN has three layers: 1) the
input layer; 2) the hidden layer; and 3) the output layer. The input
layer consists of nodes or neurons that receive inputs or raw
information from outside. These raw information are passed on
to the neurons of the hidden layer for processing in a manner
dictated by the existing interconnections among the neurons.
Finally, the output layer receives the hidden layer's information,
finalizes the processing, and displays the appropriate output.
The
processing of information from the input layer to the output layer
consists of many occurrences of an event called 'neuron firing'.
'Firing' a neuron simply means triggering it to change its state
based on changes in the states of the neurons attached to its
inputs. A change in the state of this neuron may then affect
the state of the neurons whose inputs are designed to be triggered
by it. The 'intelligence' in the firing of a neuron is
provided by the firing rule for each neuron, which determines
whether the neuron should fire or not for any given input pattern.
This sequential firing of neurons sweeps across the ANN from the
input to the output in many parallel paths in the hidden layer.
Since
uncertainty factors can be incorporated in firing rules, neural
networks can handle imprecise data. As such, it can be used to
detect patterns or forecast trends that humans or other computing
techniques may not notice. ANN's can be a very powerful tool
for 'what-if' questions that involve the analysis of many data that
have complex or fuzzy relationships with each other.
Advantages of ANNs over other computing models include the
following: 1) ability to exhibit adaptive learning, i.e., learning
to do a task based on training and experience; 2) ability to
represent and organize information by itself; 3) ability to
generate outputs in real time as new inputs are being delivered; 4)
ability to tolerate faults or partial damage to the network.
See Also:
More Industry
Articles
|