Hands-On Deep Learning (FS 2025)
Time: Thursday 13:15-17:00
Place: HG G1
Language: English
Register: for this course on myStudies
Contact Person: Susann Arreghini
Student TAs: Emerson Aguiar, Armin Begic, Severin Bratus, Benjamin Jäger, Megan Marty, Sascha Pucillo, Simon Schlude, Janis Steffen
Head TA: Till Aczel
This lab offers hands-on deep learning exercises using PyTorch, covering computer vision, audio processing, graph neural networks, natural language processing, reinforcement learning, and generative AI. The material is organized into six topics, each spanning two weeks. The course is conducted on CodeExpert, sign-up: TBA. Important: you need to sign up in myStudies before signing up in CodeExpert!
Prerequisites
This course has two prerequsites:
- Students should be familiar with deep learning concepts, such as those covered in Computational Thinking (Chapters 5 and 6) or through self-study.
- Students must know an imperative programming language (e.g., C, C++, Java, JavaScript, or Python). Python is used in this course, and understanding the Python Cheat Sheet is required.
Passing Requirements
To pass the lab, you must earn 150 points out of a possible 180 points. Each topic is worth 30 points, so aim to earn at least 25 points per topic. You can see your progress on CodeExpert. The point distribution per topic is as follows:
Task | Points | Comments |
---|---|---|
Session | 4 | Earn 2 points for attending half a session. |
Notebook | 6 | A solved notebook gets the full 6 points. |
Challenge | 6 | Minimal solution: 1 point; Excellent solution: 6 points. |
Discussion | 14 | All discussions receive the full 14 points. |
If you miss a session or discussion for a valid reason (e.g., doctor's note, military service, exam), please email Susann Arreghini. Missed sessions with a valid, documented excuse will earn session points. Missed discussions with a valid excuse can be re-taken at the end of the semester. Students are allowed to re-take at most one discussion for unexcused absences.
Session
In each session, students work independently or in small groups to solve the notebook and challenge. Most students will need a few extra hours to finish everything after the session. TAs are available to answer questions and provide guidance. Bring your laptop to the session. A limited number of machines will also be available in the room.
Notebook
Each topic is explored using a Python notebook. While collaboration with peers is encouraged, you are required to write and submit your own solutions. The notebook links are listed bellow.
The notebooks require GPUs, and you have two options for accessing them:
- Snowflake cluster (recommended): A GPU cluster using SLURM, where you can start an interactive session. Login details are sent via email. Snowflake instructions.
- Google Colab: A user-friendly interface offering free access to computational resources for a limited duration each day. Colab Tips and Tricks: Save the notebook in your drive before you begin working on it to avoid losing your progress. If you run out of GPU hours, you may switch to an alternative Google account.
Challenge
The challenge builds on the material covered in the notebook and is available on CodeExpert. Remember, do not copy anyone else’s code or solutions. After submitting your solution, you receive feedback on the number of points earned immediately after your model finishes training. The top three submissions for each challenge will receive a small prize!
Discussion
The goal of the discussion is to help you better understand the topic and receive feedback from a TA. Each discussion will take about 15 minutes, and you'll be paired with another student. Please ensure that you sign up in CodeExpert for a discussion slot in advance.
Schedule
Sessions and presentations alternate every Thursday. The notebook and challenge must be submitted on the Tuesday of the presentation week. The repeat presentation will take place on 29.05.2025.
Topic | Topic TA | Notebook Link | Date / Deadline | ||
---|---|---|---|---|---|
Session | Notebook and Challenge | Presentation | |||
Introduction to Deep Learning | Till Aczel | TBR | 27.02.2025 | 04.03.2025 | 06.03.2025 |
Computer Vision and Audio | Luca Lanzendörfer | TBR | 13.03.2025 | 18.03.2025 | 20.03.2025 |
Graph Neural Networks | Samuel Dauncey | TBR | 27.03.2025 | 01.04.2025 | 03.04.2025 |
Natural Language Processing | Frédéric Berdoz | TBR | 10.04.2025 | 15.04.2025 | 17.04.2025 |
Reinforcement Learning | Saku Peltonen | TBR | 01.05.2025 | 06.05.2025 | 08.05.2025 |
Generative Computer Vision | Andreas Plesner | TBR | 15.05.2025 | 20.05.2025 | 22.05.2025 |
Updates