Facilitated by the confluence of inexpensive computing power, unprecedentedly large data sets, and clever theoretical advances, Deep Learning algorithms are driving the contemporary revolution in Artificial Intelligence. Deep Learning has emerged as uniquely influential across a broad range of applications, including classification (e.g., visual recognition, sentiment analysis), prediction (e.g., stock markets, health outcomes), generation (e.g., creating works of art, composing music), and sequential decision-making (e.g., games,robotics). In the past few years, Deep Neural Networks have made their way into countless everyday applications, including Tesla’s Autopilot, Amazon’s Alexa, and Google’s suggested email replies. Indeed, Deep Learning algorithms have exceeded human performance on previously intractable computational problems like language translation, object detection, and the game of Go.
This course is an introduction to artificial neural networks that brings high-level theory to life with interactive labs featuring TensorFlow 2, Keras, and PyTorch — the three principal Deep Learning libraries. Essential theory will be covered in a manner that provides students with a complete intuitive understanding of Deep Learning’s underlying foundations. Paired with hands-on code run-throughs in Jupyter notebooks as well as strategic advice for overcoming common pitfalls, this foundational knowledge will empower individuals with no previous understanding of neural networks to build production-ready Deep Learning applications across all of the contemporary families, including:
- Convolutional Networks for machine vision
- Long Short-Term Memory Recurrent Nets for natural language processing and time series analysis
- Generative Adversarial Networks for producing jaw-dropping synthetic data
- Deep Reinforcement Learning for complex sequential decision-making
It would be challenging to follow along through the code demos and exercises without some experience in object-oriented programming, ideally Python (introductory course here). Students with experience in other languages (e.g., R) have, however, been very successful.
Certificates are awarded at the end of the program at the satisfactory completion of the course. Students are evaluated on a pass/fail basis for their performance on the required homework and final project (where applicable). Students who complete 80% of the homework and attend a minimum of 85% of all classes are eligible for the certificate of completion.