Studiegids

nl en

Introduction to Deep Learning

Vak
2024-2025

Admission requirements

Assumed prior knowledge

Elementary calculus and linear algebra; basics of probability theory and statistics; basics of machine learning. Fluency in Python; basic command of Linux.

Description

The course provides an introduction to key concepts, algorithms, and architectures for neural networks, with strong emphasis on Deep Learning and its application on computer vision / image processing. Topics include:

  • Deep neural network architectures

  • Optimization of deep networks

  • Convolutional neural networks and applications to image processing

  • Recurrent neural networks and transformers

  • Unsupervised and generative models

The course consists of weekly lectures, programming assignments (in Python, TensorFlow, Keras) and a final exam.

Course objectives

After this course, students are able to:

  • Describe and explain the key concepts of deep learning (CNNs, transformers, GANs, diffusion models, etcetera)

  • Apply deep learning algorithms to real-world problems in a group setting.

  • Create computer code that can train and apply deep neural networks.

  • Discriminate between deep learning algorithms and select which algorithm to use in which setting.

  • Evaluate the performance of deep learning models in real-world problems in a group setting.

Timetable

The most recent timetable can be found at the Computer Science (MSc) student website.

You will find the timetables for all courses and degree programmes of Leiden University in the tool MyTimetable (login). Any teaching activities that you have sucessfully registered for in MyStudyMap will automatically be displayed in MyTimeTable. Any timetables that you add manually, will be saved and automatically displayed the next time you sign in.

MyTimetable allows you to integrate your timetable with your calendar apps such as Outlook, Google Calendar, Apple Calendar and other calendar apps on your smartphone. Any timetable changes will be automatically synced with your calendar. If you wish, you can also receive an email notification of the change. You can turn notifications on in ‘Settings’ (after login).

For more information, watch the video or go the the 'help-page' in MyTimetable. Please note: Joint Degree students Leiden/Delft have to merge their two different timetables into one. This video explains how to do this.

Mode of instruction

  • Lectures

  • Computer Labs

  • Practical assignments (in a group setting)

Course load

Total hours of study 6 EC course: 168 hrs.

Assessment method

The final grade will be the weighted average of grades for:

  • programming assignments (60%)

  • exam (40%)

To pass the course, grades for both components should be at least 5.5. There is an opportunity to retake the exam. A retake of the programming assignments is available in the form of a single larger retake assignment.

The teacher will inform the students how the inspection of and follow-up discussion of the exams will take place.

Reading list

  • Understanding Deep Learning: https://github.com/udlbook/udlbook/releases/download/v2.04/UnderstandingDeepLearning_04_03_24_C.pdf

  • Dive into Deep Learning: https://d2l.ai/

Registration

From the academic year 2023-2024 on every student has to register for courses with the new enrollment tool MyStudyMap. There are two registration periods per year: registration for the fall semester opens in July and registration for the spring semester opens in December. Please see this page for more information.

Please note that it is compulsory to both preregister and confirm your participation for every exam and retake. Not being registered for a course means that you are not allowed to participate in the final exam of the course. Confirming your exam participation is possible until ten days before the exam.

Extensive FAQ's on MyStudymap can be found here.

Contact

Lecturer: dr. D. M. Pelt
Email: idl@liacs.leidenuniv.nl

Remarks

n/a