UC San Diego · Summer 2026

CSE 151B: Deep Learning

How can we solve problems that are too complex for prescriptive rules or algorithms? Deep learning allows us to use massive amounts of data and trainable parameters to create systems that can categorize and predict without explicit rules. The field of deep learning moves quickly, so we aim to equip you with not only an understanding of the implementation of foundational models, but also an intuition for how they were designed and how to reason about future design decisions. You will learn about and implement basic multilayer perceptrons and the backpropagation algorithm, followed by convolutional neural networks (CNNs), recurrent neural networks (RNNs), and transformers. We will end with discussions of modern GenAI, introducing reinforcement learning with human feedback (RLHF) and large language models (LLMs). You’ll learn about these architectures by experimenting with them and understanding them well enough to explain them yourself.

Course Information

Lectures
Monday, Tuesday, Wednesday, 11:00am–12:20pm · COA B30
Oral assessments
Thursdays at your scheduled time (via Google Calendar) · CSE Building Basement
Discussion
Monday & Wednesday, 2:00pm–2:50pm
Instructional team
Instructor: Annapurna Vadaparty. Teaching staff: Ben Bao, Trevor Duong, Alexander Radulescu.
Syllabus (PDF)
Full CSE 151B syllabus

Learning Outcomes

Understand the major deep learning architectures — MLPs, CNNs, RNNs, and transformers — and the processes that drive them. For each topic, know how and why it arose, its affordances and drawbacks, and how it responds to different inputs.

Understand the major architectures, the processes that drive them, and the broad shape of advanced topics.

For each topic, the aim is to know how and why it arose, its affordances and drawbacks relative to alternatives, how its structure produces those properties, and how it responds to different inputs and data distributions. See the syllabus for the full attributes-of-understanding table.

Teaching Philosophy

This course is guided by pragmatism, joy, and equity. Workloads are meaningful but manageable, the classroom is flipped, and mastery learning is built in through retakes at each step.

Diagram illustrating the flipped classroom model

As a student, you may notice the variety of different teaching decisions made by different teaching teams. How do instructors choose what to teach, and how to assess what their students have learned? Each instructor has their own teaching philosophy, and here I would like to share mine with you so that you may better understand the rationale behind the teaching decisions in our course.

Pragmatism guides us in two key ways. First, we design for real students with real constraints and a wide range of priorities. We aim to assign meaningful but manageable workloads, and incorporate late hours for when things arise outside of class. We also recognize the temptations of the path of least resistance, and understand that the variety of online resources and tools that could render assignments fruitless. We see such temptations as human tendencies rather than a limitation of any particular student. To this end, we’ve designed the course with in-person explanation components (through class discussions and oral assessments) to incentivize you as a student to understand the content in enough depth to communicate about it. A second major way in which pragmatism guides us is in the development of core learning objectives. For each learning objective, we carefully consider why it is important and how a student is likely to use this knowledge in future endeavors. We do not aim to have students implement every architecture or prove every theorem that has ever been published. Instead, we curate what problems to ask students to spend their time on based on what practical knowledge they are likely to need. This is not to say that we skimp on theory (I personally love a good, intuition-driven proof!). Rather, we focus our expectations of students’ understanding of both theory and application components on intuitions and skills that we think will be ever-green in the swiftly moving AI landscape.

We center joy in our teaching. When we think back to our favorite teachers, one common element is the fact that they are able to bring the joy intrinsic to the subject matter to the student. Good teachers are able to adequately build a bridge from the student’s current knowledge to the new content in the course, and help build their curiosity toward the course content and appreciate the beauty of the new concepts they are learning. We strive to make the exciting parts of the subject matter accessible to the learner.

Underpinning both pragmatism and joy is, of course, equity. In order for students to learn the important and exciting parts of the course, they must be equipped with the tools and infrastructure (both inside and outside the classroom) to succeed. Our late hours aim to account for extenuating circumstances in students’ personal life while still aiming to keep them on track and not fall further behind than they are able to catch up from. We incorporate mastery learning by allowing for retakes in several course components—students come from different backgrounds and may take different amounts of time to absorb and practice material, and we want to embrace and encourage remediation and improvement. Additionally, in a course like deep learning, computing power of personal computers can quickly uneven the playing field in project submissions that use large models. To this end, we have ensured that there are free resources available for students to be able to complete all assignments in reasonable amounts of time without needing to pay, which is often a concern in classes that involve GPUs.

Diagram illustrating the flipped classroom model

The flipped classroom approach is an example of a teaching decision that aims to address all three tenets of the teaching philosophy. Pragmatically, students are able to pause and ponder as they learn new content before attending class, allowing them to learn at their own pace rather than (implausibly) expecting everyone to follow difficult new content at the same pace during lecture. We imagine that the discussions and problem solving that then take place in class are more joyful than listening and trying to absorb dense technical content for over an hour at a time. The ability to learn at a pace that works for you outside of class and be on even footing to participate when you get to class is something that I hope makes the course more equitable, rather than being a race for who can immediately make sense of a new equation at the pace that the instructor explains it.