Syllabus
EE 541: A Computational Introduction to Deep Learning
Spring 2026 (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. Machine learning proficiency requires software skills as well as an understanding of the underlying mathematics and theoretical foundations. This class introduces important aspects of deep learning using a computation-first approach. It emphasizes using frameworks to solve reasonably well-defined machine learning problems.
Lecture: Monday (section: 31249), 16:00 – 17: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
Dive into Deep Learning, Zhang, A., Lipton, Z. C., Li, M., Smola, A. J., Cambridge University Press, 2024. online, https://d2l.ai/d2l-en.pdf.
Mathematics for Machine Learning, Deisenroth, M., Faisal, A., Ong, C., Cambridge University Press, 2020. online, https://mml-book.github.io/book/mml-book.pdf.
Deep Learning with PyTorch, Stevens, E., Antiga, L., Viehmann, T., Manning, 2020. online, https://pytorch.org/assets/deep-learning/Deep-Learning-with-PyTorch.pdf.
Python Programming And Numerical Methods: A Guide For Engineers And Scientists, Kong, Q., Siauw, T., Bayen, A., Elsevier, 2020. online, https://pythonnumericalmethods.berkeley.edu/notebooks/Index.html.
“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 submitted work must be your own. Submitting AI-generated work as your own without proper attribution or understanding is academic misconduct and will be treated as such.
You must develop complete mastery of all course material independent 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/Date | Topics | Required Reading | Homework |
|---|---|---|---|
| Week 1 12 Jan |
Machine Learning inventory. Configuring your Python environment. | [1] Ch. 1–2 [2] Ch. 8.1–8.4 [4] Ch. 1, 12.1 |
HW 1 |
| 19 Jan | No class, Martin Luther King Jr. Day | ||
| Week 2 26 Jan |
Getting started with Python. Numerical Python. | [4] Ch. 2–5, 10 | HW 1 due HW 2 |
| Week 3 02 Feb |
Estimation and MMSE. | [2] Ch. 2–4, 6 [4] Ch. 14–15 |
HW 3 |
| Week 4 09 Feb |
Regression and maximum likelihood. | [1] Ch. 3 [2] Ch. 9, 11 [4] Ch. 11, 16 |
HW 4 |
| 16 Feb | No class, Presidents’ Day | HW 4 due | |
| Week 5 23 Feb |
Logistic regression. Multilayer perceptron networks (MLPs). | [1] Ch. 4–5 | HW 5 |
| Week 6 02 Mar |
MLP backpropagation (scalar, vector/tensor). | [1] Ch. 12.1–12.5 [2] Ch. 5 |
HW 6 |
| Week 7 09 Mar |
Quiz #1 (weeks 1-6) | HW 6 due | |
| 16 Mar | No class, Spring Break | ||
| Week 8 23 Mar |
PyTorch: Introduction. | [3] Ch. 3, 4.1, 5–7 [4] Ch. 7 |
HW 7 |
| Week 9 30 Mar |
PyTorch: Building MLPs. | [1] Ch. 6 | HW 8 |
| Week 10 06 Apr |
Convolutional Neural Networks (CNN). | [1] Ch. 7 | HW 9 |
| Week 11 13 Apr |
Project overview. Convolutional architectures. | [1] Ch. 8.1–8.6 | Project proposal (17 Apr) |
| Week 12 20 Apr |
PyTorch: Optimizing training. Data engineering. | [1] Ch. 12.6–12.11, 14.1–14.2 [2] Ch. 10 |
|
| Week 13 27 Apr |
Auto-encoders and embedding. Recurrent neural networks (RNN). | [1] Ch. 15.1–15.4 | |
| Week 14 04 May |
Quiz #2 (weeks 8-13) | ||
| Friday 08 May |
Project deliverables due 17:00 |
Grading Procedure
Homework (50%)
Assignments include analytic and programming problems and encourage experimentation and curiosity. Your total homework score sums your best homework scores (as a percentage) after removing the two lowest scores (of minimum 50%). 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. It is your responsibility to ensure you submit the correct files and that they are accessible. Graders score what is submitted and will not follow up if the file is incorrect, incomplete, or corrupt.
Quizzes (30%)
Quizzes are non-cumulative and cover the most recent material (approximately 6-weeks). They test your ability to apply major principles and demonstrate conceptual understanding. They occur during weeks 7 and 14 (tentative). You are expected to bring a scientific (non-graphing) calculator. You may use both sides of one 3.5” x 5” reference card. You may not use any additional resources.
Quizzes include multiple-choice and short answer questions. They also include free-response or open-ended questions to demonstrate conceptual understanding. You are expected to write reasonably correct Python 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 (20%)
This course culminates with a final project in lieu of a final exam. Teams of two students apply deep-learning to problem selected from a set of instructor-defined options. Instructor defined problems will include a complete starter dataset. Teams must experiment and document network architecture search, hyper-parameter optimization, and dataset augmentation. Students should treat the final project as a multi-week in-depth homework assignment and integrate concepts from the entire semester.
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
Complete details at Project Guidelines.
Requirements
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 |
|---|---|---|
| Topic proposal | Week 11 | 10% |
| Project report | Finals Week | 35% |
| Model and source code | Finals Week | 50% |
| Model card | Finals Week | 5% |
Project Deliverables
Topic proposal: Restate the selected problem and include a preliminary discussion about methods, techniques, or proposed variations/modifications/extensions to the problem handout. Proposals should be written in anticipation of fulfilling final report requirements. But the proposal is merely a guidepost and reasonable deviations in method, approach, and scope are expected.
Written report: A properly referenced written report that incorporates all source code as well as links to any external code sources. The project report should summarize the topic, provide relevant background (theoretical or applied), timeline and contributions, and document challenges and future extensions. It should provide discussion sufficient for an uninformed expert to understand the problem, model and training decisions, and implementation. Teams should provide quantifiable metrics to justify architectural choices and engineering tradeoffs.
The report must include the following additional elements:
- Literature survey of work already done in your problem domain. Understand network architectures used in similar models.
- Experimental results with various models (both ML and DL) and performance comparison. Use different architectures and hyperparameters.
- Evidence of good data handling and processing, i.e., maintain separate test, train, and validation sets.
Source code: Submitted as GitHub repository to Gradescope. It must include README file(s) that describe the repository structure, execution instructions, and special technical requirements. It must not include any training data or model files. Details will be provided by the instructor.
Model card: A model card is a short document that provides context and transparency about your trained model. It summarizes the intended use, performance, and limitations of your model. It must include intended use, factors, metrics, evaluation data, training data, and ethical considerations.