Over the last few years, deep neural networks (DNNs) have fundamentally transformed the way people think of machine learning and approach practical problems. Successes around DNNs have ranged from traditional AI fields such as computer vision, natural language processing, interactive games, to healthcare, physical sciences—touching each and every corner of theoretical and applied domains. On the other hand, DNNs still largely operate as black-boxes and we only have very limited understanding as for when and why they work. This course introduces basic ingredients of DNNs, samples important applications, and throws around open problems. Emphasis is put on thinking from first principles, as the field is still evolving rapidly and there is nothing there that cannot be changed.

Instructor: Professor Ju Sun Email: jusun AT umn.edu

When/Where: Mon 6:30 – 9:00pm/Keller 3-230

TA’s: Hengkang Wang Email: wang9881 AT umn.edu   Le Peng Email: peng0347 AT umn.edu

The detailed syllabus, containing the office hours, recommended references, assessment, homework and project requirements, programming and computing, and other resources, can be found here: Syllabus.pdf

Target: Graduate and advanced undergrad students.

Registration: Registration is based on permission from the instructor. If you’re interested, please email Prof. Sun (jusun AT umn.edu) and describe your academic standing, relevant course experience, and research experience if any.

(This course is now cross-listed as CSCI 5980/8980. The latter requires different coursework than the 5980 level. Please refer to the syllabus for the different assessment methods. In your request, you need to specify the level you want to take. The 8980 level is ideal for mature graduate students who are interested in research topics relevant to deep learning. )

Prerequisite: Introduction to machine learning or equivalent. Maturity in linear algebra, calculus, and basic probability is assumed. Familiarity with Python (esp. Numpy, Scipy) is necessary to complete the homework assignments and final projects. We focus on PyTorch (>=1.0) as the default deep learning framework, although Tensorflow (>=2.0) is also supported.