Teaching
I try to combine theory and practice in every course. Students learn the core concepts and then get their hands dirty with code, data, and real-world problems.
Current Courses
A tour through modern NLP and speech technologies. The course starts with the basics of text processing and word representations, then explores how the transformer architecture and self-supervised learning have changed the field. The second half focuses on speech: how models learn from raw audio and how the same ideas that power large language models also apply to sound. Students leave knowing how to read recent papers and apply state-of-the-art models to real problems.
Covers the fundamental concepts of machine learning and deep learning, from decision theory to neural networks. Mix of theoretical and practical activities, with a final project where students design, implement, and evaluate a complete ML pipeline.
Advanced topics in cybersecurity and the use of machine learning for security applications. Provides students with the knowledge to design secure systems and leverage ML for security.
Focused on deep learning architectures for speech processing and computer vision. Covers CNNs, transformers, and attention mechanisms with hands-on projects using PyTorch and HuggingFace.
Past Courses
Teaching assistant for in-class and lab practices. Covers text processing fundamentals, vector spaces, deep learning architectures (ELMo, BERT), and applied NLP tasks.
PhD course covering fundamental concepts of text mining and NLP techniques. Contributed topics on deep learning architectures for NLP and hands-on Python tutorials.
Part of a 2nd level specializing master. In-class practices on NoSQL concepts and search engines.
Introduction to databases for undergraduate students, covering relational algebra, SQL, NoSQL, and dashboard creation.