- Profesor: Markus Joppich
- Profesor: Ralf Zimmer
Affective Computing - Empathic Artificial Intelligence
Im Rahmen dieses Praktikums sollen in Gruppen Experimente bzw. Untersuchungen aus dem Forschungsgebiet des Affective Computing durchgeführt werden. Dabei werden zunächst geeignete Experimente entworfen, in denen Testpersonen in bestimmte affektive bzw. emotionale Zustände versetzt und gleichzeitig relevante (Sensor-)Daten aufgezeichnet werden können. Anschließend werden die Experimente durchgeführt und die aufgezeichneten Daten mit Hilfe von Methoden aus den Gebieten Data Science und Machine Learning analysiert. Insofern erfolgreich Muster identifiziert werden können, soll zum Abschluss ein kleiner Demonstrator umgesetzt werden.
Dieses Praktikum wird in Zusammenarbeit mit Dr. Marco Maier https://www.marcotm.com als Lehrbeauftragtem an der LMU München durchgeführt. Dr. Marco Maier hat an der LMU am Institut für Informatik promoviert und ist aktuell CTO bei TAWNY (www.tawny.ai), einem der spannendsten Affective-Computing-Startups in Europa. Studenten erhalten in diesem Praktikum wertvolle Einblicke sowohl in das Forschungsgebiet als auch in den neuesten Stand der Technik in der Industrie.
Voraussetzungen: Kenntnisse bzw. mindestens ausgeprägtes Interesse an den Themen Artificial Intelligence, Machine Learning, etc.; Progammierkenntnise in Python vorteilhaft
- Profesor: Philipp Altmann
- Profesor: Marco Maier
Moderne Systeme agieren autonom: Sie treffen selbstständig Entscheidungen und passen Ihr Verhalten flexibel den aktuellen Umständen und Anforderungen an. In diesem Praktikum beschäftigen wir uns mit der Umsetzung solcher autonomer Systeme. Wir implementieren Algorithmen zur adaptiven Planung, Optimierung und Koordination sowie Methoden zur Evaluation und Analyse lernender oder heuristischer Systeme. Eine Auswahl der behandelten Themen lautet:
- Decision Making in Autonomous Systems
- Planning and Reinforcement Learning
- Simulation and Approximation
Benötigte Vorkenntnisse:
Programmierung mit Python. Praktische Erfahrung mit Machine Learning Bibliotheken (PyTorch o.ä.) sowie theoretische Vorkenntnisse über Machine Learning, Planning und Reinforcement Learning sind vorteilhaft.
Ablauf:
In den ersten fünf Wochen werden Mittwochs die theoretischen Grundlagen vermittelt mit begleitenden praktischen Übungsaufgaben. Die Projektphase startet in der sechsten Woche. Hier arbeiten die Studenten selbstständig in Gruppen an einem gemeinsamen Projekt.
- Profesor: Philipp Altmann
- Profesor: Jonas Nüßlein
- Profesor: Maximilian Zorn
- Profesor: Tanveer Hannan
- Profesor: Thomas Seidl
- Profesor: Gengyuan Zhang
The course is divided into two parts. In the first part of the course, participants will receive an introduction on modern cryptography, probabilistic proof systems, and pseudorandom generators. Following this, the project phase will commence, with students working in teams of 3. Each team is tasked with delivering a presentation on relevant research articles, implementing a cryptographic project, and taking part in a code review process.
Evaluation will be based on the research, the functionality and security of the application, the effective use of cryptographic concepts and probabilistic proof systems, the robustness of pseudorandomness implementations, and the clarity of documentation.
Participation is limited to 30 master students.
- Profesor: Jasmin Blanchette
- Profesor: Lydia Kondylidou
In
this practical course, we deal with the topic of deep clustering. This
term describes the combination of clustering with concepts from the
field of deep learning. Corresponding methods have become popular in
recent years and have achieved very good results on image and text data
sets.
Clustering describes the task of automatically dividing objects into
suitable groups, so-called clusters. Only the similarity between objects
is considered, which means that no amount of training data with known
labels is required. This is also referred to as unsupervised learning.
The
identification of clusters in high-dimensional data sets like images,
text, or videos can be very complex as we have to deal with the curse of
dimensionality, which describes the phenomenon that samples become more
and more similar with an increasing amount of dimensions. For this
reason, the clustering task is often accompanied by some kind of feature
reduction. Here, we can utilize linear transformations, e.g., PCA, or
non-linear transformations, e.g., autoencoders. Non-linear applications
are more flexible and, therefore, suitable for more complex clustering
tasks. In deep clustering, a deep learning-based representation learning
method is supplemented by a specific clustering loss. Such combinations
will be studied in the context of this practical.
In
the course of the practical, we will first introduce theoretical
foundations. Afterward, modern deep clustering algorithms will be
implemented and evaluated. Here, we will deal
intensively with relevant research publications. The practical assignments should be performed in small groups.
Prerequisites:
- Basic knowledge of deep learning (Autoencoders, GANs, ...)
- Programming knowledge: Python, PyTorch, Git
- Interest in scientific working
Helpful references:
- Deep Clustering Survey 1: https://arxiv.org/pdf/2210.04142.pdf
- Deep Clustering Survey 2: https://arxiv.org/pdf/2206.07579.pdf
- List of Deep Clustering Algorithms: https://github.com/zhoushengisnoob/DeepClustering
- Implementations of Deep Clustering Algorithms: https://github.com/collinleiber/ClustPy
- Profesor: Collin Leiber
- Profesor: Thomas Seidl
- Profesor: Sergej-Alexander Breiter
Time : TBD, nach Vereinbarung
Place: Akademiestr. 7, 1st floor
6 SWS
Language: English
Modern
Deep Learning has fundamentally changed Artificial Intelligence. Novel
applications as well as significant improvements to old problems
continue to appear at a staggering rate. Especially the areas of image
and video understanding, retrieval, and synthesis have seen tremendous
improvements and even the human baseline has been outperformed in
several difficult applications.
The
algorithms and the fundamental research in deep Machine Learning and
Computer Vision that are driving this revolution are improving at an
ever-increasing rate. The goal of this practical lab is, therefore, to
give students hands-on experience with the state-of-the-art in this
field of research. We will work on current problems in Computer Vision
and Machine Learning and build on current algorithms to practically
implement novel solutions. Consequently, the practical is also a good
opportunity to take a close look at this area of research and prepare
for a potential future final thesis.
Topics include but are not limited to:
* Image & video synthesis
* Visual superresolution and Image completion
* Artistic style transfer
* Interpretability of deep models
* Visual object classification, detection, tracking
* Self-supervised learning
* Metric and representation learning
* Modern deep learning approaches, such as transformers and self-attention, invertible neural networks, diffusion models etc.
- Profesor: Stefan Baumann
- Profesor: Ursula Fantauzzo
- Profesor: Olga Grebenkova
- Profesor: Felix Krause
- Profesor: Björn Ommer
- Profesor: Nick Stracke
Dieses Praktikum vermittelt die Fähigkeit, Anwedungsfälle aus den Bereichen der Optimierung un dem maschinellen Lernen für Quantencomputer zu modellieren und darüber hinaus einen Einstieg in die praktische Arbeit mit existierenden Quantencomputern. Dafür stehen im QAR-Lab derzeit vier Rechner zur Verfügung: Das IBM Q System Two, der IonQ Aria, der Fujitsu DAU und der D-Wave Advantage. In Kooperation mit namhaften Partnern aus der Industrie (BASF, BMW, SAP und Siemens) werden Aufgabenstellungen mit starker Relevanz für praktische Anwendungen vergeben. Bis zu 24 Studierende haben in Gruppen die Möglichkeit, je eine Aufgabenstellung auf verschiedenen Rechnern auszuführen und zu vergleichen. Das Praktikum schließt mit einer Präsentation der Ergebnisse vor unseren Industriepartnern ab.
Diese Veranstaltung findet in Kooperation mit dem BMWK geförderten Projekt QCHALLenge statt.
- Profesor: Michael Kölle
- Profesor: Daniëlle Schuman
- Profesor: Jonas Stein
- Profesor: Gabriel Marques Tavares
- Profesor: Thomas Seidl
Time: 12:00-16:00
Place: Oettingenstr. 67, Rooms TBA
4 SWS
Language: English
The Binary Analysis with AI Praktikum allows students to explore the fascinating intersection of binary analysis and artificial intelligence. This praktikum aims to provide a solid foundation in binary analysis and machine learning, which can be valuable for various applications in the field of cybersecurity.
Students will delve into binary code analysis and learn to extract relevant structures and features to apply modern machine learning techniques. The primary task of this praktikum is to identify binary functions across different compiler settings, enabling more robust analysis. To solve this problem, they will have developed their own machine learning-based binary code representations.
Two toolboxes will be shown: the binary analysis toolbox and the machine learning toolbox.
Binary Analysis tools:
- Basics of static and dynamic analysis for binary code
- Intermediate representations of assembly languages
- Dataflow analysis
- Tainting techniques
Machine Learning tools:
- Self-supervised learning tasks
- Natural Language Processing techniques applied to binary code
- Convolutional Networks
- Graph Neural Networks
- Transformers
- Profesor: Tristan Benoit
- Profesor: Johannes Kinder
Anmeldung
Die Anmeldung zu diesem Seminar erfolgt über die Zentralanmeldung für Masterpraktika, außer für Lehramtsstudierende (bitte Anmeldehinweisen unten folgen).
Beachten Sie die unten aufgelisteten Voraussetzungen und die Hinweise zum Zeitaufwand! Ohne Einsatz von 12-15 Stunden Zeit in jeder Semesterwoche ist die Teilnahme am Praktikum nicht möglich.
Inhalt
Ziel des Software-Entwicklungspraktikums ist das Erlernen von Methoden zur Entwicklung größerer Software-Systeme und deren praktische Anwendung. Es werden verschiedene Techniken und Werkzeuge vorgestellt und geübt, die bei der Entwicklung von mittleren und größeren Software-Projekten nützlich sind. Im Fokus stehen dabei
- Agiles Projektmanagement mit Scrum
- Design-Patterns und -Prinzipen
- Codequalität (readability, testability, changeability)
- Testen (Unit-Testing und Test-Driven Development)
- Tooling (Eclipse) und Refactoring
- Bug-Tracking und Task-Tracking mit Milestones und Kanban-Boards (GitLab)
- Versionsverwaltung, Buildprozess und Continuous Integration
Diese Techniken werden von den Teilnehmern bei der Durchführung eines kompletten Softwareprojekts geübt und angewendet. Dabei wird ein webbasiertes Multiplayer-Kartenspiel namens “The Bug is a Lie” implementiert.
Anrechnung
- als Praktikum zu fortgeschrittenen Themen der Informatik (INF-PfTI) im Master (s. Modulhandbuch 2.1 P 1, Seite 7)
- als vertiefendes Thema für Bachelor mit 6 ECTS (s. Modulhandbuch 2.1)
- als Praktikum zur planmäßigen Entwicklung eines Softwaresystems (Modul P15, ehemals “Praktische Programmierung”) mit 6 ECTS für Studierende der Lehramt Informatik - in diesem Fall melden Sie sich vor Ende der Bewerbungsfrist der Zentralanmeldung (31.03.2024) per Email an die Assistenten an. Geben Sie dabei unbedingt Ihre Campus-Adresse an und ob Sie die nötigen Voraussetzungen (s.u.) erfolgreich absolviert haben.
Ablauf und Termine
Das Praktikum besteht aus zwei Teilen: In den ersten Wochen findet ein Vorlesungsteil statt, in dem Sie eine Einführung in die im Praktikum verwendeten Methoden und Technologien bekommen und diese üben. Danach beginnt das eigentliche Praktikum, das in Teams von 5-6 Personen aufgeteilt stattfindet.
Im Praktikumsteil gibt es vier Sprints und wöchentlich zwei Treffen des Teams mit dem Betreuer (primär im Zeitraum von Montags 12-16 Uhr und Donnerstags 14-16 Uhr, nach Absprache auch zu anderen Zeiten), in denen Sprint Planning, Daily Standup, Sprint Review etc. stattfinden. Jedes dieser Treffen dauert maximal 2 Stunden. Das Praktikum endet mit einer Abschlusspräsentation.
Das Praktikum findet anfangs in Präsenz statt. In der Gruppenphase können die Teams entscheiden ob Meetings in präsenz oder online stattfinden.
Die Anwesenheit bei allen Terminen ist obligatorisch, da andernfalls ein Zusammenarbeiten im Team nicht möglich ist. Fehlzeiten sind mit (Arbeitnehmer-)Krankenschein zu belegen.
Der Gesamtzeitaufwand beträgt 180 Stunden. Da sämtlicher Zeitaufwand vor dem Ende der Vorlesungszeit anfällt (keine Klausur und dazugehörige Lernzeit) müssen Sie also 12-15 Stunden Zeit pro Woche aufwenden.
Voraussetzungen
Die Voraussetzung für die Teilnahme an diesem Praktikum ist die Beherrschung der Programmiersprache Java (und dementsprechend einer Entwicklungsumgebung für diese Sprache). Konkret bedeutet dies nicht nur das Verständnis der Syntax und Semantik von Java, sondern auch der Klassen des Java-SDK (insbes. Collections-Framework und Netzwerk-Funktionalität) und der Fähigkeit zur Einarbeitung in weitere Libraries. Vorkenntnisse der folgenden Veranstaltungen werden vorausgesetzt:
- Vorlesung “Softwaretechnik”
- Softwareentwicklungspraktikum (SEP)
Studierende, die die Prüfung zu Softwaretechnik nicht absolviert haben, können am SWEP trotzdem teilnehmen, wenn sie (a) die Inhalte von SWT kennen (laut eigener Bestätigung) und (b) ein Java-basiertes SEP absolviert haben (also z.B. nicht das Systempraktikum).
Hilfreich sind außerdem:
- Fähigkeit, im Team zu arbeiten (mit git und GitLab)
- Erweiterte IDE-Kenntnisse
- Web-basierte Entwicklung (html, css); Wicket; Vaadin; Java Servlets; Ant; SQL; JDBC; JUnit; Mockito
Entsprechende Vorkenntnisse/besuchte Vorlesungen sollten bei der Zentralanmeldung angegeben werden und werden speziell berücksichtigt!
Sprache
Das Praktikum wird auf Deutsch und Englisch angeboten (je nach Team). Die jeweilige Sprache muss in den Team-Treffen mit dem Betreuer (Daily Standups, Sprint Planning, etc.) und in der Entwicklung (Produkt-GUI, Code-Kommentare, Issues, etc.) benutzt werden. Die Sprache geht jedoch nicht in die Bewertung ein.
Da die Sprache der Entwicklungsteams in vielen Firmen heutzutage Englisch ist, können Sie sich so darauf vorbereiten und z.B. das Diskutieren auf Englisch üben.
- Profesor: Dirk Beyer
- Profesor: Po-Chun Chien
- Profesor: Matthias Kettl
- Profesor: Marian Lingsch Rosenfeld
- Profesor: Philipp Wendler
- Profesor: Timo Löhr
- Profesor: Yusuf Sale
- Profesor: Karl Fürlinger
- Profesor: Dieter Kranzlmüller
- Profesor: Elisabeth Mayer
- Profesor: Thomas Odaker
Time and place: TBD
Nach Vereinbarung
6 SWS
Language: English
- Profesor: Stefan Baumann
- Profesor: Ursula Fantauzzo
- Profesor: Olga Grebenkova
- Profesor: Felix Krause
- Profesor: Björn Ommer