|
Artificial Neural Networks - ANN
How ANN works
How the learning process works
The actual dream of a highly developed computer never came close to the souped-up
computing machine we know today. Instead, it was more along the lines of simulating
human intelligence. Yet, the development of Artificial Intelligence (A.I.)
is more a story of error and setbacks than anything else - it is much more difficult
to create complex intelligence than what scientists have believed for decades.
In many more special cases, good results have been achieved. In particular,
artificial neural networks (ANN) have found their place in the field
of data processing.
A normal computer requires precise commands - a program. Employing a high degree
of precision and speed, it goes through this command, line after line, but it
cannot forgive a mistake: it processes the input data digitally, i.e. with zeros
and ones, with yes and no, and ignores anything in-between.
An artificial neural network functions completely differently: it is a copy
of the brain or the central nervous system. Instead of a program, it has a structure
of cells (in biological terms: neurons) and connections (in biological
terms: synapses). As is the case in the brain, there is a section that "observes":
what the sensory organs submit to our human brain, the "input neurons"
submit to the ANN. Nerve cells similar to the grey cells in our cerebral cortex
are found in further, so-called hidden levels. This is where the learning or
"sensory perception process" takes place. On the other side of the ANN there
is an output neuron - the "mouth" of the system that announces the results.
The ANN is tolerant of mistakes and can also make decisions. Consequently, ANN
is already implemented today in various places for pattern recognization, e.g.
to recognize faces: it is trained with several pictures and must then decide
whether a picture previously unknown to it "seems familiar" - in the same manner
we recognize old acquaintances on the street even if the last time when we saw
them they were wearing a completely different hairstyle.
Of course, a neural network is smaller than the brain - that is why it can
only learn and process one single task. For this reason, we have implemented
Distributed Computing and therefore disperse many different tasks to our members,
in order to reach the complexity needed for stock market forecasts.
How ANN works - Information Processing
To begin with, each neuron (nerve cell) in the hidden levels and each connection
(synapse) receive a random numerical value. In the case of the neurons, these
are the so-called threshold values and in the case of the synapses, the
weightings. The input neurons receive the input stocks as values. Via
the connections, the neurons then receive information that is only passed on
if this value is greater than the threshold value of the neuron. One speaks
of neuron "firing".
The MoneyBee® ANN are applied
to stock market prices. We feed hundreds of individual stock market data as
values into the input neurons ("sensory organs") of our neural networks. These
are then transmitted into the hidden levels: they influence the information
contents of the neurons, that lie between them and the output neurons, via the
weights of the connections and the threshold values. The information therefore
flows through the net from the input neurons up to the output neurons ("Forward
Propagation").
Day-by-day from the past, the neurons receive a sort of market status report.
The net saves its knowledge as threshold values and weightings and begins the
procedure from anew - it so to speak observes thousands of market data again
and again until it recognizes certain patterns in the data, that are saved as
neurons and connections.
Essentially, the ANN functions like a human following stock prices. It observes
stock data, assesses these and learns from the past. Then it uses this knowledge
to come to conclusions for the future - although in contrast to humans, the
ANN does not know what the data means. Dollar, Dax, Nemax, DowJones - for the
net, these merely represent numerical values. It is therefore incorruptible
and honest in its forecast, since it cannot bear hopes or aspirations that might
falsify the results of the forecast. For that, the ANN however needs a method
for learning.
How ANN works - the Learning Process
As long as the neural net has not learnt anything, the forecasts will be bad
- at the outset, the weightings and threshold values were chosen randomly. Now
that the neural network training has taken root, the learning algorithm alters
the weightings and threshold values, whereby the actual forecast value is referred
to. A sort of guarded learning process takes place in which the "teacher"
(we, the MoneyBee®
programmers) knows the actual results (historical stock trends) and presents
it to his "pupil" (the neural net) to compare, following the calculation.
These two values should be as close together as possible - the difference should
be minimized. That is the crux of the learning process: the so-called "Error
Backpropagation" method that was developed in 1984. The error message reproduces
itself in the other way around to the information, i.e. backwards from the output
neurons to the input neurons, bearing in mind that the weightings and threshold
values should improve.
This procedure is run several times in sequence, but with different patterns
(records) used each time. A complete pattern (record) consists of input information
(stock data) and the known historical stock price result. As soon as all patterns
have run through, the cycle is ended (see screensaver diagram, Lower
left-hand Honeycomb). The sequence of patterns within a cycle is chosen
randomly.
The training is interrupted as soon as a fixed number of cycles or a particular
amount of computing time has been reached or when no more improvement on the
net can be expected. This is apparent as soon as many cycle sequences fail to
reach any further improvement (see learning curve, screensaver diagram Upper
left-hand Honeycomb). Now, the net has finished its training and is ready
for "real" forecasts, i.e. forecasts that actually refer to the future. For
this, it only has to be "fed" current data, i.e. stock prices that last until
today. The "Forward Propagation" procedure is then activated and one immediately
receives the required forecast - the ANN only need time to train, once it has
started computing, it is quite quick. This time, the "teacher" has to wait until
the forecast period has elapsed before he can assess his "pupil". Only then
can the quality of the real forecast be estimated. We also then publish these
data on the uk.moneybee.net
pages - it is worth checking up on our pages regularly.
Of course, the individual PC does not have any neurons - they are "simulated"
with a common program. It is best if you imagine this as a very complex table
in which the values influence each other according to a vast algorithm - a complicated
matrix capable of learning.
|