CS 4644 / 7643 Deep Learning

Spring 2022, Mon/Wed 2:00 - 3:15 pm, Online Synchronous

Course Information

This is an exciting time to be studying (Deep) Machine Learning, or Representation Learning, or for lack of a better term, simply Deep Learning!

Deep Learning is rapidly emerging as one of the most successful and widely applicable set of techniques across a range of domains (vision, language, speech, reasoning, robotics, AI in general), leading to some pretty significant commercial success and exciting new directions that may previously have seemed out of reach.

This course will introduce students to the basics of Neural Networks (NNs) and expose them to some cutting-edge research. It is structured in modules (background, Convolutional NNs, Recurrent NNs, Deep Reinforcement Learning, Deep Structured Prediction). Modules will be presented via instructor lectures and reinforced with homeworks that teach theoretical and practical aspects. The course will also include a project which will allow students to explore an area of Deep Learning that interests them in more depth.

Class meets
Monday, Wed. 2:00 - 3:15 pm; Remote
Bluejeans: https://primetime.bluejeans.com/a2m/live-event/jchkwrqq
Piazza: http://piazza.com/gatech/spring2022/cs46447643a/
CS4644: gatech.instructure.com/courses/249278
CS7643: gatech.instructure.com/courses/236394
CS4644: https://www.gradescope.com/courses/346893
CS7643: https://www.gradescope.com/courses/346907


Date Topic Optional Reading
W1: Jan 10 Intro lecture + class logistics.
Slides (pdf)
PS0 is out and due 11:59pm 01/13 (NO grace period). IMPORTANT: All students MUST complete PS0! This is true even if you are currently on the waitlist and likely to get in! See FAQ below for gradescope access if you are not registered.
W1: Jan 12 Machine learning intro, applications (CV, NLP, etc.), parametric models and their components
PS0 due 01/13 11:59pm EST.
Slides (PDF)
Supervised Learning notes, k-NN notes.
W2: Jan 17 Georgia Tech Holiday (MLK)
PS/HW1 Out
W2: Jan 19 Supervised Learning, Linear Classification, Loss functions
Slides (PDF)

W3: Jan 24 Gradient Descent, Linear Algebra View.
Slides (pdf)
W3: Jan 26 Gradient Descent, Neural Networks.
Slides (pdf)
W4: Jan 31 Backpropagation, Jacobians, Autodiff
Slides (pdf)
W4: Feb 2 Neural Networks, Backpropagation, and Automatic Differentiation.
Gradients notes and MLP/ReLU Jacobian notes.
Forward/Reverse Autodiff Examples
Slides (pdf)
PS/HW1 due Feb. 5th 11:59pm (grace period until Feb 7th), PS/HW2 out
W5: Feb 7 Activation Functions, Optimization. Slides (pdf)
W5: Feb 9 Regularization, Data Augmentation, Convolutions.
OMSCS Video: Data Wrangling (see dropbox link on Piazza, M1L4 directory).
Slides (pdf)
W6: Feb 14 Convolutions, convolution gradients
Slides (pdf)
W6: Feb 16 Convolution gradients, Convolutional Neural Networks.
Slides (pdf)
CNNs notes, CNNs Backprop notes.
W7: Feb 21 Convolutional Neural Networks (CNNs)
Slides (pdf)
W7: Feb 23 Visualization
Slides (pdf)
PS/HW2 due Feb. 23rd 11:59pm (grace period until Feb 25th), PS/HW3 out
W8: Feb 28 Visualization cont. Advanced CNN architectures.
Slides (pdf)
W8: Mar 2 Advanced CNN architectures, Bias and Fairness Video (M2L10 on dropbox)
Slides (pdf)
W9: Mar 7 Project Planning session
W9: Mar 9 Bias and Fairness, Introduction to Structured Neural Representations, Language Models
Project proposals due Mar. 13th 11:59pm EST (grace period until Mar. 15th)</b>
Slides (pdf)
W10: Mar 14 Recurrent Neural Networks 2, Long Short-Term Memory
PS/HW3 due Mar. 14 11:59pm (grace period until Mar. 16th), PS/HW4 out
Slides (pdf)
W10: Mar 16 Neural Attention Models (Transformers). Guest Lecture by Arjun Majumdar
Slides (pdf)
W11: Mar 21 & 23rd No Class (Spring Break Day)
W12: Mar 28 Masked Language Models, Vision Transformers, Embeddings. Introduce reinforcement learning.
Slides (pdf)
W12: Mar 30 RL background.
Slides (PDF),
W13: Apr 4 RL: Dynamic Programming (Policy Iteration), Q-Learning, DQN.
PS/HW4 due Apr. 6 11:59pm (grace period until Apr. 8) (note: deadline has been extended)
Slides (pdf).
W13: Apr 6 RL: Policy Gradients, REINFORCE, Actor-Critic.
Slides (pdf).
W14: Apr 11 Generative Adversarial Networks (GANs).
Slides (pdf).
W14: Apr 13 Guest Lecture by Ishan Misra (Meta) on Self-Supervised Learning
Slides (pdf).
W15: Apr 18 Variational Autoencoders (VAEs)
Slides (pdf),
W15: Apr 20 Guest Lecture: Joanne Truong on Embodied AI
Slides (pdf)
W16: Apr 25 Emerging trends, wrap-up.
Slides (pdf),
Projects due May 1st 11:59pm EST (grace period until May. 3rd)


  • 80% Homework (4 homeworks
  • 20% Final Project
  • 1% (potential bonus) Class Participation (top endorsed answers/questions/comments)

Late policy for deliverables

  • There will be no make-up work provided for missed assignments. Of course, emergencies (illness, family emergencies) will happen. In those instances, please contact the Dean of Students office (see here for rules). The Dean of Students is equipped to verify emergencies and pass confirmation on to all your classes. For consistency, we ask all students to do this in the event of an emergency. Do not send any personal/medical information to the instructor or TAs; all such information should go through the Dean of Students.
  • Every homework deliverable and project deliverable will have a 48-hour grace period during which no penalty will apply. This is intended to allow you time to verify that your submission has been submitted (we recommend you re-download it and look it over to make sure all questions/deliverables have been answered). Canvas will show your submission as late, but you do not have to ask for this grace period. Deliverables after the grace period will receive a grade of 0.


CS 4644/7643 should NOT be your first exposure to machine learning. Ideally, you need:

  • Intro-level Machine Learning
    • CS 3600 for the undergraduate section and CS 7641/ISYE 6740/CSE 6740 or equivalent for the graduate section.
  • Algorithms
    • Dynamic programming, basic data structures, complexity (NP-hardness)
  • Calculus and Linear Algebra
    • positive semi-definiteness, multivariate derivates (be prepared for lots and lots of gradients!)
  • Programming
    • This is a demanding class in terms of programming skills.
    • HWs will involve Python and PyTorch.
    • Your library of choice for project.
  • Ability to deal with abstract mathematical concepts

Online Student Conduct and (N)etiquette

Communicating appropriately in the online classroom can be challenging. All communication, whether by email, Piazza, Canvas, or otherwise, must be professional and respectful. In order to minimize this challenge, it is important to remember several points of “internet etiquette” that will smooth communication for both students and instructors

  1. Read first, Write later. Read the ENTIRE set of posts/comments on a discussion board before posting your reply, in order to prevent repeating commentary or asking questions that have already been answered.
  2. Avoid language that may come across as strong or offensive. Language can be easily misinterpreted in written electronic communication. Review email and discussion board posts BEFORE submitting. Humor and sarcasm may be easily misinterpreted by your reader(s). Try to be as matter of fact and as professional as possible.
  3. Follow the language rules of the Internet. Do not write using all capital letters, because it will appear as shouting. Also, the use of emoticons can be helpful when used to convey nonverbal feelings. ☺
  4. Consider the privacy of others. Ask permission prior to giving out a classmate’s email address or other information.
  5. Keep attachments small. If it is necessary to send pictures, change the size to an acceptable 250kb or less (one free, web-based tool to try is picresize.com).
  6. No inappropriate material. Do not forward virus warnings, chain letters, jokes, etc. to classmates or instructors. The sharing of pornographic material is forbidden.

NOTE: The instructor reserves the right to remove posts that are not collegial in nature and/or do not meet the Online Student Conduct and Etiquette guidelines listed above.

Plagiarism & Academic Integrity

Georgia Tech aims to cultivate a community based on trust, academic integrity, and honor. Students are expected to act according to the highest ethical standards. All students enrolled at Georgia Tech, and all its campuses, are to perform their academic work according to standards set by faculty members, departments, schools and colleges of the university; and cheating and plagiarism constitute fraudulent misrepresentation for which no credit can be given and for which appropriate sanctions are warranted and will be applied. For information on Georgia Tech’s Academic Honor Code, please visit http://www.catalog.gatech.edu/policies/honor-code/ or http://www.catalog.gatech.edu/rules/18/.

You are encouraged to discuss problems and papers with others as long as this does not involve the copying of code or solutions. After discussions, all materials that are part of a submission should be wholly your own. Do NOT search for code directly implementing the assignment and submit snippets or variations of them. You can search for conceptual information but NOT code solutions. Any public material that you use (open-source software, help from a textbook, or substantial help from a friend, etc.) should be acknowledged explicitly in anything you submit to us. If you have any doubts about whether something is legal or not, please do check with the class Instructor or the TA. We will actively check for cheating, and any act of dishonesty will result in a Fail grade. Any student suspected of cheating or plagiarizing on any deliverable including assignments will be reported to the Office of Student Integrity, who will investigate the incident and identify the appropriate penalty for violations.

Students with Disabilities

If you are a student with learning needs that require special accommodation, contact the Office of Disability Services at 404.894.2563 or http://disabilityservices.gatech.edu/, as soon as possible, to make an appointment to discuss your special needs and to obtain an accommodations letter. Please also e-mail me as soon as possible in order to set up a time to discuss your learning needs.

Subject to Change Statement

The syllabus and course schedule may be subject to change. Changes will be communicated via the Canvas announcement tool. It is the responsibility of students to check Piazza, email messages, and course announcements to stay current in their online courses.

Campus Resources

Community Resources

Project Details (20% of course grade)

The class project is meant for students to (1) gain experience implementing deep models and (2) try Deep Learning on problems that interest them. The amount of effort should be at the level of one homework assignment per group member (1-5 people per group).

A PDF write-up describing the project in a self-contained manner will be the sole deliverable. Your final write-up is required to be between 4 - 6 pages using the template here, structured like a paper from a computer vision conference (CVPR, ECCV, ICCV, etc.). Please use this template so we can fairly judge all student projects without worrying about altered font sizes, margins, etc. After the class, we will post all the final reports online so that you can read about each others’ work. Additionally, we will allow people to upload additional code, videos, and other supplementary material as zip file similar to code upload for assignments. While the PDF may link to supplementary material, external documents, and code, such resources may or may not be used to evaluate the project. The final PDF should completely address all of the points in the rubric described below.

Rubric (60 points)

See Canvas for project information: 4644 project information (rubrics), 7643 project information (rubrics)


  • What is the delivery format?

    This Spring 2022 instance is “Online Synchronous”, meaning that lectures are delivered remotely (over Bluejeans) at the scheduled class time. All other deliverables are accepted online. The class has no in-person interaction.

  • The class is full. Can I still get in?

    Sorry. The course admins in CoC control this process. Please talk to them.

  • Unregistered Students who intend to register:

    If you are not registered for this course, you will not have access to Gradescope for submission of PS0. Please fill the following form in order to be added to Gradescope and be able to submit PS0: https://qfreeaccountssjc1.az1.qualtrics.com/jfe/form/SV_cAoZgkHlJijS8F8

    Students who individually emailed us and have not been added yet - you may have left out the details of which course instance you are planning to take (either CS 7643 or CS 4644). There are two separate Gradescope courses for the two instances. Please fill the above form in order to provide us with this information.

  • Registered students who are not able to access Gradescope:

    This will happen if you were registered to the course very recently. Gradescope rosters are synced periodically and it may take some time for you to receive a Gradescope sign-up notification. If you still face problems with accessing Gradescope, please email us.

  • I am graduating this Spring and I need this class to complete my degree requirements. What should I do?

    Talk to the advisor or graduate coordinator for your academic program. They are keeping track of your degree requirements and will work with you if you need a specific course.

  • Can I audit this class or take it pass/fail?

    No. Due to the large demand for this class, we will not be allowing audits or pass/fail. Letter grades only. This is to make sure students who want to take the class for credit can.

  • I have a question. What is the best way to reach the course staff?

    Registered students – your first point of contact is Piazza (so that other students may benefit from your questions and our answers). If you have a personal matter, create a private piazza post.

Note to people outside Georgia Tech

Feel free to use the slides and materials available online here. If you use our slides, an appropriate attribution is requested. Please email the instructor with any corrections or improvements.