Data Science Workflow and Applications
Students enrolled at a Berlin University can register for the Course on the Course Moodle Website.
![]() | ![]() |
This course covers end-to-end lifecycle of a Data Science project. The course will be structured in two parts: the first part will cover more general data science workflow topics, teaching you about modern MLOps practices. The second part will be focused on recommender systems, where you will learn about different approaches to building recommendation engines. For your final project, you will be expected to apply the concepts and tools covered in the lectures to build a recommender system for a dataset of your choice. For more information please visit the Moodle course.
⚠️ Please note we are currently reworking the lecture and still preparing the course materials. You will find this message wherever the course materials are being updated / not finalized. ⚠️
Course Structure¶
Part 1 of the lecture Data Science Workflow and Applications will include 5 sessions covering the following topics:
| Date | Topics |
|---|---|
| 09.04.2026 | Data Acquisition and Labeling |
| 16.04.2026 | Kubernetes Cluster and Experiments Logging |
| 23.04.2026 | Data Exploration, Preprocessing & Quality |
| 30.04.2026 | Model Training and Evaluation |
| 07.05.2026 | Dashboards and Demos |
Starting from 14.05.2026, lecturer Leonhard Liu will take over, covering topics around Recommender Systems.
| Date | Topics |
|---|---|
| 14.05.2026 | ⏳The Recommendation Problem |
| 21.05.2026 | ⏳Content-Based Methods |
| 28.05.2026 | ⏳Matrix Factorization & AutoRec |
| 04.06.2026 | ⏳Neural Embeddings & Semantic Search |
| 11.06.2026 | ⏳Two-Tower, Evaluation & Retrieval |
Python Environment¶
We will be using Jupyter Notebooks for the lecture material and you can download the notebooks and artifacts for each session from the Download section (see Download widget/button at the top). To run the notebooks, you will need to set up a Python environment with the required dependencies.
The dependencies and the python version are specified in the pyproject.toml file, that can be downloaded from the Download section as well. Using uv you can setup the environment as follows:
Create a new virtual environment:
uv venvInstall the dependencies:
uv sync

