0
$\begingroup$

I was recommended to use neural networks on a dataset with 55 observations and about 15 variables of interest.

When I read about neural networks it seems it's a learning algorithm that needs a lot of input to be efficient.

Can neural networks be of use with small data sets in ways that machine learning cannot? If so, what advantages/different perspectives would I gain from using neural networks instead of machine learning?

$\endgroup$
1
  • 1
    $\begingroup$ Who recommended using a neural net? This sounds like a case of someone hearing a buzzword and deciding that you had to do it that way. $\endgroup$ – Dave Feb 9 '20 at 0:33
2
$\begingroup$

I don't think there is a strict answer in terms of sample size. It depends on the complexity of the analysis. A neural network (NN) will find patterns in whatever you give it. The question is, have you given the NN enough observations to find the patterns of interest.

What are you looking for? If you're asking a NN to classify images of humans, then yes, 55 observations is insufficient. However, if you are analyzing features within a grade of students that hope to predict outcomes, a NN will allow you to find whatever patterns may be present. In one situation, I used a NN on a sample of 200 and created a model that proved useful, but it wasn't any more useful than logistic regression in my case. However, a NN with a smaller sample and 20 features proved to provide the best CV results across various models (and the results actually appeared meaningful.) So, you certainly can use NNs on small samples in simple contexts. As always, whatever model you use, you'll have to guard against overfitting and determine which findings are truly useful.

Given the small sample size, when you compare models, you'd typically use a leave-one-out scheme. In this scheme, you repeatedly hold one one observation out of the training, and then test the resulting models in terms of predicting that one observation. For example, in sklearn you can utilize the LeaveOneOut cross-validator (or just use KFold with n_splits=n.)

$\endgroup$
8
  • $\begingroup$ Hi Adam I'm very interested in hearing how you compared the NN results to your regression results as this would be my next step? $\endgroup$ – Paze Feb 8 '20 at 21:14
  • $\begingroup$ @Paze, I've updated the answer with comparison suggestions. $\endgroup$ – Adam Feb 8 '20 at 21:38
  • 1
    $\begingroup$ +1. If you have small data, a Bayesian approach makes the most sense of all, since you can inject information into your model via priors. $\endgroup$ – Wayne Feb 8 '20 at 21:45
  • $\begingroup$ Thank you, that answers my question. NN is not necessarily better than machine learning for smaller N but may be, we just have to find out via comparison. Is that correctly understood? $\endgroup$ – Paze Feb 8 '20 at 21:47
  • 1
    $\begingroup$ That's interesting I thought NN/deep learning and machine learning were two different subjects. $\endgroup$ – Paze Feb 8 '20 at 22:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.