DSBA 6165: Deep Learning & Artificial Intelligence

Spring 2025

Course Overview & Objectives

This course aims to introduce state-of-the art methods in Deep Learning and build understanding of its sub domains through hands-on programming and projects. Broadly course is divided into following topics:

  • Neural Networks: Building neural networks for classification and regression, understanding loss functions, optimization methods like gradient descent, initialization strategies, the importance of depth etc.
  • Computer Vision: Building Convolutional Neural Networks, State-of-the art architectures, Image Classification, Object Detection, Instance Segmentation and other computer vision applications.
  • Natural Language Processing: Recurrent Networks, Embeddings, Transformers, Language Models.
  • Generative Modeling: GANs, VAEs, Stable Diffusion, GenAI

Additionally, the following topics are tentative and may be added to the schedule depending upon the pace:

  • Graph Neural Networks, Reinforcement Learning, Introduction to LLMs, and AI Ethics.

Course Material

All material will be distributed through Canvas.

Lecture Slides

  • Lecture notes are provided in the form of slides and will contain references to all the material needed for each topic.
  • Numerous research papers, articles and topics from the books are referenced and appropriately cited where discussed.

Reference Books

Videos

  • To further aid in understanding, students are encouraged to watch additional 2-5 minute videos on certain topics as necessary.

Course Format

  • Quiz: Based on the content covered in the lectures and the videos posted on canvas, we will have a short poll everywhere quiz in each class.
  • Labs: In the latter half of each lecture, students will get to work on hands-on programming labs (Jupyter notebooks) which will be based on the topic covered in the lecture that day.
  • Assignments: We will have 2 individual programming assignments.
  • Group Project: Students will engage in a semester long group project working on a real-world deep learning problem. The project will be divided into 6 stages, each targeting on finishing a milestone. Details about the project available on Canvas.
Pre-Class Activities In-Class Activities Post-Class
Watch Videos Attend Lecture Work on Programming Assignment
Do Readings Take Quiz Work on Project
Work on Lab

Grading

Course Element Percentage
Labs 30%
Programming Assignments 20%
Project 40%
Quizzes 10%
Total 100%

Prerequisites

  • Knowing how to program in Python
  • Some understanding of machine learning and familiarity with data manipulation libraries like NumPy and Pandas

Tools / Skills to develop

  • PyTorch, TensorFlow