In the past few weeks I've been breaking my brain over a way to automatically answer questions using a neural network. I have a working version, but debugging a neural network is a nightmare.
Neural networks by their very nature are hard to reason about. You can't really find out how or why something happened in a neural network, because they are too complex for that. Also, there's a real art to selecting the right number of layers, the right number of neurons per layers and which optimizer you should use.