**Course Description**

Deep learning is a group of exciting new technologies for neural networks. By using a combination of advanced training techniques, neural network architectural components, it is now possible to train neural networks of much greater complexity. This course will introduce the student to deep belief neural networks, regularization units (ReLU), convolution neural networks and recurrent neural networks. High performance computing (HPC) aspects will demonstrate how deep learning can be leveraged both on graphical processing units (GPUs), as well as grids. Deep learning allows a model to learn hierarchies of information in a way that is similar to the function of the human brain. Focus will be primarily upon the application of deep learning, with some introduction to the mathematical foundations of deep learning. Students will use Google TensorFlow and the Python programming language to architect a deep learning model for several of real-world data sets and interpret the results of these networks.

**Objectives**

- Explain how neural networks (deep and otherwise) compare to other machine learning models.
- Determine when a deep neural network would be a good choice for a particular problem.
- Demonstrate your understanding of the material through a final project uploaded to GitHub.

**Course Materials**

- Course Content/Sessions (GitHub) – Contains the workbooks, datasets and other files related to the course. Material for each class session is kept here.
- Schoology – Submit assignments and view grades.
- Piazza Q&A – Ask questions about this course. Python, TensorFlow or others.
- Class Videos – Recorded videos from the class.
- Syllabus – The current syllabus.
- Programming Assignment #1 – The first programming assignment.
- Programming Assignment #2 – The second programming assignment.
- Midterm – The take home midterm.
- Programming Assignment #3 – The third programming assignment. (Kaggle)
- Programming Assignment #4 – The fourth programming assignment. (Begin final project)
- Final Project – The final project.
- Docker Image – My docker image for this class. Optional. Includes Jupyter, Python, TensorFlow, R and needed packages.
- Washington University Schoology (currently replaces Blackboard) – For current students to see grades and assignments.