views:

268

answers:

5

I had been interested in neural networks for a bit and thought about using one in python for a light project that compares various minimization techniques in a time domain (which is fastest).

Then I realized I didn't even know if a NN is good for minimization. What do you think?

A: 

The training process of a back-propagation neural network works by minimizing the error from the optimal result. But having a trained neural network finding the minimum of an unknown function would be pretty hard.

If you restrict the problem to a specific function class, it could work, and be pretty quick too. Neural networks are good at finding patterns, if there are any.

MizardX
A: 

They're pretty bad for the purpose; one of the big problems of neural networks is that they get stuck in local minima. You might want to look into support vector machines instead.

chaos
Where can I find more information on state vector machines?
Erik Forbes
Sorry, that was a brain typo. Support vector machines is what I was trying to say. I don't have any better references than wikipedia would point you to.
chaos
+2  A: 

It sounds to me like this is a problem more suited to genetic algorithms than neural networks. Neural nets tend to need a bounded problem to solve, requiring training against known data, etc. - whereas genetic algorithms work by finding better and better approximate solutions to a problem without requiring training.

Erik Forbes
If the (training) data has a characteristic form then it could prove a good method, but that is some assumption...
Alex
Not sure I follow you.
Erik Forbes
+2  A: 

Neural networks are classifiers. They separate two classes of data elements. They learn this separation (usually) by preclassified data elements. Thus, I say: No, unless you do a major stretch beyond breakage.

Tetha
A: 

Actually you could use the NN to find a function minimum, but it would work best combined with genetic algorithms mentioned by Erik.

Basically NN tent to find solutions which correspond to a function local minimum or maximum but in doing so are pretty precise (to comment on Tetha answer stating that NN are classifiers you can use if to say it the data input is minimum or not)

in contrast genetic algorithms tend to find more universal solution from the whole range of the inputs possible but then give you the proximate results.

The solution is to combine the 2 worlds

  1. Get the approximate result from genetic algorithms
  2. Use that result to find the more precise answer using NN
kristof