CS583: Deep Learning

Instructor: Shusen Wang

TA: Yao Xiao


Meeting Time:

Office Hours:

Contact the Instructor:


Goal: This is a practical course; the students will be able to use DL methods for solving real-world ML, CV, and NLP problems.


Syllabus and Slides

  1. Machine learning basics. This part briefly introduces the fundamental ML problems-- regression, classification, dimensionality reduction, and clustering-- and the traditional ML models and numerical algorithms for solving the problems.

  2. Neural network basics. This part covers the multilayer perceptron, backpropagation, and deep learning libraries, with focus on Keras.

  3. Convolutional neural networks (CNNs). This part is focused on CNNs and its application to computer vision problems.

  4. Autoencoders. This part introduces autoencoders for dimensionality reduction and image generation.

  5. Recurrent neural networks (RNNs). This part introduces RNNs and its applications in natural language processing (NLP).

  6. Recommender system. This part is focused on the collaborative filtering approach to recommendation based on the user-item rating data. This part covers matrix completion methods and neural network approaches.

  7. Adversarial Robustness. This part introduces how to attack neural networks using adversarial examples and how to defend from the attack.

  8. Generative Adversarial Networks (GANs).


Every student must participate in one Kaggle competition.




Grading Policy

Grading percentages:

Late penalty: