Neural network vs regression in a small sample I have a small numeric dataset with 20 observations and 30 variables.  I want to approximate Y as a function of the rest 29 Xs(x1,x2,x3...x29). I've tested:


*

*neural network (NN) with 1 hidden layer and 7 nodes

*NN with 0 hidden layers (equivalent to regression without interactions)
The reason for testing NN is because it's highly likely interaction to exist among the 29 variables which the NN will capture automatically.
When cross validated, the 1st option showed lower MAPE and MPE error % vs the 2nd. Hence I concluded it's a better fit. Is it safe to use NN with so little data?
Edit: I am planning to create new data points by using the approximation from the fitted model. I can control and change all Xs. The new data points will be fed back into the observations iteratively (21st observation->refit model->22nd observation-> refit model...->100th observation...). I am facing a cold start problem which I have to somehow overcome.
 A: In your first case, you will have 30 * 7 + 1 parameters to explain 30 * 20 data points. With such a complex model you are bound to overfit and memorize your training data to a degree.
With such a small sample size, your validation results can also be unreliable and merely due to chance. I would maybe try leave-one-out cross-validation to at least get some distribution of the validation score. That makes the comparison a bit more reasonable.
I would go with regression and maybe even do some feature elimination to make the model a bit simpler. 
A: The sample size is so low and the variables-to-observations ratio is so high that the modeling framework has to be made even more "modest", beyond linear regression. It is quite likely that some form of regularization will improve the performance of the estimated model out of sample. Try lasso, ridge regression or least angle regression. A good resource on these methods is the 3-rd chapter of
Hastie, T., Tibshirani, R., & Friedman, J. H. (2008). The elements of statistical learning: Data mining, inference, and prediction. New York: Springer. 
A: Neural networks, in vast majority of cases, need lots of data. If you have 20 observations, neural network is clearly a bad choice. With that small sample size, network would easily memorize the data and overfit. Even cross-validation with that small sample size is disputable, because you'd be validating the results on just few samples at a time.
With that small sample you should aim at simple, robust models like (regularized) linear regression. Check also other questions tagged as small-sample.
