Training Deep Neural Networks