Kommentar von Alicia Frame, Neo4j Was Data Scientists zur Analyse vernetzter Daten brauchen

Von Alicia Frame

Der Einsatz von Graphtechnologie in der Datenanalyse wächst. Eine wichtige Rolle übernimmt dabei Graph Data Science (GDS) – die Extraktion von Wissen aus vernetzten Daten und Datenbeziehungen. Im Detail heißt das, Abhängigkeiten zwischen Datensätzen zu bewerten, Bedeutungen abzuleiten und komplexe Strukturen sowie Verhalten zu untersuchen.

Anbieter zum Thema

Die Autorin: Alicia Frame ist Senior Director of Product Management, Graph Data Science, Neo4j
Die Autorin: Alicia Frame ist Senior Director of Product Management, Graph Data Science, Neo4j
(Bild: Alicia Frame)

Außerhalb des akademischen Umfelds wird GDS in der Regel dazu genutzt, um bessere Entscheidungen zu treffen und die Vorhersagegenauigkeit von Prognosen zu verbessern. Im Unterschied zur klassischen Data Science stehen bei GDS – wie bei der Graphtechnologie – vor allem die Datenbeziehungen im Vordergrund. Damit ist Graph Data Science überall dort gefragt, wo zusätzlicher Kontext nötig ist, um im Unternehmen Prozesse zu optimieren und zu automatisieren. Dazu gehören zum Beispiel Recommendation Engines und 360-Grad-Kunden-Analysen, aber auch die Betrugsaufdeckung oder das Risk Assessment. Die Analyse umfasst multidisziplinäre Workflows, darunter Graph-Algorithmen und Machine-Learning-Modelle (ML).

Vier Fragen, die sich mit GDS beantworten lassen

Graph Data Science lässt sich für unterschiedlichste Szenarien einsetzen. Grundsätzlich lassen sich jedoch vier abstrakte Datenstrukturen mit GDS abfragen: Bewegung, Einfluss, Gruppen/Interaktionen sowie Muster.

1. Wie bewegen sich Entitäten durch ein Netzwerk?

Im Graphen werden Entitäten (z. B. Personen) als Knoten, die Beziehungen dazwischen als Kanten dargestellt. Von einem beliebigen Knoten aus lassen sich die Verbindungen traversieren und so den Weg von Knoten zu Knoten nachverfolgen. Das Datenmodell erlaubt es also, tief greifende Pfadanalysen durchzuführen und so den Weg der Verbreitung zu bestimmen. Das kann die Infektionskette von Krankheiten wie COVID-19 betreffen, die Impact-Analyse in IT-Systemen und Netzwerken oder die Optimierung der besten Route in der Logistik.

2. Was sind die einflussreichsten Datenpunkte?

Data Scientists können im Graphen die Knotenpunkte identifizieren, die eine besondere Rolle innerhalb eines Datensatzes einnehmen und damit für die Datenwissenschaftler von besonderer Relevanz sind. Diese „Influencer“ können zum Beispiel wichtige Brücken zwischen ansonsten wenig verbundenen Datensätzen sein. Oder sie stellen Knoten dar, die am Ende von unzähligen Beziehungen sitzen. Als zentrale Knotenpunkte können sie Abfragen innerhalb des Netzwerks beeinflussen, beschleunigen oder verlangsamen. Das Konzept der stark verbundenen und einflussreichen Knoten wird als Zentralität bezeichnet. Zentralitätsalgorithmen – zu denen auch der bekannte Page-Rank-Algorithmus gehört – sind für das Verständnis eines Netzwerks unerlässlich.

3. Welche Gruppen und Interaktionen lassen sich ableiten?

Um Gemeinsamkeit zwischen Daten zu erkennen (Community Detection), müssen diese aufgeteilt und in Gruppen kategorisiert werden. Dazu wird die Stärke sowie die Anzahl der Beziehungen zwischen den jeweiligen Knoten herangezogen. Alternativ lassen sich Gemeinsamkeiten auch über die Ähnlichkeit zu benachbarten Knoten im Datenmodell ermitteln (z. B. Nächste-Nachbarn-Klassifikation (K-Nearest Neighbors, KNN). Bei prädiktiven Analysen geht es darum, auf der Grundlage dieses Netzwerks aus Ähnlichkeiten und Gemeinsamkeiten zukünftige (oder noch nicht erkannte) Beziehungen zu bestimmen und so heuristische Vorhersagen zu treffen.

4. Welche Muster finden sich in den Daten?

Im Kontext vernetzter Daten lassen sich mit GDS Muster und Zusammenhänge aufdecken, die zuvor nicht offensichtlich sind. Dabei kommen sowohl einfache Abfragen als auch verschiedene Algorithmen zum Einsatz. So lassen sich zum Beispiel Beziehungsmuster zwischen einigen wenigen Knoten untersuchen und auf größere Datensätze übertragen. Data Scientists können zudem Attribute aller Knoten vergleichen, Hierarchien in der Datenstruktur ausfindig machen oder bestimmte Merkmale miteinander korrelieren.

Einsatzgebiete von Graph Data Science
Einsatzgebiete von Graph Data Science
(Bild: Neo4j)

GDS für den Mainstream

Diesen GDS-klassischen Fragen nachzugehen, ist für Unternehmen in den letzten Jahren zunehmend einfacher geworden. Das hat mehrere Gründe: Zum einen verfügen Organisationen mittlerweile über einen umfangreichen Schatz an vernetzten Daten. Zum anderen sind native Graphdatenbanken hinsichtlich der Skalierbarkeit grenzenlos und können es problemlos mit den in Unternehmen gesammelten Datenvolumen aufnehmen. Und schließlich werden vermehrt ML- und KI-Funktionalitäten direkt in entsprechende Analyse-Plattformen integriert. Das macht es auch für weniger geschulte Anwender einfach, Graph-Algorithmen zu verwenden und ML-Modelle zu erstellen.

Technisch gesehen sind Data-Science-Workloads in der Regel viel speicherintensiver und verwenden mehr Threads als Datenbank-Workloads. Das richtige Set-up ist für Data Scientists daher entscheidend. Eine leistungsstarke GDS-Plattform sollte daher vier grundsätzliche Elemente beinhalten:

  • Unterstützung der transaktionalen sowie analytischen Verarbeitung von Graph-Daten sowie deren Visualisierung
  • Speicherung und Berechnung von Graph-Daten durch Datenmanagement- und Analysewerkzeuge
  • Integriertes Tool Set rund um Graph Analytik, einschließlich einer Bibliothek mit Graph Algorithmen, gängigen Protokollen, APIs, etc.
  • Abfragesprache, um einen effektiven Zugang für verschiedene Anwendungsszenarien sicherzustellen

GDS-as-a-Service

Eine weiteres Key-Element ist eine hohe Benutzerfreundlichkeit. Data Scientists sind nicht gleich Entwickler. Sie sind in erster Linie daran interessiert, ihren Daten einen Mehrwert zu verleihen, neue Informationen zu finden und bessere prädiktive Modelle zu erstellen. Die Modellierung und Speicherung vernetzter Daten innerhalb einer Datenbank ist hier eher ein notwendiges Übel. Je einfacher die Handhabung und der Import und Export der Daten, desto besser. Gefragt ist eine zentrale Arbeitsumgebung, um alle Aufgaben rund um die Datenanalyse schnell und effektiv durchführen zu können.

Einen solchen umfassenden Graph-Analytics-Workspace bietet Neo4j mit AuraDS und stellt damit erstmals Graph Data Science als vollständig verwalteten Cloud-Service bereit. Die Plattform ist sowohl auf die Bedürfnisse von Data Scientists als auch Entwickler ausgerichtet. Neben hoher Benutzerfreundlichkeit und intuitiver UI bietet Neo4j GDS auch neue Features und Erweiterungen, um KI-Anwendungen noch schneller auf den Weg zu bringen.

Library aus Graph-Algorithmus und ML-Pipelines

Anwender können auf die Library mit mehr als 65 skalierbaren Graph-Algorithmen zugreifen. Dabei werden stets neue Algorithmen hinzugefügt und verbessert, zuletzt beispielsweise Breitensuche (Breadth-First Search, BFS) Tiefensuche (Depth-First Search, DFS), Nächste-Nachbarn-Klassifikation (K-Nearest Neighbors, KNN) und Delta Stepping.

Darüber hinaus verfügt GDS seit Version 2.0 über neue und erweiterte Predictive-Analytics- sowie AutoML-Funktionen. So können Anwender zu Beginn angeben, für welches Endziel ein ML-Modell trainiert werden soll. In den folgenden Schritten unterstützt AuraDS bei der Generierung von Graph Embeddings und der Auswahl des Modells mit der passenden Performance und Skalierbarkeit. Über die Bibliothek aus Graph-Algorithmen und ML-Pipelines können fehlende Beziehungen und Knotenklassifizierungen in den Modellen zudem automatisch ausgefüllt werden (z. B. Tags, Einstufung). So entstehen einheitliche Workflows für den Einsatz von ML.

Optimierung von Workflows und Performance

Neben den neuen Features bietet GDS auch operationale Verbesserungen. Data Science Workloads können ausgeführt werden, ohne transaktionale Workloads zu beeinträchtigen. Die Synchronisierung wird intern gehandhabt, sodass sich der ETL-Prozess erübrigt. Auch der Workflow wurde optimiert. Über die Drag-and-Drop-Benutzeroberfläche lassen sich Daten im Graphen noch einfacher modellieren und importieren.

Machine Learning (ML)-Modelle lassen sich dank MLOps-Unterstützung ohne Unterbrechung und Angst vor Datenverlust persistieren, veröffentlichen und wiederherstellen. Via One-Klick-Backup entstehen Snapshots von Instanzen, Modellen und In-Memory-Graphen. Über einen nativen Python-Client können Anwender direkt von Python aus arbeiten und erhalten damit eine Alternative zur Neo4j eigenen Abfragesprache Cypher. Zudem ist die Arbeit in AuraDS und GDS direkt über die web-basierte interaktive Umgebung Jupyter Notebook (früher IPython Notebooks) möglich, wobei Ergebnisse über Data Frames abgerufen werden können.

Neo4j AuraDS ist zunächst auf der Google Cloud Platform (GCP) verfügbar. Die Partnerschaft ermöglicht die Integration von AuraDS mit Google und seiner Vertex-KI-Plattform, die das ganze Arsenal an verfügbaren Google KI-Tools in der Cloud unter einem Dach zusammenfasst.

Neo4j-Konnektoren mit Apache Spark und BI-Tools wie Microsoft Power BI, Tableau und Looker sowie die Integration mit Dataiku und KNIME stellen zusätzlich sicher, dass Data Scientists und Entwickler innerhalb ihres bestehenden Ökosystem effektiv arbeiten und das Potential von Graphtechnologie in vollem Umfang ausschöpfen können.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Big Data, Analytics & AI

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

(ID:48262169)