Eingabe löschen

Kopfbereich

Hauptnavigation

School of Engineering

EU-Projekt INODE: Die richtigen Daten finden leicht gemacht

Um Informationen in riesigen Datenbanken zu finden, sind in der Regel Programmierkenntnisse notwendig. Das soll sich ändern. Die ZHAW School of Engineering 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 vom Institut für angewandte Informationstechnologie. 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. 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.

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. 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.

YouTube-Datenschutzhinweis

Dieses Video kommt von YouTube. Mit dem Abspielen kann YouTube Ihr Surf-Verhalten mitverfolgen.

«Suche ich nach dem Begriff ‚Golf‘, kann der Sport, das Auto oder gar der Golf von Mexiko gemeint sein.»

Kurt Stockinger, Projektleiter INODE

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 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.

Mit regelbasierten 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. 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 Datenbanksprache 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 Datenbanksystem 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. 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 Datenbanken – das reicht dann in der Praxis nicht aus.» Denn dort werden die Heuhaufen immer grösser.

Auf einen Blick

Koordination:

Projektpartner:

  • ATHENA Research (Griechenland)
  • Max Planck Institute (Deutschland)
  • Fraunhofer (Deutschland)
  • SIRIS Academic (Spanien)
  • French National Centre for Scientific Research (Frankreich)
  • Free University of Bozen-Bolzano (Italien)
  • SIB Swiss Institute of Bioinformatics (Schweiz)
  • Infili Technologies (Griechenland)

Finanzierung: Forschungsprogramm Horizon 2020 der Europäischen Union

Projektdauer: 2019-2022