This course aims to teach the mathematical foundations behind deep neural networks.  Multiple deep neural network architectures will be covered, including feed forward neural networks, convolutional neural networks, recurrent neural networks, long short-term memory networks, generative adversarial networks, and deep reinforcement learning.