de

Welcome Gast


  • Login
Full load

Winter Term 2022/2023
Projekt Generierung von realistischen Trainings- und Testdaten für Datenintegrationsalgorithmen
General Information
Course number 64-191
Course type Project
Lecturer Dr. Fabian Panse
Time Donnerstag 14-19 Uhr
Recurrence wöchentlich
Qualifications Vorkenntnisse im Bereich des Maschinellen Lernens oder der Entwicklung von Webanwendungen sind hilfreich, aber keine Voraussetzung für eine erfolgreiche Teilnahme.
Topic
Durch die immer weiter voranschreitende Digitalisierung vieler Lebensbereiche gibt es immer mehr Datenquellen, deren Integration zu neuen Erkenntnisgewinnen führen kann. Eine solche Integration umfasst viele Teilschritte, die vom Abgleich mehrerer Datenschemata über die Datenreinigung bis hin zum Erkennen und Entfernen von Duplikaten (Tupel, welche dieselbe Realwelt-Entität beschreiben) reichen. Um qualitativ hochwertige Integrationsprozesse zu ermöglichen, Bedarf es umfangreicher Evaluierungen verschiedenster Algorithmen. Eine solche Evaluierung erfordert wiederum einen Testdatensatz, der eine Ground Truth beinhaltet, die in vielen Anwendungsfällen nur mit großem Aufwand zu erlangen ist. Privacy-Aspekte führen zudem dazu, dass viele Daten für solche Evaluierungen nicht verwendet werden dürfen. Zu guter Letzt liegt vielen Algorithmen ein supervised Machine Learning-Ansatz zu Grunde, so dass gelabelte Daten nicht nur zur Qualitätsbewertung, sondern auch zum Trainieren der einzelnen Algorithmen benötigt werden. Die Qualität des erlernten Modells hängt dabei maßgeblich von der Qualität und Eignung der zum Training verwendeten Daten ab. Die Generierung realistischer geeigneter Trainings- und Testdaten ist daher eine wichtige Aufgabe in Industrie und Forschung.

In diesem Projekt sollen in Gruppen verschiedene Ansätze zur Erstellung realistischer Trainings- und Testdatensätze für Datenintegrationsalgorithmen erarbeitet werden. Mögliche Themen wären:
  • Entwicklung einer gamifizierten Webapplikation, mit deren Hilfe sich gelabelte Daten erheben lassen. Dies könnte z.B. ein Quiz sein, bei dem Nutzer Fragen beantworten oder Zusammenhänge zwischen Tupeln zuordnen müssen.
  • Entwicklung eines Verfahrens zur Synthese künstlicher Daten. Für einen gegebenen Anwendungsdatensatz soll hier ein strukturell und statistisch möglichst ähnlicher Datensatz erzeugt werden, der einerseits keine Rückschlüsse auf sensible Daten zulässt, andererseits aber geeignet ist, Algorithmen für den realen Datensatz zu trainieren bzw. evaluieren. Als Methoden können hier sowohl regelbasierte Ansätze als auch Methoden des Deep Learning (z.B. Generative Adversarial Networks) zum Einsatz kommen.
  • Entwicklung eines Verfahrens zum Einfügen von Duplikaten und Fehlern in einen gegebenen Datensatz. Das Ziel ist hierbei einerseits möglichst flexibel konfigurierbar zu sein und andererseits möglichst realistische Fehlermuster zu ermöglichen. Hier können ebenfalls regelbasierte Ansätze und Machine Learning-Methoden zum Einsatz kommen.
  • Entwicklung eines Verfahrens zum Finden eines repräsentativen Testdatensatzes für einen gegebenen Anwendungsfall. Als Eingabe sind hier ein ungelabelter Anwendungsdatensatz und ein Repository an gelabelten Testdatensätzen gegeben. Das Ziel ist es, einen Testdatensatz aus dem Repository auszuwählen, der dem Anwendungsdatensatz möglichst ähnlich ist, so dass sich die mit dem Testdatensatz erzielten Ergebnisse auf den Anwendungsdatensatz übertragen lassen.
  • Entwicklung von Data Profiling-Algorithmen, welche Attributdomänen, Abhängigkeiten (z.B. funktionale Abhängigkeiten) oder Constraints (z.B. Unique) aus einem Datensatz extrahieren. Diese helfen uns regelbasierte Verfahren zur Datensynthese zu erstellen, aber auch die Ähnlichkeit zweier Datensätze zu bestimmen (z.B. um die Eignung eines synthetisierten Datensatzes zu bewerten).
  • Entwicklung von Error Profiling-Algorithmen, welche Fehlermuster aus einem Datensatz extrahieren und uns so einen Vergleich zwischen realen verschmutzten Daten und künstlich verschmutzten Daten ermöglichen.
Procedure
Das Projekt wird in Gruppen durchgeführt. Zu Beginn werden die Teilnehmer durch ein bis zwei Vorträge der Kursleiter in die Thematik der Datenintegration und der Generierung gelabelter Datensätze eingeführt. Anschließend macht sich jede Gruppe selbstständig mit der - für das von ihnen gewählte Projektvorhaben - notwendige Literatur vertraut, entwickelt einen neuartigen Ansatz zur Realisierung ihres Vorhabens und implementiert diesen in einem Prototypen, dessen Funktionsweise in einer Abschlusspräsentation demonstriert werden soll. Zusätzlich schreibt jede Gruppe einen Projektbericht, der die wichtigsten Informationen ihres Projektvorhabens zusammenfasst und die erzielten Ergebnisse beschreibt, interpretiert und diskutiert. Je nach Bedarf finden gruppenübergreifende Treffen mit den Kursleitern wöchentlich oder zweiwöchentlich statt. In diesen Treffen skizziert jede Gruppe jeweils kurz den aktuellen Stand ihres Vorhabens, bevor allgemeine Probleme diskutiert werden können. Unter Umständen ist es hilfreich Zwischenpräsentationen durchzuführen.
Learning target
Erwerb eines fundierten Überblicks über das Training und die Evaluierung von Datenintegrationsalgorithmen, sowie diverser Möglichkeiten zur Erzeugung und Bewertung geeigneter Trainings- und Testdaten.
  • Aktuelle Forschung verstehen und in die Praxis überführen
  • Algorithmen zur Datenintegration
  • Methoden zur Generierung und Auswertung von Trainings- und Testdaten
  • Software-Entwicklung
  • Arbeit im Team
  • Einsatz von Projektmanagement- und Kollaborationstools