CS 4644 / 7643 Deep Learning
Fall , Tue/Thu 5:00 pm - 6:15 pm, Klaus Advanced Computing 1443
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.
- Lectures: Tue/Thu 5:00 pm - 6:15 pm, Klaus Advanced Computing 1443
- Piazza: https://piazza.com/gatech/fall2023/cs46447643 (code available on Canvas)
- CS4644: https://gatech.instructure.com/courses/344168
- CS7643: https://gatech.instructure.com/courses/344164
- CS4644: https://www.gradescope.com/courses/564542
- CS7643: https://www.gradescope.com/courses/564543
Class Info & Links
Tentative Schedule (subject to changes)
|W1: Aug 22||
Intro lecture + class logistics.
PS0 is due 11:59pm 08/28 (NO grace period). See Piazza for instruction.
IMPORTANT: All students MUST complete PS0! This is true even if you are currently on the waitlist and want to get in! See FAQ below for gradescope access if you are not registered.
|W1: Aug 24||
Machine learning intro, applications (CV, NLP, etc.), parametric models and their components
|W2: Aug 29||
Supervised Learning, Linear Classification, Loss functions, Gradient Descent
PS0 due 08/28 11:59pm EST.
|W2: Aug 31||
Backpropagation, Computation Graph
PS1/HW1 out, due Sep. 19th 11:59pm
|W3: Sep 5||
Backpropagation with Neural Networks. Optimization Basics
|W3: Sep 7||
How to Pick a Project
|W4: Sep 12||
|W4: Sep 14||Convolution, Pooling, Convolutional Neural Networks Slides (pdf)|
|W5: Sep 19||
Convolutional Neural Networks, Training Neural Networks (part 1): Activation Functions, Data Preprocessing
PS/HW1 due Sep. 19th 11:59pm, PS/HW2 out on Sep. 19th
|W5: Sep 21||
Training Neural Networks 2: Weight Initialization, Batch Normalization, Optimization
|W6: Sep 26||
Training Neural Networks 3: Optimization, Regularization, Hyperparameter Search, Transfer Learning, Model Ensembles
Project Proposal Due Sep 26th 11:59pm
|W6: Sep 28||
Recurrent Neural Networks
|W7: Oct 3||
Attentions and Transformers
|W7: Oct 5||
No class - instructor traveling
PS/HW2 due Oct 5th 11:59pm, PS/HW3 out
|W8: Oct 10||No class - fall break|
|W8: Oct 12||
Natural Language Processing: Large Language Models (Instructor: Will Held)
|W9: Oct 17||
Deep Learning Software and Hardware
|W9: Oct 19||
Computer Vision: Detection and Segmentation
|W10: Oct 24|| Generative Models - Autoregressive Models and Variational Autoencoders (VAE)
PS/HW3 due Oct. 24th 11:59pm
|W10: Oct 26||
Generative Models - Denoising Diffusion Probablistic Models
|W11: Oct 31||
GANs and Self-Supervised Learning
|W11: Nov 2||
Large Vision Language Models
|W12: Nov 7||
Embodied Reasoning Through Planning with Language and Vision Foundation Models
Guest Lecture by Fei Xia, Google DeepMind
Milestone Report and Presentation Due 11/07 11:59pm
|W12: Nov 9||No Lecture --- instructor attending conference|
|W13: Nov 14||
Graph Neural Networks
Guest Lecture by Jiaxuan You, Incoming Assistant Prof. @ UIUC CS
|W13: Nov 16||
Reinforcement Learning 1: MDP, Value Iteration, Deep Q Learning.
PS/HW4 due 11/18 11:59pm
|W14: Nov 21||
Reinforcement Learning 2: Actor-Critic, Frontiers.
|W14: Nov 23||Thanksgiving Holiday - No Class|
|W15: Nov 28||
Grounding Language Models for Perception and Action -- A Practical Take on Data, Modeling, and Scaling
Guest Lecture by Siddharth Karamcheti, Stanford University
|W15: Nov 30||
Robot Learning Teaser + Course Conclusion
|W16: Dec 5||Poster Session (Klaus Atrium): 5-7PM|
- 64% Homework (4 homeworks)
- 36% Final Project
- 1% (potential bonus) Class Participation: top endorsed answers/questions/comments on Piazza
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 submit an Class Absence Verification Form to 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 4641 for the undergraduate section and CS 7641/ISYE 6740/CSE 6740 or equivalent for the graduate section.
- 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!)
- 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
- 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.
- 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.
- 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. ☺
- Consider the privacy of others. Ask permission prior to giving out a classmate’s email address or other information.
- 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).
- 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.
Project Details (36% 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 least the level of 1.5 homework assignment per group member (2-4 people per group). The deliverables are
- Project Proposal (1%): Due Sep 26 - Milestone 1 Presentation to TA (5%): Due Nov 7 - Milestone 2 Written Report (5%): Due Nov 7 - Final Written Report (20%): Due Dec 4 - Poster Session (5%): Dec 5, Klaus Atrium
The final report is 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 6 - 8 pages using a standard Computer Science conference paper template such as CVPR and NeurIPS (we will release the LaTeX template). 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.
We will release a detailed project rubric and the poster session format soon.
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. Just use PS0 as a self-assessment until you manage to enroll in the course.
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 Fall 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.
Related Classes / Online Resources
- CS231n Convolutional Neural Networks for Visual Recognition, Stanford
- Machine Learning, Oxford
- Deep Learning, New York University
- Deep Learning, CMU
- Deep Learning, University of Maryland
- Hugo Larochelle’s Neural Networks class
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.