Professional Documents
Culture Documents
net/publication/261483220
CITATIONS READS
9 1,143
3 authors:
F. Morgado-Dias
Universidade da Madeira
177 PUBLICATIONS 1,268 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by F. Morgado-Dias on 15 November 2016.
Abstract—The Artificial Neural Network research community the algorithms are available in implementations of existing
has been actively working since the beginning of the 80s. Since tools.
then many existing algorithm were adapted, many new
algorithms were created and many times the set of algorithms For this work we decided to test some of the existing
was revisited and reinvented. As a result an enormous set of algorithms and test them with benchmark datasets in order to
algorithms exists and, even for the experienced user it is not easy compare them and help the user to choose the best algorithms
to choose the best algorithm for a given task or dataset, even for their applications.
though many of the algorithms are available in implementations
One of these tools is Neural Network Toolbox of Matlab.
of existing tools. In this work we have chosen a set of algorithms
which are tested with a few datasets and tested several times for Matlab is today the reference tool in many engineering fields
different initial sets of weights and different numbers of hidden and its new version of the ANN toolbox [1] will undoubtedly
neurons while keeping one hidden layer for all the Feedforward become a reference for the ANN community for its ease of use.
Artificial Neural Networks. Another tool used in this test is the NNSYSID [2-4]. This
toolbox, which is also used with Matlab, was the first tool to
Keywords—classification, artificial neural networks, algorithm,
have a Levenberg-Marquart [5-6] algorithm implementation
performance
that exhibited a good performance and is still a reference in the
ANN community. This tool also contains two other training
algorithm, namely a Batch version of Backpropagation and
I. INTRODUCTION Recursive (incremental) version of backpropagation
Another tool tested is the Neurosolutions for Matlab [7].
This software is associated with a very pedagogical book about
The Artificial Neural Network (ANN) research community ANN and exhibits some relevant characteristics, such as a
has been actively working since the beginning of the 80s. A lot graphical tool, fast algorithms and good theoretical background
of the work developed concerned different ANN architectures, that tempted us to test it also.
hardware implementations but training algorithms always
received a large share of attention. Since the beginning many
existing algorithm were adapted, many new algorithms were II. TRAINING SET SIZE
created and many times the set of algorithms was revisited and
reinvented. As a result an enormous set of algorithms exists The use of the ANN considers three aspects: train the
and, even for the experienced user it is not easy to choose the network, validate and finally test it. During training and
best algorithm for a given task or dataset, even though many of
validating, the ANN acquires knowledge and later uses this In the same table it is possible to analyze the difference
knowledge to test on the data. between the number of sample available for each dataset and
the number of sample of thumb states’ rule, ∆N, in other
A feed-forward network is a non-parametrical classifier so,
words:
it requires a lot of data for appropriate training due to not
having a priori assumptions about the data. The number of ∆N =N train - N (2)
training patterns, N, required for classifying test samples with
an error δ is approximately given by [7]:
If ∆N>0 it means that there are enough sample to obtain
90% accuracy in the sample test otherwise there are not enough
samples. The networks where ∆N<0 are the ones where the
W
N> (1) training algorithm will find difficulties and it will be possible
δ to verify the efficiency of each of these algorithms.
In this work 20 algorithms were tested and for each
Where W is the number of weights in the ANN. A rule of algorithm 20 ANNs of one hidden layer with 4, 7, 10, 12, 15
thumb based on this states that N should be approximately and 20 neurons in that layer were tested in a total of 140 ANN
10W. Where δ is an accuracy parameter and a good value for per algorithm. In the total, 1820 ANN were trained and tested
this parameter is 0.1, which corresponds to an accuracy level of for the Neural Network Toolbox and 560 ANN for the
90%. For this rule of thumb to be true, we should always NNSYSID.
choose samples for the train dataset that cover all possible
conditions. If the train dataset does not contain data from some
areas of pattern space, the machine classification in those areas Table 2. Features of each dataset used in this work.
will be based on extrapolation [4]. Dataset Level of
Data Set complexity according to
Number
Number
III. TEST DESCRIPTION of W N ∆N
of classes
neurons thumb number of
states’ rule classes
In this work four different datasets were used, namely
Parkinsons Data Set, Car Evaluation Data Set, 4 48 480 729
Cardiotocography Data Set I and II. Table 1 shows the features
Car Evaluation
7 81 810 399
of each one of the datasets [9].
10 114 1140 69
4 Average High
12 136 1360 -151
Table 1. Features of each dataset used in this work.
15 169 1690 -481
Number of samples 20 224 2240 -1031
Number Number
Data Set 4 103 1030 458
of inputs of classes Train Validation Test
Cardiotocography I
Total
Ntrain Nval Ntest 7 178 1780 -292
10 253 2530 -1042
Parkinsons 22 1 137 30 30 197 3 High High
12 303 3030 -1542
Car Evaluation 15 378 3780 -2292
6 4 1208 261 261 1730
20 503 5030 -3542
Cardiotocography 4 138 1380 108
Cardiotocography II
the previous statement. It is possible to see the number of 10 241 2410 -2273 Very Easy
weights of each ANN(W) and the number of training patterns 2
12 289 2890 -2753 High
required classifying test samples an accuracy level of 90%
(N~10W). 15 361 3610 -3473
20 481 4810 -4673
measure is used, mean and standard deviation, the results are
The algorithms used for training are summarized in table 3.
likely to be inaccurate because there are some cases with
extreme values (outliers and far-outliers) that would elevate the
mean.
Table 3. Algorithms tested. (Name of the algorithm on the tool)
A way to illustrate the median, percentiles and the
Training
dispersion of data is using boxplot. Figures 1, 2, 3 and 4
Description
Tool algorithm
present the boxplot of correct classification of all training
algorithms for each dataset. The line in the middle of the boxes
BFGS quasi-Newton is the median of correct classification. The bottom of the box
trainbfg
backpropagation indicates the 25% of cases that have values between the 50th
trainbr Bayesian regulation backpropagation and the 25th percentile and the top of the box represents the
25% of the cases that have values between the 50th and the
traincgb Conjugate gradient backpropagation 75th percentile. This means that 50% of the cases lie within the
with Powell-Beale restarts box. The T-bars that extend from the boxes are called whiskers.
The whisker below of 25th percentile represents 25% of the
Conjugate gradient backpropagation cases and the other whisker above of 75th percentile represents
traincgf
Neural Network Toolbox of Matlab
Momentum Momentum
DeltaBarDelta Delta-Bar-Delta
Quickprop Quickprop
IV. RESULTS
- Best: trainbr / worst: traingdm in CTG II dataset; Considering the results obtained for the datasets chosen, the
best training algorithms are the trainoss, trainlm and trainscg
considering the general ranking presented in table 4 and the
worst algorithm is traingd. All these algorithms belong to the REFERENCES
Matlab ANN toolbox. It should be noted that traingd
corresponds to what is usually known as Backpropagation [1] MATLAB Neural Network Toolbox – User’s Guide R2012b
which is still used by many practitioners in ANN community, [2] Nørgaard, M. (1996b), “Neural Network System Identification
but is the simplest first order training algorithm. Toolbox for MATLAB”, Technical Report.
When looking at the results obtained by the other tools at [3] Nørgaard, M. (1996c), “Neural Network Control Toolbox for
MATLAB”, Technical Report.
the general ranking we can see that the quality of the
[4] Nørgaard, M., O. Ravn, N. K. Poulsen, and L. K. Hansen, “Neural
algorithms is not very different from the Matlab ones. The best Networks for Modelling and Control of Dynamic Systems.
result outside of Matlab is obtained by marq from NNSYSID Springer, 2000.
toolbox. [5] Levenberg, K., “A method for the solution of certain problems in
least squares”. Quart. Appl. Math., 2:164—168, 1944.
[6] Marquardt, D., “An algorithm for least-squares estimation of
nonlinear parameters”, SIAM J. Appl. Math., 11:431—441, 1963.
[7] Principe, J. C., Euliano, N. R., Lefebvre, W. C. Neural and Adaptive
Systems: Fundamentals through Simulations, Wiley, New
ACKNOWLEDGMENTS York,1999.
[8] Haykin S., Artificial Neural Networks: A Comprehensive
The authors would like to acknowledge the Portuguese Foundation. In: IEEE Press, New York.1995.
Foundation for Science and Technology for their support for [9] Bache, K. & Lichman, M. UCI Machine Learning Repository
this work through project PEst-OE/EEI/LA0009/2011. [http://archive.ics.uci.edu/ml]. Irvine, CA: University of California,
School of Information and Computer Science. 2013.
[10] Hugh Coolican, “Research Methods and Statistics in Psychology”,
5th edition, Routledge, 2009.