Pretty much this. In the real world you have to deal with
- Too few labeled / garbage labeled data (70000 digits? How about only 1000 complex class objects?)
- Obscure bugs in custom implementation (yeah my custom layer works and gradient is correct... or wait why it diverges after 10k iteration? hmm).
- Timing/RAM constraints (it should segment an image under 10ms on Jetson TX1, well, good luck with GoogLeNet)