Chenliang Xu

pic

Fall 2024 - CSC 245/445: Deep Learning

Basic Information

Meet Time/Location: T/R 09:40-10:55 in Morey 321

Instructor: Prof. Chenliang Xu
Instructor's Office Hours: Tue 2:00-4:00 pm in Wegmans 3005

TAs and Office Hours:

Information Flow: We will use Blackboard to make announcements, host lecture notes/assignments, and submit/grade student work. The course ID is CSC245.01.FALL2024ASE. We will use Blackboard's Discussion Board for class-related discussion and communication, so that you can get help fast from the teaching team and your fellow classmates. Don't hensitate to email me and the TAs if it is a personal matter. Finally, this course website containing the course schedule serves as a syllabus.

Credit Hours: This is a four-credit-hour course. The credit hours are met by weekly lectures (150 minutes), office hours, homework assignments, and a final course project.


Course Description

Much of the recent advances in machine learning and artificial intelligence have been dominated by neural network approaches broadly described as deep learning. This course provides an overview of the most important deep learning techniques covering both theoretical foundations and practical applications. The applications focus on problems in image understanding and language modeling utilizing state-of-the-art deep learning libraries and tools, which will be introduced in the course.

Course Objective: The course aims to provide students with both an introduction to deep learning and an in-depth look at current research topics in this field. The course is designed as an upper-level elective course for junior and senior students in CS and DCS and an AI breath course for CS graduate students.

Prerequisites: MTH 164 (multidimensional calculus), MTH 165 (linear algebra), and CSC 172 (data structures and algorithms). Programming in Python. Recommended but not required: CSC 242, CSC 246.

CS Instructional Network: The course programming assignments require you to have an account in the CS instructional network. You should test your code in the CS instructional network before submission as this is the environment we use to grade assignments. Follow this link to request an account if you don't have one.


Schedule

Below is a tentative schedule of the course and is subject to changes over the term.
Part I: Neural Network Basics, Part II: Intermediate Topics, Part III: Advanced Topics.

Dates Tuesday (T) Thursday (R) PI PII PIII
8/27,29 Introduction Machine Learning Basics I
9/3,5 Machine Learning Basics II Feedforward Neural Networks
9/10,12 Backpropagation Programming Tutorial I Out
9/17,19 Optimization Regularization Teaming
9/24,26 Convolutional Neural Networks I Convolutional Neural Networks II
10/1,3 Proposal Presentation I Proposal Presentation II Proposal Days
10/8,10 Recurrent Neural Networks Graph Neural Networks Due
10/15,17 Fall Break Transformers I Out
10/22,24 Transformers II Programming Tutorial II
10/29,31 Explain and Visualization Mid-semester Review Progress Report
11/5,7 Generative Models I Guest Lecture
11/12,14 Generative Models II Multimodal Learning Due
11/19,21 Research & Practice I Research & Practice II
11/26,28 Final Presentation I (Zoom) Thanksgiving
12/3,5 Final Presentation II (Zoom) Final Presentation III (Zoom) Final Report

We see many exciting projects from the students. You can find a subset of their shared slides here.


Course Work and Evaluation

Late Work Policy: Deduct 1% of the total score for the late assignment per hour that passes the deadline. For example, if you submit Project I 12 hours after the deadline, then the maximum score you will get is 88% of Project I. We will not accept your submission over 72 hours after the deadline. All assignments should be submitted on Blackboard.

Regrading: Any questions about the grading of a piece of work must be raised within one week of the date that the work was returned. In other words, if you do not pick up your work in a timely fashion, you may forfeit your right to question the grading of your work.

Policy on Incomplete: You may consider Incomplete if you missed Project III or any two of the projects due to unexpected circumstances. In all cases, you need to let me know as soon as possible and sign an Incomplete contract. If no contracts, you will receive a failing grade.


Textbook and Other Resources

I do not enforce a textbook. However, you may find the following textbooks very helpful:

There are tons of online materials and courses for learning deep learning. This Github repository awesome-deep-learning, although not up-to-date, is an excellent place to get started. You may also learn from deep learning library tutorials and manuals. However, technologies come and technologies go, but insights stay. Therefore, it is more important to understand the principles behind, and you can quickly master any libraries later if needed.


Other Policies

Academic Honesty: All assignments and activities associated with this course must be performed in accordance with the University of Rochester's Academic Honesty Policy. More information is available here. You are expected to read, understand, and follow the policy. Additionally:

Posting homework and project solutions to public repositories on sites like GitHub is a violation of the College’s Academic Honesty Policy, Section V.B.2 “Giving Unauthorized Aid.”

Disabilities: Please see me about your required accommodations as early as possible in the term. The University of Rochester respects and welcomes students of all backgrounds and abilities. In the event you encounter any barrier(s) to full participation in this course due to the impact of a disability, please contact the Office of Disability Resources. The access coordinators in the Office of Disability Resources can meet with you to discuss the barriers you are experiencing and explain the eligibility process for establishing academic accommodations. You can reach the Office of Disability Resources at: disability@rochester.edu; (585) 276-5075; Taylor Hall; www.rochester.edu/college/disability.