A mention of neural nets tends to send many otherwise reasonable people into an irrational state. The term often conjures images of the terminator, probably with a dash of I Robot thrown in there for good measure, where anti-social nerds with dubious ethics and hygiene somehow lose control of their creations and wreak havoc upon us all when their neural nets become sentient and decide they’ve had enough.
It also tends to show up in papers in all kinds of fields with complex systems, typically with little explanation of why a neural net is chosen, why that specific implementation was used, how they tuned it, and how they managed their data sets. Fortunately for us all, there is often a sort of vague implication that “it’s learning things even we don’t know!” about the system in question.
Sadly (or happily, depending on your point of view), neural nets aren’t quite that sexy when you get into the nitty gritty details. If you can recall grade 10 physics and trying to fit data to a function, then you’re pretty much most of the way there. Essentially, a neural net takes your set of inputs, gives them weights, sums them up, and runs them through a special function. A graphic often helps to visualize this. You can chain these together at your whim, and at the end you get a bunch of numbers which represent your output. The ‘learning’ in most cases is simply the adjustment of the weights based on whether the output matches what you hope it would.
Of course, one downfall is that it’s virtually impossible to pull out any sort of system information from a reasonably sized neural net, it’s like fitting a curve well but having no idea what curve you fitted it with. Once your neural net has learned its function, you don’t necessarily have any new information about how the system is working, it’s a black box in many senses, and just like in any function approximation method, problems of input size and accuracy remain, and neural nets are not immune to the problems of overfitting and underfitting.
In short, it’s not a magic bullet; yes, they can approximate noisy non-linear functions quite well, but no, that doesn’t mean we understand any better how the system works, and may be a sign we’ve just sort of given up trying to reason about the dynamics of the system. So the next time you read a paper that mentions using neural nets, let it activate your meaningless technical jargon alarm and ask yourself why they’re doing it.