Neural Networks are the first technique everyone thinks about when she considers applying machine learning. But understanding of NNs is usually lacking and the availability of high-level packages does help with this. Understanding NNs at least somewhat is necessarily to effectively using them. The type of NN used decides what problems can be solved but what works best for a given problem? How to train the network? This talk gives an introduction to the commonly used NNs, the math behind them, and how to best use them.