J. Marques de Sá et al. (Eds.): ICANN, Part I, LNCS 4668, pp. 788–798, 2007.
© Springer-Verlag Berlin Heidelberg 2007
Automatic Design of Modular Neural Networks
Using Genetic Programming
Naser NourAshrafoddin, Ali R. Vahdat, and M.M. Ebadzadeh
Amirkabir University of Technology (Tehran Polytechnic)
Abstract. Traditional trial-and-error approach to design neural networks is time
consuming and does not guarantee yielding the best neural network feasible for
a specific application. Therefore automatic approaches have gained more
importance and popularity. In addition, traditional (non-modular) neural
networks can not solve complex problems since these problems introduce wide
range of overlap which, in turn, causes a wide range of deviations from efficient
learning in different regions of the input space, whereas a modular neural
network attempts to reduce the effect of these problems via a divide and
conquer approach. In this paper we are going to introduce a different approach
to autonomous design of modular neural networks. Here we use genetic
programming for automatic modular neural networks design; their architectures,
transfer functions and connection weights. Our approach offers important
advantages over existing methods for automated neural network design. First it
prefers smaller modules to bigger modules, second it allows neurons even in the
same layer to use different transfer functions, and third it is not necessary to
convert each individual into a neural network to obtain the fitness value during
the evolution process. Several tests were performed with problems based on
some of the most popular test databases. Results show that using genetic
programming for automatic design of neural networks is an efficient method
and is comparable with the already existing techniques.
Keywords: Modular neural networks, evolutionary computing, genetic
programming, automatic design.
1 Introduction
The human brain is the most elaborate information processing system known.
Researchers believe that it derives most of its processing power from the huge
numbers of neurons and connections. It is also believed that the human brain contains
about
11
10 neurons, each of which is connected to an average of
4
10 other neurons.
This amounts to a total of
15
10 connections. This sophisticated biologic system
teaches us some important principles regarding design of NNs:
• Despite its massive connections it is relatively small, and highly organized [1].
• Subsequent layers of neurons, arranged in a hierarchical fashion, form
increasingly complex representations.