I understand that a radial basis function neural network (RBF) usually has 1 hidden layer, and it differs from a multi-layer perceptron (MLP) via its activation and combination functions among other things, but how do I decide when a data set/problem is better suited to an RBF instead of an MLP? Do I have to try both and compare the results every time?
-
1$\begingroup$ First of all, RBF net has only one hidden layer. Have you look into this book mif.vu.lt/~valdas/DNT/Literatura/Haykin09/Haykin09.pdf at pages 230-250 (about RBF nets)? In my experiments I was comparing both networks, and I get similar result. $\endgroup$– 404pioCommented Jan 13, 2016 at 20:58
-
$\begingroup$ @frankov I took a look at it and at some other resource on the internet, and while I think I get the architectural differences between the two, I'm unclear on how to tell from the data set when one would fit better. $\endgroup$– confused00Commented Jan 14, 2016 at 10:02
-
$\begingroup$ Or if not from the data set itself, maybe from the description of the problem that I'm trying to solve. $\endgroup$– confused00Commented Jan 14, 2016 at 10:52
1 Answer
You may use RBF networks in case you do not necessarily need to have multiple hidden layers in your model and more importantly, you want your model to be robust to adversarial noise/examples. The advantage of RBF networks is they bring much more robustness to your prediction, but as mentioned earlier they are more limited compared to commonly-used types of neural networks. However, commonly-used types of neural network models are highly vulnerable to adversarial noise and can make very wrong predictions when fed with such examples as their inputs. This is not the case in RBF networks which seems to be due to their non-linear nature of these networks. So it is a trade-off between higher accuracy in commonly-used types of neural networks or higher robustness in radial-basis function networks.
Sources
-
1$\begingroup$ Thanks for your answer. Firstly, I'm confused why you considered it's necessary to change the title of the question such that it asks something different. My question was (and is) about MLP vs. RBF, not RBF vs. other networks in general. Furthermore, I'm confused why your edit was accepted. Is RBF more robust to noise than MLP in particular? I couldn't find this in the sources you cited above. I appreciate you taking the time to help me, but I'd rather you did not change the meaning of the question and then answer your own question. $\endgroup$ Commented Jan 14, 2016 at 19:37
-
$\begingroup$ @confused00 Well MLP is a acronym for [deep] neural networks and I just wanted to make the question more general and easy-to-find for future readers. Well if you read the last part of the paper "Explaining and Harnessing Adversarial Examples" you will see how RBFs are robust compared to neural networks with commonly-used activation functions. $\endgroup$– AmirCommented Jan 14, 2016 at 20:05
-
$\begingroup$ @confused00 I was looking for something else, but hit [this one] (stats.stackexchange.com/a/97026/99612). Though it could bit helpful. And please, upvote my response if you found it useful :) $\endgroup$– AmirCommented Jan 18, 2016 at 1:13