Machine Learning: ANN vs SVM
===

ANN (Artificial Neural Networks) and SVM (Support Vector Machines) are two popular strategies for supervised machine learning and classification.  It's not often clear which method is better for a particular project, and I'm certain the answer is always "it depends."  Often, a combination of both along with Bayesian classification is used.

These questions on Stackoverflow have already been asked regarding ANN vs SVM:

http://stackoverflow.com/questions/8326485/ann-and-svm-classification

http://stackoverflow.com/questions/7316671/what-the-difference-among-ann-svm-and-knn-in-my-classification-question

http://stackoverflow.com/questions/2434536/support-vector-machine-or-artificial-neural-network-for-text-processing

In this question, I'd like to know *specifically* what aspects of an ANN might make it desirable to use over an SVM?  The reason I ask is because it's easy to answer the *opposite* question: Support Vector Machines are often superior to ANNs because they avoid two major weaknesses of ANNs:

(1) ANNs often converge on *local minima* rather than global minima, meaning that they are essentially "missing the big picture" sometimes (or missing the forest for the trees)

(2) ANNs often *overfit* if training goes on too long, meaning that for any given pattern, an ANN might start to consider the noise as part of the pattern.

SVMs don't suffer from either of these two problems.  However, it's not readily apparent that SVMs are meant to be a total replacement for ANNs.  So what *specific* advantage(s) does an ANN have over an SVM that might make it applicable for certain situations?  I've listed *specific* advantages of an SVM over an ANN, now I'd like to see a list of ANN advantages (if any).