Data Science: Die richtigen Daten finden leicht gemacht

03.12.2019
4/2019

Um Informationen in riesigen Datenbanken zu finden, sind in der Regel Programmierkenntnisse notwendig. Das soll sich ändern. ZHAW-Forscher Kurt Stockinger entwickelt im Rahmen eines EU-Projekts eine intuitive Suchfunktion.

Es geht um die sprichwörtliche Suche nach der Nadel im Heuhaufen – und dieser Heuhaufen ist unvorstellbar gross. «Wir leben im Zeitalter von Big Data. Wir müssen deshalb Lösungen entwickeln, die mit riesigen Datenbanken klarkommen», sagt ZHAW-Forscher Kurt Stockinger. Als Data Scientist beschäftigt er sich schwerpunktmässig mit der Frage, wie Daten strukturiert und effizient innert kürzester Zeit durchsucht werden können.

«Wenn die Daten gut strukturiert sind und ich sie mit der Datenbanksprache SQL selektiere, kann ich die Nadel im Heuhaufen sehr schnell ausfindig machen. Dazu benötigt man aber entsprechende Informatikkenntnisse.»

Kurt Stockinger

Erfasst man Daten als numerische Werte und sortiert sie in einem Index, sind sie viel schneller zu finden. «Wenn die Daten gut strukturiert sind und ich sie mit der Datenbanksprache SQL selektiere, kann ich die Nadel im Heuhaufen sehr schnell ausfindig machen», erklärt der Forscher. «Dazu benötigt man aber entsprechende Informatikkenntnisse.» Und wer diese nicht hat, dem bleiben die Datenschätze verborgen.

INODE – ein Horizon 2020-Projekt der EU

Stockinger und sein Team entwickeln nun eine intuitive Suchfunktion, bei der die Eingabe in natürlicher Sprache erfolgt. Das gewünschte Suchresultat erzielen die User ganz ohne Informatikkenntnisse. So lautet jedenfalls das Ziel des Projekts «INODE – Intelligent Open Data Exploration», das vom EU-Forschungsprogramm Horizon 2020 mit knapp 6 Millionen Euro gefördert wird. Unter Leitung der ZHAW School of Engineering entwickeln insgesamt neun Partnerinstitutionen gemeinsam eine für unterschiedliche Anwendungen einsetzbare Suchmaschine.

Nutzen für Ärzte oder Astrophysiker

So könnten beispielsweise Ärzte in der Krebsforschung bestimmte Bioinformatikdaten finden, die Einfluss auf den Erfolg von Therapien haben. Oder Astrophysiker könnten bestimmte Positionsverschiebungen von Sternen ausfindig machen. Weder die Ärzte noch die Astrophysiker müssten dazu eine Datenbanksprache anwenden.

Aus Daten automatisch dazulernen

In einem ersten Schritt muss ein Programm zunächst die natürliche Sprache – beispielsweise Englisch – in die erforderliche Datenbanksprache übersetzen. Die Übersetzung muss dabei nicht nur korrekt, sondern auch möglichst schnell erfolgen, wie man das bei jeder Suchanfrage erwartet. Somit müssen zwei Probleme gelöst werden, die teilweise widersprüchliche Zielsetzungen haben. «Wenn ich eine Suchanfrage von natürlicher Sprache in SQL übersetzen möchte, darf das nicht drei Jahre dauern», sagt Stockinger. «Es gelten die gleichen Ansprüche wie bei der Google-­Suche: Können wir nicht in Sekundenbruchteilen liefern, ist die Anwendung in der Praxis nicht brauchbar.» Sprache sei zudem in vielen Fällen mehrdeutig zu interpretieren, so Stockinger weiter: «Suche ich nach dem Begriff ‹Golf›, kann der Sport, das Auto oder gar der Golf von Mexiko gemeint sein.» Wird mit mehreren Begriffen gleichzeitig gesucht, steigen die Deutungsmöglichkeiten sogar noch.

«Die Herausforderung bei dieser Methode ist, dass man viele Trainingsdaten braucht. Das ist aber in unserem Fall nicht so einfach, weil es diese Daten teilweise noch gar nicht gibt.»

Kurt Stockinger

Mit regel­basierten Verfahren, wo ein Algorithmus sein Ziel nach expliziten codierten Regeln verfolgt, stösst Stockinger hier an Grenzen. Stattdessen setzen die Forschenden auf Methoden aus dem Machine Learning wie etwa spezielle neuronale Netzwerke namens «Transformers»: Der Algorithmus erreicht sein Ziel auf der Basis von aus Daten automatisch gelerntem Wissen. «Die Herausforderung bei dieser Methode ist, dass man viele Trainingsdaten braucht. Das ist aber in unserem Fall nicht so einfach, weil es diese Daten teilweise noch gar nicht gibt», erklärt Stockinger.

Ein universell einsetzbares Werkzeug

Mit natürlichen Sprachen sei das leichter. «Wenn ich automatisch von Deutsch nach Englisch übersetzen möchte, kann ich den Computer mit Tausenden Büchern als Daten füttern. Mittels Machine Learning erkennt er dann gängige Muster und kann deshalb nicht nur Wort für Wort, sondern ganze Sätze fehlerfrei übersetzen.» Die Trainingsdaten aus der Daten­banksprache SQL fehlen hingegen noch häufig. Dazu kommt, dass Datenbanken ganz unterschiedlich strukturiert sein können. «Nehmen wir also die Trainingsdaten aus einer Datenbank, so funktioniert der Algorithmus am Ende auch nur für diese bestimmte Datenbank», so der Forscher. «Aber wir wollen ja ein universell einsetzbares Werkzeug schaffen.»

Selber Trainingsdaten generieren

Wie gehen die Forschenden nun vor, wenn es eben noch nicht genügend Trainingsdaten gibt? «Wir verfolgen eine Art Hybridansatz», erklärt Kurt Stockinger. «Solange wir noch keine Trainingsdaten haben, gehen wir regelbasiert vor. Das heisst, das natürliche Wort wird automatisch in einen bestimmten Code übersetzt, und danach wird anhand bestimmter Regeln die Datenbankabfrage als SQL-Anweisung erzeugt.» Diese Suchabfrage protokolliert das Daten­banksystem automatisch. Auf diese Weise werden Trainingsdaten generiert. Je mehr davon entstehen, desto besser kann das System dazulernen. Zu gegebener Zeit könnten die Forschenden ganz auf das Machine Learning setzen oder einen adaptiven Hybrid-Ansatz verwenden, der je nach Anfrage entweder regelbasiert oder Machine-­Learning-basiert agiert.

«Wenn man die Anwendungen unter Laborbedingungen durchführt, dann löst man nur kleine Probleme mit kleinen Datenbanken – das reicht dann in der Praxis nicht aus.»

Kurt Stockinger

Wichtig ist laut Stockinger, von Anfang an mit diesen realen, grossen Datenbanken zu arbeiten. «Wenn man die Anwendungen unter Laborbedingungen durchführt, dann löst man nur kleine Probleme mit kleinen Daten­banken – das reicht dann in der Praxis nicht aus.» Denn dort werden die Heuhaufen immer grösser.

0 Kommentare

Sei der Erste der kommentiert!

Kommentar ist erforderlich!
Name ist erforderlich!
Gültige E-Mail ist erforderlich!
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.