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

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)

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

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/