Neural networks are universal function approximators. They can be "model-free estimators" in the sense that the kind of function is not required to be known in order for the function to be approximated. One difficulty, though, is the way to select the best neural network architecture, which is, the neural network model with the smallest approximation error