Deep learning is part of a broader family of machine learning techniques based on artificial neural networks with representation learning. Learning can be supervised, semi-supervised or unsupervised. This course will teach deep-learning architectures such as deep neural networks, deep belief networks, recurrent neural networks and convolutional neural networks, since they have been successfully applied to fields including computer vision, machine vision, speech recognition, natural language processing, audio recognition, social network filtering, machine translation, bioinformatics, drug design, medical image analysis, material inspection and board game programs, where they have produced results comparable to and in some cases surpassing human expert performance. The students can choose paper presentation or project implementation for assignments in this course.