About this course

How do machines hold conversations in human language? In this course, we explore this question through natural language processing (NLP) and develop an understanding of how large language models work. Students gain both theoretical foundations and practical experience with state-of-the-art language technologies that are transforming industries worldwide. We cover the fundamentals of text processing, embeddings, transformers, prompt engineering, and retrieval-augmented generation (RAG) to examine how machines process, generate, and reason with language, as well as to reflect on the ethical considerations of generative AI. Through hands-on exercises and modern computational tools, students build applications such as chatbots, semantic search engines, document analyzers, and AI assistants.

Syllabus

Summer 2027

Go to syllabus

Prerequisites

One year of computer science at university level. One of the computer science courses should be in data structures or algorithms or statistics. Knowledge of at least one object-oriented programming language (e.g. Java, Python)

Course note

This course will first run in summer 2027.

Faculty

Iraklis Moutidis

Ph.D. in Computer Science (Natural Language Processing and Social Network Analysis), University of Exeter (2023). Currently working on Natural Language and Machine Learning projects as a Freelance Data Scientist (2021–present). Previously built engineering-related applications as Software Developer at Moduleering CAE Greece (2017) and implemented simulations for the 100Gbits/sec technology hardware as a Summer Student at CERN (2016). With DIS since 2025.

Looking for some advice?
We’ll support you every step of the way.