Syllabus
EE 641: A Computational Introduction to Deep Learning
Fall 2025 (2 units)
Machine learning using large datasets is the most transformative technology of the 21st century. Advances in generative ML promise solutions to almost any problem imaginable. This course provides in-depth knowledge of deep learning systems theory and practice. It builds on prerequisite software skills from EE541: A Computational Introduction to Deep Learning and analytical skills from EE 559: Machine Learning I: Supervised Methods.
Lecture: Wednesday (section: 3404), 15:00 – 16:50
Enrollment is in-person ONLY. Attendance is mandatory to all lectures. Taping or recording lectures or discussions is strictly forbidden without the instructor’s explicit written permission.
Course materials
Neural Networks and Deep Learning, Aggarwal, C., Springer International, 2018. online, via SpringerLink.
Deep Learning, Goodfellow, I., Bengio, Y., Courville, A., The MIT Press, 2016. online, http://www.deeplearningbook.org.
Deep Learning Architectures, A Mathematical Approach, Calin, O., Springer International, 2020. online, via SpringerLink.
NOTE: Texts are secondary to in-class lecture material and homework sets.
“AI” policy
You may use AI-powered tools in this course to enhance your learning and productivity. Use AI as a collaborative tool for understanding concepts, generating ideas, and troubleshooting. Approach AI-generated content critically and use it responsibly. Engage with AI as you would with a knowledgeable peer or tutor, using iterative conversations to deepen your understanding. You must attribute all AI-generated content in your work, including the prompts you used. You are fully accountable for the accuracy and appropriateness of any AI-assisted work. AI should supplement, not substitute, your own critical thinking and problem-solving. For assignments, you may use AI to clarify concepts or resolve issues, but the core work must be your own. Submitting AI-generated work as your own without proper understanding or attribution is academic misconduct and will be treated as such.
You must develop complete mastery of all course material independently of AI assistance. Your knowledge and skills will be evaluated in contexts where AI tools are not accessible, mirroring real-world scenarios where you must rely solely on your own expertise. This ensures you can perform effectively in any situation, with or without AI support. Violations of this policy will result in severe academic penalties. The goal is to prepare you to use AI effectively in your future work while ensuring you develop a strong, self-reliant foundation in the course material.
Course Outline
| Week | Topics | Homework |
|---|---|---|
| Week 1 27 Aug |
Introduction, PyTorch, and deep learning review. Advanced CNN architectures and applications. |
HW 0 assigned. |
| Week 2 03 Sep |
Object detection and segmentation. | HW 1 assigned. |
| Week 3 10 Sep |
Generative Models: Energy based, Generative adversarial networks (GANs), and Variational autoencoders (VAEs). | |
| Week 4 17 Sep |
Recurrent Neural Networks (RNNs) and Long Short-Term Memory (LSTM). | HW 2 assigned. |
| Week 5 24 Sep |
Sequence-to-sequence models and attention mechanisms. | |
| Week 6 01 Oct |
Transformers and self-attention. | HW 3 assigned. |
| Week 7 08 Oct |
Exam #1 (weeks 1–6). | |
| Week 8 15 Oct |
Large language models (LLMs) and Mixture of experts (MoE). | |
| Week 9 22 Oct |
Reinforcement learning principles. Project Overview |
HW 4 assigned. |
| Week 10 29 Oct |
Reinforcement learning applications. | Draft project proposal due (31 Oct). |
| Week 11 05 Nov |
Project proposal meetings. | Revised project proposal due (07 Nov). |
| Week 12 12 Nov |
Semi-supervised training, similarity learning, and contrastive learning. | |
| Week 13 19 Nov |
Exam #2 (weeks 8–12). | |
| (22 Nov) | Status report due. | |
| (26 Nov) | No class, Thanksgiving Holiday. | |
| Week 14 03 Dec |
Project presentations (mandatory) — EXTENDED TIME. | |
| Sunday 07 Dec |
Project deliverables, due 23:59. |
Grading Procedure
Homework (35%)
Assignments include analytic and programming problems and encourage experimentation and curiosity. You may discuss homework problems with classmates but each student must submit their own original work. Cheating warrants an “F” on the assignment. Turning in substantively identical homework solutions counts as cheating.
Late homework is accepted with a 0.5% deduction per hour, up to 48-hours – no exceptions. Technical issues while submitting are not grounds for extension. No submissions will be accepted 48-hours after the due date. Graders score what is submitted and will not follow up if the file is incorrect, incomplete, or corrupt. It is your responsibility to ensure you submit the correct files and that they are accessible.
Exams (20%)
Exams are non-cumulative and cover the most recent material (approximately 6-weeks). They test your ability to apply major principles, demonstrate conceptual understanding, and may require writing Python code. You are expected to bring a scientific (non-graphing) calculator. You may use a single 8.5”x11” reference sheet (front and back OK). You may not use any additional resources. Any cheating may result in an “F” in the course and will be referred to Student Affairs for other penalties.
Exams include multiple-choice and short answer questions. They may also include free-response or open-ended questions to demonstrate conceptual understanding. You are expected to write reasonably correct code as well as determine expected behavior of novel computer code. Grading primarily follows correct reasoning but may include deductions for major syntax errors, algorithmic inefficiency, or poor implementation.
Final Project (45%)
This course culminates with a final project in lieu of a final exam. Teams of three students (teams of two with instructor approval) design and implement a deep-learning system to a self-identified problem. Students should treat the project as a platform to demonstrate mastery of problem specification, model selection, data analysis, testing, debugging, and results validation and analysis. The instructor will guide teams with difficulty identifying a suitable problem. Teams will prepare and present their approved project and show how it applies course concepts and deep learning best-practices. Attendance and participation during the project presentation session is mandatory.
Course Grade
A if 90 - 100 points,
B if 80 - 89 points,
C if 70 - 79 points,
D if 60 - 69 points,
F if 0 - 59 points.
(“+” and “–” at ≈ 1.5% of grade boundary).
Cheating
Cheating is not tolerated on homework or exams. Penalty ranges from F on exam to F in course to recommended expulsion.
Final Project
Requirements
Teams of two students design and implement a deep learning system that addresses a substantial problem in machine learning. Teams should identify problems from personal interests or research areas. Teams may select problems with existing solutions provided their implementation demonstrates innovation beyond reproducing prior work. Projects must incorporate substantial depth and demonstrate mastery of problem specification, model selection, experimental design, and rigorous evaluation. Teams must obtain written approval from the instructor before beginning their projects.
All projects must use PyTorch as the primary deep learning framework unless approved explicitly in writing by the instructor. Projects may use additional languages and frameworks for tooling and support.
Scoring and Milestones
| Deliverable | Timing | Weight |
|---|---|---|
| Initial Proposal | Week 10 | 4% |
| Revised Proposal | Week 11 | 8% |
| Status Report | Week 14 | 8% |
| Presentation | Finals Week | 20% |
| Final Report | Finals Week | 25% |
| Model Card | Finals Week | 3% |
| Video | Finals Week | 2% |
| Source Code | Finals Week | 30% |
Project Deliverables
Proposals: The initial proposal describes the problem, prior related work, candidate datasets, proposed technical approach, and expected outcomes. The revised proposal incorporates instructor feedback and reflects any changes based on early implementation work. Proposals communicate that the topic is adequately prepared and outline immediate next steps. The proposal is a guidepost—reasonable deviations in method, approach, and scope are expected as understanding evolves.
Status Report: Documents implementation progress, preliminary results, technical challenges encountered, and remaining work. This checkpoint demonstrates substantial progress toward a working system.
Presentation: Approximately 15-minute presentation describing the project problem, approach, and results. Focus on what was accomplished and why, with minimal theoretical background. Attendance and participation during all presentations is mandatory.
Final Report: A comprehensive technical document that captures the complete project including problem specification, methodology, experimental results, and critical analysis. The report must provide sufficient detail for an uninformed expert to understand models, analytic decisions, outcomes, and implementation. Teams provide quantifiable metrics justifying engineering tradeoffs. The report must explicitly address extensions, what question was answered, and what questions remain.
Model Card: A document providing transparency about the trained model. It summarizes intended use, performance metrics, limitations, training data characteristics, fairness considerations, and ethical implications.
Video: A 3-4 minute video describing the topic, implementation, and results for a broader technical audience. The video should be engaging and teach viewers something interesting about the work.
Source Code: Submitted through a private GitHub repository with read access granted to the instructor. Code must include README files describing repository structure, execution instructions, and technical requirements. Training data and model files are not included in the repository. Code should be well-organized, documented, and reproducible.