Jump to content

DAT255 Deep Learning Engineering

Course description for academic year 2024/2025

Contents and structure

Deep learning is a sub-field of machine learning and is what both launched and propels the recent surge of interest in artificial intelligence. The course focuses on deep learning and its applications in computer vision, natural language processing, and recommendation systems. The methods, tools, and techniques covered by the course are widely applicable, and the course aims to be instructive to anyone wanting to apply deep learning to any task.

In addition to a solid understanding of deep learning, the course will provide you with hands-on experience designing and deploying deep learning solutions for practical, real-life problems using state-of-the-art techniques and software frameworks from machine learning, machine learning engineering, and deep learning. You will experience first-hand how deep learning engineering relates to the broader discipline of software engineering.

Learning Outcome


  • Able to explain fundamental concepts, models, and algorithms in deep learning.
  • Able to explain how deep learning can be used to solve practical problems from a variety of domains.
  • Able to explain the limitations and challenges of using deep learning for real-world tasks.
  • An understanding of the difference between deep learning as a discipline in itself, and deep learning engineering. This includes how deep learning relates to software engineering more broadly and an understanding of machine learning engineering and MLOps.
  • Possess a solid understanding of the main drivers of progress in artificial intelligence.


  • Able to solve concrete, practical problems from computer vision, natural language processing, and recommender systems using deep learning.
  • Has experience with model deployment, both local and cloud-based.
  • Is an effective user of large language models and other generative AI tools.
  • Can develop and use modern, state-of-the-art software tools and frameworks for data analysis, machine learning, and visualization.

General competence

  • Able to formulate and complete deep learning-based projects.
  • Able to present deep learning projects through oral presentations and clear written reports, including well-structured code.

Entry requirements


Recommended previous knowledge

The student should have programming skills at the bachelor level in a computer science or computer engineering program. Experience with Python will be a significant advantage. Exposure to core parts of software engineering will be advantageous. Several online resources for acquiring the recommended background knowledge will be provided at the beginning of the course.

You should have completed at least one course in machine learning at the level of DAT158 (HVL) or INF264 (UiB).

Teaching methods

DAT255 is partly a "flipped classroom" course with a significant online, on-demand component. The classroom lectures will expand on the topics covered by the online course material and explore other related material. There will also be hands-on labs where you will work on topics covered by the lectures and your course project, assisted by the lecturer and fellow students.

In Førde, the course will be given as a fully digital offering.

Compulsory learning activities

The students will complete a deep learning project on a chosen topic during the course.


The exam has two parts:

  1. A group project report that counts for 50% of the final grade
  2. Written school exam, 2 hours, that counts for 50% of the final grade.

Both parts of the exam must result in a passing grade to get a final grade in the course. If a student fails one of the parts, the part can be retaken separately.

Grading scale is A-F where F is fail.

Examination support material


More about examination support material