Themen für Abschlussarbeiten
Voraussetzungen
Abschlussarbeiten in unserer Arbeitsgruppe profitieren in der Regel von guten Kenntnissen in:
- Mathematik und Statistik, insbesondere Wahrscheinlichkeitsrechnung
- Gute Programmierkenntnisse in Java, Rust, Python
- Data Mining und Künstliche Intelligenz
Im Rahmen einer Bachelorarbeit werden Sie typischweise:
- Vertiefende Literatur lesen
- Grundlagen und Methode in eigenen Worten wiedergeben und die Herleitung nachvollziehen
- Methoden aus der Literatur selbst implementieren
- Experimentell die neue Methode mit Referenzmethoden vergleichen
In einer Masterarbeit erwarten wir typischerweise, dass Sie über den "Stand der Technik" hinausgehen, und beispielsweise eine neue Erweiterung einer bestehenden Methode umsetzen und genauer untersuchen.
Wir bieten in der Regel keine reinen Literaturthemen an, und selten rein theoretische Arbeiten!
Wir haben eine neue Vorlage für Abschlussarbeiten
Offene Themen
Aufgrund von begrenzter Betreuungskapazität sind aktuell nur wenige Themen ausgeschrieben. Individuelle Themen sind stets möglich.
- Gaussian Mixture-Modeling in Rust
In dieser Bachelorarbeit soll GMM in Rust implementiert werden, wobei besonderer Augenmerk auf die Modulare Erweiterbarkeit gelegt werden soll. Dabei sollen unterschiedliche Modelle (Elliptisch, Sphärisch) unterstützt werden, MAP-Regularisierung. Als Vorlage kann dabei unsere bestehende Java-Implementierung dienen, mit der Rust-Implementierung möchten wir hier die Laufzeit steigern. Als Erweiterung ist es bspw. Möglich auch BETULA zu integrieren. Rust-Vorkenntnisse / -Interesse sind für diese Aufgabenstellung notwendig! - Frequent Sequence Mining
In einer Reihe von Bachelorarbeiten in diesem Bereich sollen Algorithmen aus der Literatur für Frequent Sequence Mining in Java umgesetzt und vergleichend evaluiert werden, basierend auf den bestehenden Implementierungen im Open-Source-Framework ELKI.- Agrawal, R. and Srikant, R. 1995. Mining sequential patterns. Proc. 11th int. Conf. On data engineering (1995), 3–14.
- Srikant, R. and Agrawal, R. 1996. Mining sequential patterns: Generalizations and performance improvements. Proc. 5th international conference on extending database technology (EDBT) (1996), 3–17.
- Han, J., Pei, J., Mortazavi-Asl, B., Chen, Q., Dayal, U. and Hsu, M. 2000. FreeSpan: Frequent pattern-projected sequential pattern mining. KDD (2000), 355–359.
- Pei, J., Han, J., Mortazavi-Asl, B., Pinto, H., Chen, Q., Dayal, U. and Hsu, M. 2001. PrefixSpan: Mining sequential patterns by prefix-projected growth. ICDE (2001), 215–224.
- Zaki, M.J. 2001. SPADE: An efficient algorithm for mining frequent sequences. Machine Learning. 42, 1/2 (2001), 31–60. DOI:10.1023/A:1007652502315
- Ayres, J., Flannick, J., Gehrke, J. and Yiu, T. 2002. Sequential PAttern mining using a bitmap representation. KDD (2002), 429–435.
- Fournier-Viger, P., Gomariz, A., Campos, M. and Thomas, R. 2014. Fast vertical mining of sequential patterns using co-occurrence information. Proc. 18th pacific-asia conference on advances in knowledge discovery and data mining PAKDD (2014), 40–52.
- DenClue clustering
In dieser Bachelorarbeit soll der DenClue Clusteringalgorithmus in Java umgesetzt und verglichen werden, insbesondere mit anderen dichtebasierten Clustering-Algorithmen im Open-Source-Framework ELKI.- Hinneburg, A., Keim D. A.: An Efficient Approach to Clustering in Large Multimedia Databases with Noise. KDD 1998: 58-65
- Hinneburg, A. Keim, D. A.: A General Approach to Clustering in Large Databases with Noise. Knowl. Inf. Syst. 5(4): 387-415 (2003)
- Hinneburg, A., & Gabriel, H. H. (2007, September). Denclue 2.0: Fast clustering based on kernel density estimation. In International symposium on intelligent data analysis (pp. 70-80). Berlin, Heidelberg: Springer Berlin Heidelberg.
- Metric Index (M-Index)
In dieser Bachelorarbeit soll der Suchindex M-Index in Java implementiert und mit bestehenden anderen Index-Strukturen (bspw. iDistance, M-tree) im Open-Source-Framework ELKI verglichen werden.- Novak, D., & Batko, M. (2009, August). Metric index: An efficient and scalable solution for similarity search. In 2009 Second international workshop on similarity search and applications (pp. 65-73). IEEE.
- Python wrapper für ELKI
Um es einfacher zu machen, die Algorithmen von ELKI mit Python-Implementierungen zu vergleichen, soll ein Wrapper implementiert werden der es einfacher macht, diese aus Java aufzurufen. Dazu soll python-javabridge eingesetzt werden, um möglichst ohne unnötige Kopien, Serialisierungen und Deserialisierungen die Daten aus Python in Java zu übertragen. Durch Introspection sollen die APIs in Python möglichst automatisch generiert werden, so dass für neue Algorithmen möglichst keine ständigen Anpassungen notwendig werden. (Bachelorarbeit) - R wrapper für ELKI
Um die Algorithmen von ELKI einfacher aus R aufrufen zu können soll basierend auf rJava eine Brücke zwischen R und Java geschaffen werden, um einfach und effizient diese Funktionalitäten einem breiteren Nutzerkreis zugänglich zu machen. Mit Hilfe von Introspection soll dabei der Wrapper automatisch generiert werden, und nicht für jeden Algorithmus manuell angepasst werden. Dabei soll die Parameterisierung möglichst im Stile anderer R-Pakete möglich sein. (Bachelorarbeit) - Incremental Nearest Neighbor Search in Rust
In dieser Bachelorarbeit soll eine effiziente inkrementelle Ähnlichkeitssuche in Rust implementiert werden, basierend auf den Java-Implementierungen in ELKI. Zum Vergleich zur Java-Implementierung soll auch ein Clustering-Algorithmus umgesetzt werden, der diese neue API nutzt. Die Verwendung einer Programmiersprache wie Rust soll hier zu weiteren Geschwindigkeitssteigerungen führen.- Schubert, E. (2022, September). Automatic indexing for similarity search in ELKI. In International Conference on Similarity Search and Applications (pp. 205-213).
- Schubert, E. (2024, October). Hierarchical Clustering Without Pairwise Distances by Incremental Similarity Search. In International Conference on Similarity Search and Applications (pp. 238-252).
- Entwicklung eines parallelisierten Aufbaus für HNSW
In this Master thesis topic, you are to improve vector search. Hierarchical Navigable Small World (HNSW) graphs are one of the best performing indices for approximate nearest neighbor search. Due to finding nearest neighbors using the navigation over a hierarchy of graphs of increasing size, they achieve logarithmic query times even on very high-dimensional data. Their main bottleneck to this day remains the very costly build time, since they are typically built incrementally by inserting points in sequence. This thesis topic is about developing an efficiently parallel construction method for the hierarchy of HNSW graphs, based on a black box generator for individual hierarchy layers and a selection heuristic for more abstract hierarchy layers. The NNDescent algorithm is supposed to act as a placeholder for arbitrary black box layer creation methods. The thesis will require skills in efficient programming, primarily in the Rust programming language.- Malkov, and Yashunin: Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs (https://doi.org/10.1109/TPAMI.2018.2889473)
- Dong, Charikar, and Li: Efficient k-nearest neighbor graph construction for generic similarity measures (https://doi.org/10.1145/1963405.1963487)
- Kollisionserkennung in einem Voxel-basierten Spiel In this Bachelor thesis, your objective is to improve the collision detection in the open-source voxel-based sandbox game "Minetest" written in C++. The existing collision detection code is O(N³) for diagonal movement for a travel distance of N, because it materializes all the boxes in a box around the movement. In this thesis, your task is to improve the collision detection in two ways: (1) instead of linear movement, simulate parabolic movement (with acceleration, e.g., gravity), and (2) perform this collision detection with an incremental approach that only accesses the necessary collision boxes, based on ideas from Bresenham's line drawing algorithm and related raycasting algorithms.
Frühere Themen
Als Orientierung Beispiele früherer Themen:
Bachelor Informatik
- Clustering with von-Mises-Fischer Distribution
- Choosing the number of Gaussian clusters
- Clustering with k-nearest neighbor consistency
- Accelerating Spherical k-means in Rust
- Textbasierte Empfehlungssysteme
- Erkennung von beleidigender Sprache in Twitter unter Verwendung von Maschinellem Lernen
- Accelerated Spherical k-means Clustering
- Analyse Alternativer Algorithmen für k-Means-Clustering
- Analysis and Evaluation of Approximate Nearest Neighbor Search using Hierarchical Navigable Small World Graphs
- Analysis and Evaluation of AnyDBC Clustering with Alternative Heuristics
- Compact Circular Fingerprints for Chemical Structures using Bloom Filters
- Entwicklung eines Greedy-Algorithmus zur Generierung elektrischer Niederspannungsnetze auf Basis öffentlich verfügbarer Daten
- Erstellung und Auswertung von Song-Embeddings mittels Word2Vec
- k-Means-Clustering mit k-d-Bäumen
Master Informatik, Master Data Science
- Vantage-Point Tree to HNSW: Fast Index Construction for Approximate Nearest Neighbor Search in High-Dimensional Data
- SQL Code Embeddings - Integrating Syntactical Information into Transformer Models
- Entwicklung und Evaluation schrankenbasierter DBSCAN Varianten
- On-Device Robot Localization Based on Representation Learning and a Feature-Rich Industrial Floor
- Beschleunigung von DBSCAN mithilfe der Dreiecksungleichung
- Fast Latent Dirichlet Allocation with Background Topics
- Evaluation of Feature Selection from Small Molecule Fingerprints by Means of Machine Learning
- Abstractive Text Summarization using a Reinforced Variational Autoencoder
- Efficient Approximate k-Nearest-Neighbor-Search in Large Graph Databases
- Automated Flexibility Coordination in Smart Grids Based on Neural Networks
- Leave-One-Out Optimierung von Support Vector Machines zur Ausreißererkennung
Bachelor Wirtschaftsinformatik
- noch keine Beispiele
Industriethemen
Ich verlange dass die Industriepartner vorab den Kontakt herstellen, bevor sie ein "Thema" einem Studierenden versprechen, da viele der Themen m.E. nicht den Ansprüchen der Prüfungsordnung genügen. Ein NDA muss vorab mit der Rechtsabteilung geprüft werden, dazu muss ausreichend Zeit vor dem Beginn der Arbeit eingeplant werden, deswegen muss das vorab geschehen. Zudem habe ich leider schlechte Erfahrungen mit der Betreuung durch Industriepartner. Idealerweise ist hat Betreuer an der Universität promoviert und dort bereits Abschlussarbeiten betreut. Bitten Sie ihren Betreuer, zuerst selbst Kontakt aufzunehmen um das Thema und die Betreuung festzulegen.