03-07-2012, 12:20 PM
Implementation of back-propagation neural networks with MatLab
Implementation of back.pdf (Size: 341.7 KB / Downloads: 48)
The artificial neural network back propagation algorithm is implemented in Matlab
language. This implementation is compared with several other software packages.
The effect of reducing the number of iterations in the performance of the algorithm
iai studied. The speed of the back propagation program, mkckpmp, written in Matlab
language is compared with the speed of several other back propagation programs
which are written in the C language. The speed of the Matlab program mbackpmp
is, also compared with the C program quickpmp which is a variant of the back propagation
algorithm. It is shown that the Matlab program mbackpmp is about
times faster than the C programs.
BACK PROPAGATION ALGORITHM USING MATLAB
This chapter explains the software package, mbackprop, which is written in MatJah
language. The package implements the Back Propagation (BP) algorithm [RII W861,
which is an artificial neural network algorithm.
There are other software packages which implement the back propagation algorithm.
For example the AspirinIMIGRAINES Software Tools [Leig'I] is intended to be
used to investigate different neural network paradigms. There is also NASA NETS
which is a neural network simulator. It provides a system for a variety of
neural network configurations which uses generalized delta back propagation learning
method. There are also books which have implementation of BP algorithm in C
language for example, see [ED90].
Many of these software packages are huge, they need to be compiled and sometimes
difficult to understand. Modification of these codes requires understanding the
rnassive amount of source code and additional low level programming. The mbackprop
on the other hand is easy to use and very fast. With the graphical capability of the
Idatlab the network parameters can be graphed to see what is going on inside any
specific network. Additions and modifications to the mbackprop package are easier
a~nd further research in the area of neural network can be facilitated.
What is Matlab?
Matlab is a commercial software developed by Mathworks Inc. It is an interactive
software package for scientific and engineering numeric computation [Inc90]. Matlab
has several basic routines which do matrix arithmetics, plotting etc.
Why Use Matlab?
Matlab is already in use in many institutions. It is used in research in academia
and industry. Prototype solutions are usually obtained faster in Matlab than solving
a, problem from a programming language.
Matlab is fast, because the core routines in Matlab are fine tuned for diflerent
computer architectures. Following test was made to compare the speed between
Matlab and a program written in C. Since the back propagation algorithm involves
nnatrix manipulations the test chosen was matrix multiply. As the next section shows,
ndatlab1 was about 2.5 times faster than a C program both doing a matrix multiply.
!?:peed Comparison of Matrix Multiply in Matlab and C
A program in C was written to multiply two matrices containing double precision
numbers. The result of the multiplication is assigned into a third matrix. Each
matrix contained 500 rows and 500 columns. A Matlab M file was written to do
the same multiply as C program did. Only the segment of the code which does the
nlultiplication is timed. The test was run on an IPC-SparcStation computer, the
rlesult is shown in Table 1.1. As the table shows Matlab is faster than the C program
bly more than a factor of two.