application of genetic algorithms for training of neural networks · 2006-05-19 · 1 application...

24
1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013) Kuldeep Gharat (04305010) Vamshi Krishna (04305015) under the guidance of Dr. Pushpak Bhattacharya

Upload: others

Post on 07-Apr-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

1

Application of Genetic Algorithms for training of Neural Networks

by

Gautham Anil (04305013)Kuldeep Gharat (04305010)Vamshi Krishna (04305015)

under the guidance of Dr. Pushpak Bhattacharya

Page 2: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

2

Agenda of todays seminar

■ Genetic Algorithms

■ Evolving weights of Neural Network using Genetic Algorithm

■ Genetic Algorithms and local minima

■ Using Genetic Algorithms for evolving neural network topologies

Page 3: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

3

What are Genetic Algorithms?

■ Formally introduced in 1970s by John Holland.

■ Mimics processes in nature that led to evolution of intelligent organisms.

■ Components of GA are

Page 4: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

4

Basic Genetic Algorithm

■ The basic Genetic Algorithm

Page 5: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

5

Crossover of chromosomes

■ Crossover is the mixing of genomes from two parents in the hope of getting a child better than the parents.

■ The end points of the copied segment is called Crossover Point.

Page 6: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

6

Mutation of a parent

■ Mutation alters the genome randomly.

Page 7: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

7

Applying GA to Neural Networks

■ Potential parameters for optimization.

■ Analyze a neural network

Page 8: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

8

Encoding weights

■ Encoding of weights of a neural network.

■ Fitness function of a chromosome is MSE of the test patterns.

Page 9: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

9

Selection of crossover points

■ Selection of crossover points

Page 10: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

10

Crossover

■ Crossover 

Page 11: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

11

Mutation of weights

■ Mutation of weights

Page 12: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

12

Evolving Initial weights (hybrid evolution)

■ Disadvantage of previous algorithm

Page 13: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

13

Hybrid Algorithm

■ Hybrid Algorithm

Page 14: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

14

BP trapped in local minima

■ BP getting stuck in a local minima

Page 15: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

15

Escape from local minima

■ GA trapped in a local minima escapes.

Page 16: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

16

How does GA handle local minima?

■ This GA might not escape from wider local minima.

■ Crossover helps escape from local minima.

■ The probability of escaping local minima can be increased by increasing the number of individuals in the population.

Page 17: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

17

Local Minima and Evolution

■ Relevance of local minima to Evolution.

■ Need to rethink “Survival of the fittest”

Page 18: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

18

Encoding topology of a Neural Network

■ Evolving weights alone means fixed topology

■ Topology be represented as a genome.

■ An evaluation function to determine the quality of a topology.

■ Common properties of evaluation function

■ The constructive or pruning methods might not be optimal.

Page 19: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

19

Direct encoding of topology

■ Direct Encoding – full information – might lead to the permutation problem.

Page 20: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

20

Indirect Encoding of topology

■ Indirect Encoding – Only partial information about the topology is stored.

Page 21: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

21

Evolving topology of a Neural Network

■ The GA for evolving the topology of the Neural Network

Page 22: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

22

Issues while using Genetic Algorithms

■ As of now, many orders slower than back propagation (that does not get stuck in local minima).

■ Might take a long time to escape from some particularly bad local minima.

■ In current version of GA, genetic diversity is hard to maintain.

■ Never know when the global minima has been found.

Page 23: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

23

Conclusion

■ Escapes from local minima quickly in most cases.

■ Does not need gradient information of the Evaluation function. So, the evaluation function could be non­differentiable (like network topology evaluation functions).

■ Can do a complete search of the solution space.

■ Proper use of crossover encourages development of modular neural networks.

■ Has potential to be fully autonomous problem solving algorithm.

Page 24: Application of Genetic Algorithms for training of Neural Networks · 2006-05-19 · 1 Application of Genetic Algorithms for training of Neural Networks by Gautham Anil (04305013)

24

References

■ Yao X., 'Evolving artificial neural networks', Proceedings of the IEEE vol. 87, no. 9, p.1423 – 1447., 1999. http://citeseer.ist.psu.edu/yao99evolving.html

■ A J F van Rooij, L C Jain, R P Johnson, “Neural Network Training using Genetic Algorithms”, World Scientific, 1996

■ J. Heitkötter and D. Beasley, “The Hitchhikers Guide to Evolutionary computation”, 2000

■ Hojjat Adeli, Shih­Lin Hung, “Machine Learning: Neural Networks, Genetic Algorithms and fuzzy systems”, 1995

■ http://lancet.mit.edu/~mbwall/presentations/IntroToGAs/