Förderjahr 2020 / Project Call #15 / ProjektID: 5171 / Projekt: OpenBioLink
Wissensgraphen bestehen aus vielen sogenannten Triplen, z.b.
John speaks English.
Dabei wird John als Head des Triples bezeichnet, speaks als Relation und English als Tail. Die Aufgabe einer Link Prediction besteht nun darin entweder eine Tail-Entität zu einer gegebenen Head-Entität und Relation (Head, Relation, ?), oder umgekehrt eine Head-Entität zu einer gegebenen Tail-Entität und Relation (?, Relation, Tail) basierend auf den vorhandenen Triplen eines Wissensgraphen vorherzusagen.
SAFRAN, kurz für “Scalable and fast non-redundant rule application” (englisch für “Skalierbare und schnelle nicht-redundante Regelanwendung”) ist ein Anwendungsframework für symbolische Regeln zur Vorhersage von Beziehungen zwischen Entitäten in einem Wissensgraph (Link prediction). Eine symbolische Regel bildet Konzepte aus dem Wissensgraphen ab und wird an dem Wissensgraphen angewandt um Vorhersagen zu erhalten.
speaks(X,Y) <---- lives(X,A), language(A,Y)
Beispiel einer symbolischen Regel. Großbuchstaben sind Variablen, wobei X bzw. Y instanziiert werden um Y bzw. X vorherzusagen.
Im Gegensatz zu den zahlreichen Ansätzen die auf neuronalen Netzen basierend hat Link Prediction mit symbolischen Regeln den Vorteil, dass Vorhersagen erklärt und nachvollzogen werden können. Um diese Erklärungen möglichst übersichtlich aufzubereiten, stellen wir erste Konzepte des OpenBioLink Explorer vor. Dieser ermöglicht dem Benutzer die Vorhersagen sowie die Regeln die zu der Vorhersage geführt haben zu analysieren um deren Praxistauglichkeit zu überprüfen.
Softwarearchitektur
Um eine hohe Usability des Explorers zu gewährleisten, haben wir uns nach einem längerem Entscheidungsfindungsprozess auf eine einfache, skalierbare Softwarearchitektur festgelegt. Wir haben uns für diese Architektur entschieden um einfache Benutzung, Performance und einfacheren Integration der bestehenden SAFRAN Implementierung zu gewährleisten.
Wahl der Architektur
In dieser Variante können die Explorer Web Applikation und die SAFRAN Software voneinander unabhängig ausgeführt werden. SAFRAN produziert anhand eines Datensatzes und eines Regelsatzes Vorhersagen für ein Set von vorab definierten Prediction Tasks (z.b. Test Set) und persistiert diese und deren Erklärungen in eine sqlite (https://www.sqlite.org) Datenbank. Der Benutzer öffnet die Datenbank in der Explorer Web Applikation, welche die Predictions und Erklärungen in der Datenbank visualisiert. Weiters könnte eine öffentliche Sammlung von Erklärungs-Dateien unterschiedlicher Datensätze, Hyperparameter, usw. geführt werden.
Vorteile:
- Unkomplizierte Implementierung
- Benutzerfreundlich
- Einfache Benutzung für unerfahrene User
- Performantes UI durch vorab berechnete Predictions und Erklärungen
Nachteile:
- Statisch: Erklärungen sind auf die Prediction Tasks beschränkt (meist Test Set), die zuvor mit SAFRAN in das Datenbank Objekt geschrieben wurden.
Bild 1: Grundlegende Softwarearchitektur. Der Explorer und SAFRAN Software sind entkoppelt und werden voneinander unabhängig verwendet.
Mockups
Folgende Mockups zeigen erste Skizzen der grafischen Benutzeroberfläche des Explorers und geben gleichzeitig einen Einblick in den typischen Workflow zur Visualisierung der Erklärung einer Vorhersage.
Auswahl der Datenbank-Datei
Der Benutzer wählt eine lokale sqlite Datenbank die mittels SAFRAN generiert wurde. Eine Möglichkeit zur Erweiterung wäre, ein öffentliches Repository zur Veröffentlichung von Erklärungs-Dateien anzubieten.
Suche nach Entität
Der Benutzer sucht und wählt eine Entität zur Vorhersage von verknüpften Entitäten. Hier werden nur Entitäten angezeigt, die in der vorab berechneten Datenbank vorhanden sind.
Übersicht Entität/Wahl von Relation
Der Benutzer erhält eine Übersicht der gewählten Entität mit Synonymen und kurzer Beschreibung. Der Benutzer kann weiters die Relation des Prediction Tasks wählen.
Übersicht Predictions
Nach der Wahl der Relation erhält der Benutzer eine Übersicht der vorhergesagten Entitäten und deren Konfidenzen zur vorhin gewählten Entität und Relation. Der Benutzer kann weiters eine Vorhersage auswählen um die Erklärung der Vorhersage einzusehen.
Übersicht Erklärung von Prediction
Nach Wahl einer vorhergesagten Entität erhält der Benutzer eine genaue Übersicht aller Regeln und deren individuelle Konfidenzen die zur Vorhersage der Entität beigetragen haben. In der Übersicht sind auch die Cluster ersichtlich die SAFRAN formt um den negativen Effekt von redundanten Regeln zu mindern.