Hands-On Deep Learning (FS 2025)
When: Thursday 13:15-17:00
Place: HG G1
Language: English
Register: for this course on myStudies
Contact Person: Susann Arreghini
TAs: TBA
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 representation learning. 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 120 points out of a possible 150 points. Each topic is worth 25 points, so aim to earn at least 20 points per topic. You can see your progress on CodeExpert. The point distribution per topic is as follows:
Task | Points | Comments |
---|---|---|
Notebook | Prerequisite | Must be completed to earn points in the topic. |
Session | 4 | Earn 2 points for attending half a session. |
Challenge | 6 | Minimal solution: 1 point; Excellent solution: 6 points. |
Discussion | 15 | All discussions receive the full 15 points. |
If you are unable to attend a discussion, you are allowed to re-take at most one discussion at the end of the semester. 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 excuse will earn you session points. Missed discussions with a valid excuse do not count toward the one allowed re-take.
Notebook
Each topic is explored using a Python notebook, which must be completed and submitted to earn any points for that topic. 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.
Session
In each session, students work independently or in small groups to explore various aspects of the topic. 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.
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 20 minutes, and you'll be paired with another student. Please ensure that you sign up in CodeExpert for a discussion slot in advance.
Updates
Topics
Topic | Notebook | Topic TA |
---|---|---|
Introduction to Deep Learning | Till Aczel | |
Computer Vision and Audio | Luca Lanzendörfer | |
Graph Neural Networks | Samuel Dauncey | |
Natural Language Processing | Frédéric Berdoz | |
Reinforcement Learning | Saku Peltonen | |
Generative Computer Vision | Andreas Plesner |