0 votes
1 view
in AI and Deep Learning by (50.5k points)

I studied the basics of learning ANNs with a genetic algorithm. I found out that there are 2 things you can do:

  1. Use GA to design the structure of the net (determine whether there should be an edge between two neurons or not). I guess we assume we can only use a certain amount of neuron-to-neuron connections.

  2. Use GA to calculate optimal weights.

I also learned that GA makes sense only in the case of irregular networks. If the net consists of layers it's suggested to use backpropagation as it's faster.

If backpropagation is faster and requires a network made of layers, why would I bother to choose GA for learning or designing the network?

1 Answer

0 votes
by (108k points)

GA creates multiple solutions to a given problem and evolves them through many generations. Each solution holds all parameters that might help to enhance the results. For ANN, weights in all layers help in obtaining high accuracy. Thus, a single solution in GA will contain all weights in the ANN. 

Usually, neurons are set out fully connected, so that every neuron in layer n is connected to everyone in layer n+1. The training process will sort out partial connectivity by training some weights down to zero, or very small numbers.

GA's are not guaranteed to calculate optimal weights. A trained network will provide you a balance between recognition and error. You could state "optimal weights" to achieve a target error.

For more information regarding the same, refer to the following link: https://pdfs.semanticscholar.org/593f/15ea0a4c1753ee33cfc4af1a317a2cda5e80.pdf

Welcome to Intellipaat Community. Get your technical queries answered by top developers !