Search code examples
neural-networkbackpropagation

i need a way to train a neural network other than backpropagation


This is an on-going venture and some details are purposefully obfuscated.

I have a box that has several inputs and one output. The output voltage changes as the input voltages are changed. The desirability of the output sequence cannot be evaluated until many states pass and a look back process is evaluated.

I want to design a neural network that takes a number of outputs from the box as input and produce the correct input settings for the box to produce the optimal next output.

I cannot train this network using backpropagation. How do I train this network?


Solution

  • Genetic algorithm would be a good candidate here. A chromosome could encode the weights of the neural network. After evaluation you assign a fitness value to the chromosomes based on their performance. Chromosomes with higher fitness value have a higher chance to reproduce, helping to generate better performing chromosomes in the next generation.

    Encoding the weights is a relatively simple solution, more complex ones could even define the topology of the network.

    You might find some additional helpful information here:

    http://en.wikipedia.org/wiki/Neuroevolution