Definition Was ist ein Graph Neural Network (GNN)?

Von Dipl.-Ing. (FH) Stefan Luber Lesedauer: 4 min

Anbieter zum Thema

Das Graph Neural Network gehört zur Kategorie der künstlichen neuronalen Netzwerke (KNN). Es arbeitet mit Daten in Graphenstruktur. Das GNN verwendet Deep Learning, um aus graphenbasierten Daten zu lernen. Es nutzt Daten in Form von Knoten und Kanten und erkennt Beziehungen und Muster in den Graphen. Auf Basis der Graphendaten lassen sich Aufgaben wie Klassifizierungen durchführen oder Vorhersagen treffen.

(Bild: © aga7ta - stock.adobe.com)

GNN ist das Akronym für Graph Neural Network. Es handelt sich um eine Unterform eines künstlichen neuronalen Netzwerks (KNN), das Daten verarbeitet, die in Graphenstruktur vorliegen. Das GNN verwendet Eingabedaten in Form von Graphen mit Knoten und Kanten und wendet Verfahren des Deep Learnings an. Es analysiert die Eingabedaten, erkennt Muster und Beziehungen und kann Aufgaben wie Klassifizierungen oder Vorhersagen durchführen. Die Inferenz wird direkt auf Daten ausgeführt, die mithilfe von Graphen beschrieben sind.

GNN gibt es in zahlreichen verschiedenen Varianten. Sie kommen für Aufgaben zum Einsatz, in denen andere Formen künstlicher neuronaler Netzwerke wie Convolutional Neural Networks (CNN) oder Recurrent Neural Networks (RNN) weniger gute Leistungen erzielen. Typische Anwendungsbereiche sind komplexe Problemstellungen mit vielen Abhängigkeiten und Interaktionen zwischen den Datenpunkten wie semantische Analysen, soziale Netzwerkanalysen oder Empfehlungssysteme. Mittlerweile existieren einige frei verfügbare Open-Source-Bibliotheken zum Erstellen, Trainieren und Implementieren von GNNs wie PyTorch Geometric oder TensorFlow GNN und andere.

Was ist ein Graph?

Um zu verstehen, wie ein Graph Neural Network funktioniert und welche Arten von Daten es verarbeitet, ist es zunächst wichtig, zu wissen, was mit der Bezeichnung Graph in der Informatik gemeint ist. Es handelt sich um eine spezielle Darstellung von Daten. Sogenannte Knoten (im Englischen Vertices, Nodes oder Points) sind über Kanten (im Englischen Edges, Links oder Lines) miteinander verbunden. Die Verbindungen der Knoten repräsentieren Beziehungen. Sowohl die Knoten als auch die Kanten lassen sich mit verschiedenen Attributen versehen. Die Verbindungen zwischen den Knoten können gerichtet oder ungerichtet sein.

Die Graphendarstellung eignet sich besonders gut für Daten, die miteinander in Beziehung stehen und komplexe Abhängigkeiten untereinander haben. Ein Beispiel für eine Graphendarstellung ist die Abbildung sozialer, familiärer oder freundschaftlicher Beziehungen von Personen. In einer solchen Graphendarstellung repräsentieren die Knoten die einzelnen Personen und die Kanten ihre Beziehungen untereinander. Über die Attribute sind die Personen und die Beziehungen genauer beschrieben.

Funktionsweise eines GNN

Da es zahlreiche verschiedene Arten von GNN mit unterschiedlicher Funktionsweise gibt, hier nur ein einfacher Überblick über die prinzipielle Funktionsweise eines GNN. Wesentlicher Unterschied zu anderen Formen künstlicher neuronaler Netzwerke ist, dass ein GNN Eingabedaten verwendet, die in Graphenstruktur mit Knoten und Kanten vorliegen. Herkömmliches Deep Learning nutzt strukturierte Eingabedaten, die beispielsweise in Form von Wortfolgen oder Pixelgittern vorliegen.

In einem Deep-Learning-Vorgang analysiert das Graph Neural Network unter Anwendung der Graphentheorie die graphenbasierten Daten, erkennt Muster, lernt „zu verstehen“, wie Knoten mit anderen Knoten interagieren und in Beziehung stehen, und leitet daraus Schlussfolgerungen ab. Die Algorithmen des GNN sind so gestaltet, dass sie komplexe Graphenstrukturen analysieren und verstehen können. Durch die Lernvorgänge entstehen umfassende, tiefe Darstellungen der Graphen. Auf Basis dieser Darstellungen lassen sich in der Inferenzphase verschiedene Aufgaben ausführen. GNNs klassifizieren Daten oder treffen Vorhersagen auf Basis der Eingabedaten.

Verschiedene Arten von GNN

Mittlerweile existieren zahlreiche verschiedene Arten von GNN, mit unterschiedlichen Architekturen, Algorithmen und rekursiven oder convolutionalen Ansätzen. Beispiele für unterschiedliche Arten von GNN sind:

  • Das Graph Convolutional Network (GCN) mit den Unterarten Spatial Convolutional Network und Spectral Convolutional Network
  • Das Recurrent Graph Neural Networks (RGNN): beispielsweise eingesetzt für maschinelles Übersetzen, Textgenerierung, Textzusammenfassung oder Spracherkennung und Video-Tagging
  • Das Gated Graph Neural Networks (GGNN): besitzt Zeittore für die Abbildung langfristiger Abhängigkeiten
  • Das Graph Auto-Encoder Network: verwendet Encoder und Decoder und eignet sich gut für Anwendungen wie Linkvorhersagen

Einsatzmöglichkeiten des Graph Neural Networks und Beispiel

Das Graph Neural Network eignet sich für Anwendungsfälle und komplexe Problemstellungen, in denen Daten vielschichtig untereinander in Beziehung stehen und miteinander interagieren. GNNs führen Klassifizierungsaufgaben aus oder treffen Vorhersagen und können beispielsweise eingesetzt werden, wenn Convolutional Neural Networks nicht die gewünschten Ergebnisse erzielen. Typische Einsatzbereiche der Graph Neural Networks sind die Analyse sozialer Netzwerke, Empfehlungssysteme, Linkanalyse, semantische Analysen, Preisvorhersagen, Cybersecurity und Intrusion Detection Systeme, Steuerung von Verkehrsflüssen, computerbasiertes Sehen, verschiedene NLP-Tasks (Natural Language Processing) und vieles mehr. Verwendet werden sie unter anderem in der Biologie, Chemie und Physik.

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

Ein bekanntes Beispiel für ein graphenbasiert arbeitendes künstliches neuronales Netzwerk ist AlphaFold 2. Es handelt sich bei AlphaFold 2 um eine Künstliche Intelligenz von Google DeepMind, die auf Basis von Aminosäuresequenzen dreidimensionale Proteinstrukturen vorhersagt. Die räumlichen Proteinstrukturen sind über Graphen mit Knoten und Kanten repräsentiert. AlphaFold sorgte für einen Durchbruch bei der Lösung des schon viele Jahrzehnte bestehenden Proteinfaltungsproblems.

(ID:49584254)