Deep learning currently provides state-of-the-art performance in computer vision, natural language processing, and many other machine learning tasks. In this talk, we will learn when deep learning is useful (and when it isn't!), how to implement some simple neural networks in Python using Theano, and how to build more powerful systems using the OpenDeep package. Our first model will be the 'hello world' of deep learning - the multilayer perceptron. This model generalizes logistic regression as your typical feed-forward neural net for classification. Our second model will be an introduction to unsupervised learning with neural nets - the denoising auto-encoder. This model attempts to reconstruct corrupted inputs, learning a useful representation of your input data distribution that can deal with missing values. Finally, we will explore the modularity of neural nets by implementing an image-captioning system using the the OpenDeep package. Markus Beissinger Recent graduate from the Jerome Fisher Program in Management and Technology dual degree program at the University of Pennsylvania (The Wharton School and the School of Engineering and Applied Science), and current Master's student in computer science. Focus on machine learning, startups, and management. Slides: goo.gl/P9QGnV