Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

Graph Neuronale Netze in 5 Minuten erklärt

Graph-Neuronale-Netzwerke-in-5-Minuten-erklärt
Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Graph Neural Networks (GNNs) sind ein modernes Konzept, das dabei hilft, Graphen zu analysieren, Beziehungen zwischen Objekten abzuleiten und daraus aussagekräftige Daten vorherzusagen.

Die Popularität von künstlicher Intelligenz und Maschinelles Lernen hat die Nachfrage nach Konzepten wie GNNs bei Unternehmen und Verbrauchern weiter gesteigert.

Sie sind für zahlreiche Branchen und Benutzer hilfreich, um Aufgaben wie Bild- und Textklassifizierung, Verarbeitung natürlicher Sprache, Produktempfehlungen, Social-Media-Analyse usw. auszuführen.

Nun, wenn es um Diagramme geht, ist das Problem, dass deren Analyse und Darstellung mit Standardmethoden wie CNNs eine Herausforderung sein kann.

Hier kommen GNNs ins Spiel, um mehrere Graphenprobleme zu lösen.

In diesem Artikel werde ich darüber sprechen, was GNNs sind, wie sie funktionieren, ihre Anwendungen in der realen Welt und mehr.

Also bleibt gespannt!

Introduction to Graphs

Ein Diagramm ist im Wesentlichen eine Möglichkeit, zusammengehörige Daten darzustellen. Es hilft, die Beziehung zwischen Objekten, Personen und Konzepten zu visualisieren. Diagramme können auch beim Training helfen Modelle für maschinelles Lernen (ML). für komplexe Aufgaben. Beispiele für Diagramme könnten soziale Mediennetzwerke, die Modellierung verschiedener physikalischer Systeme, die Analyse von Fingerabdrücken usw. sein.

Einführung in Graphen

In der Welt der Informatik sind Graphen eine Art Datenstruktur, die aus zwei Komponenten besteht – Kanten und Knoten (oder Vertices). Die Kanten werden auch als Verbindungen bezeichnet, die die Beziehung zwischen verschiedenen Knoten bestimmen, während die Knoten Entitäten oder Objekte, Orte usw. sind.

Mathematisch lässt sich ein Graph durch diese Formel beschreiben:

G = (V, E)

Hier steht G für einen Graphen, V für einen Satz Scheitelpunkte und E für Kanten.

Es gibt zwei Arten von Diagrammen:

  • Regie: Ein gerichteter Graph bezeichnet die Richtungsabhängigkeit zwischen zwei Knoten. Diese Art von Diagramm kann unidirektional oder bidirektional sein.
  • Ungerichtet: Einem ungerichteten Graphen fehlt die Richtungsabhängigkeit, wenn die Knoten nur miteinander verbunden sind.

Warum ist die Analyse eines Diagramms eine Herausforderung?

Warum-ist-das-Analysieren-einer-Grafik-herausfordernd

Die Analyse eines Diagramms kann aus vielen Gründen eine Herausforderung sein:

  • Graphen existieren im nicht-euklidischen Raum, was bedeutet, dass sich die Daten mit gekrümmten Oberflächen statt mit flachen Oberflächen wie 2D oder 3D befassen. Dies erschwert die Interpretation des Diagramms und seiner Daten.
  • Ein Graph kann zehn, hundert oder sogar Millionen Knoten haben, und die Anzahl der Kanten kann für jeden Knoten variieren. Aufgrund der großen Größe und seines Dimensionalitätsfaktors nimmt die Komplexität der Interpretation des Diagramms zu.
  • Die Grafikgröße ist dynamisch ohne feste Form. Zwei Graphen könnten unterschiedlich aussehen, aber ähnliche Darstellungen für Adjazenzmatrizen haben. Auf diese Weise kann die Analyse des Diagramms mit herkömmlichen Tools ineffizient und schwierig sein. 

Andererseits können sich Graphen mit der Zeit ausdehnen oder zusammenziehen. Das bedeutet auch, dass, wenn Sie grafische Daten durch eine Matrix darstellen möchten, dies ineffizient sein könnte und spärliche Metriken erstellen könnte, die dasselbe Diagramm bedeuten. Außerdem sind sie nicht permutationsinvariant, da sie möglicherweise nicht dasselbe Ergebnis liefern.

Unter Berücksichtigung all dieser Probleme wurden GNNs eingeführt, um grafische Vorhersageprobleme effektiver zu lösen.

What Are Graph Neural Networks?

Ein Graph Neural Network (GNN) ist eine Art von künstlichen neuronalen Netzwerken (KNNs), die für die Verarbeitung von Daten verwendet werden, die als Graphen dargestellt werden.

Graph-Neuronale-Netze

GNNs basieren auf den Konzepten von tiefe Lernen und Graphentheorie. Diese Netzwerke nutzen die prädiktive Intelligenz des Deep Learning (eine Teilmenge des maschinellen Lernens und der künstlichen Intelligenz), um Daten zu analysieren und zu verarbeiten.

Ein GNN kann die Eingabedaten als Diagramm mit eingebetteten Knoten, Kanten und Kontext verwenden, um die Ausgabe als Diagramm zu erstellen, dessen Einbettungen aktualisiert und transformiert werden, indem die Symmetrie des Eingabediagramms beibehalten wird.

Stellen Sie sich GNNs als einen Graphen vor, dessen Daten Knoten und Verbindungen zwischen den Daten Kanten sind. Sie können GNNs direkt auf Diagramme anwenden und erhalten eine einfachere Möglichkeit, Vorhersageaufgaben auf Edge-, Knoten- oder Diagrammebene durchzuführen.

GNNs können die Diagrammstruktur und Merkmalsinformationen besser kombinieren, um grafische Darstellungen durch Merkmalsaggregation und -ausbreitung zu lernen.

In der realen Welt werden GNNs zur Untersuchung und Lösung komplexer Probleme in mehreren Sektoren verwendet. Einige Anwendungsfälle sind das Identifizieren bestimmter Knoten in einem großen Netzwerk, das Klassifizieren von Mustern, das Visualisieren, Filtern und Analysieren von Diagrammen, das Analysieren sozialer Netzwerke, Preisvorhersagen und mehr.

GNNs wurden erstmals in einem 2009 von italienischen Forschern veröffentlichten Artikel vorgestellt. Zwei Forscher aus Amsterdam demonstrierten die Leistungsfähigkeit von GNNs auch mit einer anderen Variante namens Graph Convolutional Network (GCN).

Types of GNNs

Arten von GNNs

Es gibt viele Arten von neuronalen Netzen, und die meisten haben irgendeine Form von CNNs in sich. Die Arten von GNNs sind:

# 1. Rekurrente Graph Neural Networks (RGNNs)

RGNNs untersuchen Diffusionsmuster und können multirelationale Graphen mit Knoten mit mehreren Beziehungen verwalten. Diese Netzwerke verwenden Regularisierer, um die Glätte zu verbessern und eine Überparametrisierung zu vermeiden.

Sie verwenden eine begrenzte Rechenleistung, um bessere Ergebnisse zu erzielen. RGNNs werden in der maschinellen Übersetzung, Textgenerierung, Spracherkennung, Video-Tagging, Generierung von Bildbeschreibungen, Zusammenfassung von Texten und mehr.

# 1. Gated Graph Neural Networks (GGNNs)

Diese Netzwerke sind sogar besser als RGNNs, wenn es darum geht, Aufgaben zu erfüllen, bei denen langfristige Abhängigkeiten im Spiel sind. GGNNs verbessern RGNNs, indem sie Zeittore, eine Kante und einen Knoten für langfristige Abhängigkeiten hinzufügen. Diese Netzwerke werden zum Erinnern und Vergessen von Informationen in verschiedenen Zuständen verwendet.

# 2. Graph-Faltungsnetzwerke (GCN)

GCNs sind wie herkömmliche CNNs. GCNs lernen die Merkmale eines Objekts oder einer Entität, indem sie ihre benachbarten Knoten untersuchen. Die GNNs aggregieren verschiedene Knotenvektoren und geben das Ergebnis an die dichte Schicht weiter. Als nächstes führen die Netzwerke unter Verwendung der Aktivierungsfunktion eine Nichtlinearität aus. GCNs werden weiter in zwei Typen unterteilt – Räumlich und Spektral Faltungsnetzwerke.

# 3. Graph Auto-Encoder-Netzwerke

Diese neuronalen Netze untersuchen die Darstellung von Graphen mit Hilfe eines Encoders und versuchen, Eingabegraphen mit Hilfe eines Decoders zu rekonstruieren. Darüber hinaus sind Decoder und Encoder mit einer Flaschenhalsschicht verbunden. Graph-Auto-Encoder-Netzwerke eignen sich hervorragend für die Linkvorhersage, da sie besser mit Klassenausgleichern umgehen.

How Do GNNs Work?

wiegnnfunktioniert

Herkömmliches Deep Learning konzentriert sich hauptsächlich auf Text und Bilder, bei denen es sich um strukturierte Daten handelt, die als Pixelgitter oder Wortfolgen beschrieben werden.

Im Gegensatz dazu sind Diagramme unstrukturiert, können jede Größe und Form annehmen und außer Text und Bildern jede Art von Daten enthalten.

GNNs können Graphen mit Hilfe von Message Passing organisieren, wodurch maschinelle Lernalgorithmen die Graphen nutzen können. Message Passing bettet die Informationen über seinen Nachbarn in jeden Knoten ein. Als nächstes verwenden die KI-Modelle die eingebetteten Daten, um Muster zu erkennen und aussagekräftige Vorhersagen zu treffen. 

Beispielsweise werden Randeinbettungen verwendet Betrugserkennung Systeme zur Erkennung verdächtiger Transaktionen, damit rechtzeitig geeignete Maßnahmen ergriffen und betrügerische Aktivitäten gestoppt werden können.

GNNs verwenden spärliche Mathematik, und ihre Modelle haben normalerweise nur 2 oder 3 Schichten. Auf der anderen Seite beinhalten andere Netzwerke und KI-Modelle eine dichte Mathematik und haben Hunderte von neuronalen Netzwerkschichten.

Difference between GNN and CNN

GNNs und Convolutional Neural Networks (CNNs) sind zwei Arten von neuronalen Netzwerken, unterscheiden sich aber dennoch.

CNNs sind eine andere Art von neuronalen Netzwerken, die verwendet werden, um Maschinen bei der Visualisierung von Objekten oder Dingen und der Durchführung von Aufgaben wie Bilderkennung, Objekterkennung, Bildklassifizierung usw. zu unterstützen. Sie eignen sich hervorragend für normale, flache, 2D- und 3D-Räume, aber GNNs glänzen auf gekrümmten oder nichteuklidischen Räumen.

Unterschied zwischen GNN und CNN

CNNs sind so konzipiert, dass sie speziell mit strukturierten Informationen oder euklidischen Räumen arbeiten. Andererseits befassen sich GNNs mit nicht-euklidischen Räumen, in denen ihre Knoten nicht geordnet sind und variieren können.

Das bedeutet, dass Sie CNNS anwenden können, um Informationen wie Text oder Bilder zu strukturieren. Es gilt nicht für unstrukturierte Daten wie Wetter, Geräusche usw. GNNs gelten jedoch für unstrukturierte und strukturierte Daten. Es ist eine verallgemeinerte Form von CNNs.

Darüber hinaus helfen GNNs bei der Analyse von Diagrammen und der Vorhersage aussagekräftiger Informationen, wenn CNNs für die Analyse von Diagrammen ungeeignet sind.

Das bedeutet, dass GNNs beim Lösen von Graphenproblemen effizienter sind als CNNs.

Applications of GNNs

Organisationen und Unternehmen, die GNNs anwenden, expandieren. Es wird in zahlreichen Sektoren übernommen, von der Industrie bis hin zu Wissenschaftszweigen. Hier sind einige der Anwendungen von GNNs:

# 1. Diagrammklassifizierung

GNNs werden bei der Graphklassifizierung verwendet, wobei ein vollständiger Graph in mehrere Kategorien unterteilt wird. Es ähnelt der Bildklassifizierung, außer dass das Ziel in den Diagrammbereich umgewandelt wird.

Die Graph-Klassifizierung hat viele Anwendungen, z. B. in der Bioinformatik, um zu überprüfen, ob ein Protein zu einem Enzym gehört, die Analyse sozialer Netzwerke durchzuführen, Dateien in NLP zu kategorisieren und vieles mehr.

# 2. Graph-Visualisierung

Graphenvisualisierung ist ein Teilbereich der Informatik und Mathematik, der Informationsvisualisierung und geometrische Graphentheorie überschneidet. Es befasst sich mit der visuellen Darstellung von Graphen und der Aufdeckung von Anomalien und Strukturen in den Daten. Durch die Diagrammvisualisierung können Benutzer das Diagramm besser verstehen.

Graph-Visualisierung

# 3. Graph-Clustering

GNNs werden beim Graph-Clustering verwendet, einem Prozess, bei dem Daten als Graphen geclustert werden. Sie können zwei Arten von Clustering für gegebene Diagrammdaten durchführen – Vertex-Clustering und Objekt-Clustering. Vertex-Clustering organisiert oder gruppiert die Knoten des Graphen in verschiedene Gruppen von Regionen, die dicht verbunden sind.

Sie basieren auf Randabständen oder Gewichten. Letztere nimmt Graphen als zu gruppierende Objekte oder Einträge. Es gruppiert oder gruppiert Objekte nach ihrer Ähnlichkeit.

# 4. Knotenklassifizierung

Eine der wichtigen Anwendungen von GNNs ist die Knotenklassifizierung, um die Knotenbezeichnung zu bestimmen, indem die Bezeichnungen der Nachbarn der Knoten überprüft werden. Hier werden neue Informationen an Knoten hinzugefügt, an denen eine Informationslücke besteht.

Modelle für diese Art von Aufgabe benötigen ein teilweise überwachtes Training. Hier muss nur ein Teil eines gegebenen Graphen beschriftet werden.

Wenn Sie beispielsweise feststellen möchten, ob in Ihrem Organisationsnetzwerk Bot-Konten erstellt wurden, müssen Sie ein GNN-Modell basierend auf den Diagrammeinbettungen bekannter und unbekannter Bots trainieren und Benutzer klassifizieren, ob es sich um normale Benutzer oder um Bots handelt.

GNNs sind hilfreich bei der Verknüpfung oder Kantenvorhersage, um die Beziehung zwischen verschiedenen Objekten oder Entitäten in einem bestimmten Diagramm herauszufinden. Dies wird auch durchgeführt, um vorherzusagen, ob eine Verbindung zwischen den beiden gegebenen Entitäten besteht.

Beispielsweise können Sie die Linkvorhersage in sozialen Netzwerken verwenden, um soziale Interaktionen zu verstehen und Benutzern mögliche Freunde vorzuschlagen. Es wird auch in der Strafverfolgung verwendet, um kriminelle Vereinigungen und Empfehlungssysteme vorherzusagen und zu verstehen, um die besten Produkte, Filme, Musik usw. vorzuschlagen.

# 6. Computer Vision

GNNs werden in der Computervision eingesetzt, um verschiedene Probleme im Zusammenhang mit der Mensch-Objekt-Interaktion, der Bildklassifizierung, der Generierung von Szenendiagrammen und vielem mehr zu lösen.

Computer Vision

Beispielsweise können Sie GNNs bei der Generierung von Szenendiagrammen verwenden, bei denen das Modell ein bestimmtes Bild in ein Diagramm zerlegen muss, das aus Objekten und semantischen Beziehungen zwischen ihnen besteht. Dieser Prozess kann Objekte erkennen und detektieren und semantische Beziehungen zwischen verschiedenen Objektpaaren vorhersagen. 

# 7. Textklassifizierung

Graphen können eine Gruppe von Wörtern darstellen, wobei Wörter Knoten und Verbindungen zwischen diesen Wörtern Kanten sind. Sie können die Textklassifizierung auf Diagramm- oder Knotenebene durchführen.

Die Verwendung von GNNs für die Textklassifizierung hat viele praktische Anwendungsfälle, wie eine Produktempfehlung, neue Kategorisierung und Krankheitserkennung anhand bestimmter Symptome.

# 8. Klassifizieren und Segmentieren von Punktwolken

LiDAR kann reale Daten in verschiedenen 3D-Punktwolken darstellen, um 3D-Segmentierungsprozesse abzuschließen. Sie können die Punktwolken mit GNNs darstellen und sie einfach klassifizieren und segmentieren.

# 9. Darstellung der Mensch-Objekt-Interaktion

Diagramme sind eine hervorragende Möglichkeit, Interaktionen zwischen Links und Objekten darzustellen. So können Sie Objekte und Menschen als Knoten modellieren, während die Beziehungen und Interaktionen zwischen ihnen als Kanten dargestellt werden.

# 10. Verarbeitung natürlicher Sprache (NLP)

Nlp

Im NLP wird der Text als sequentielle Daten betrachtet, die durch ein LSTM (Long Short-Term Memory) oder RNN (Recurrent Neurales Netzwerk). Viele NLP-Aufgaben verwenden häufig Diagramme, weil sie einfach darzustellen sind und natürlich und roh aussehen.

GNNs werden zur Lösung vieler NLP-Probleme verwendet, z. B. zum Finden von Semantik in maschineller Übersetzung, Textklassifizierung, Extraktion von Beziehungen, Textklassifizierung, Beantwortung von Fragen und mehr.

# 11. Arzneimittelentdeckung

Drogenentdeckung

Die Entdeckung des Medikaments oder Heilmittels für eine Krankheit oder ein Leiden ist nicht nur eine Herausforderung für die Chemie, sondern auch für die Gesellschaft. Dieses Gebiet erfordert gründliche Forschung und Milliarden von Dollar und Jahre, um ein Medikament zu formulieren, das eine Krankheit heilt.

GNNs mit KI können dazu beitragen, die Forschungs- und Screening-Prozesse zu verkürzen, sodass ein sichereres und wirksameres Medikament schneller für die Öffentlichkeit freigegeben werden kann.

# 12. Molekulare Wechselwirkungen darstellen

GNNs sind hilfreich in der Teilchenphysik, die sich mit Gesetzmäßigkeiten bezüglich Teilchenwechselwirkungen befasst. Diagramme können hier verwendet werden, um die Beziehungen und Wechselwirkungen zwischen Partikeln zu verstehen. GNNs können helfen, die Eigenschaften der Kollisionsdynamik vorherzusagen.

Derzeit verwendet der Large Hadron Collider (LHC) GNNs, um interessante Teilchen aus Bildern zu identifizieren, die in verschiedenen Experimenten erzeugt wurden. 

# 13. Verkehrsvorhersage

Ein intelligentes Transportgerät oder -system umfasst die Verkehrsgeschwindigkeitsvorhersage und die Straßendichte als Hauptmerkmale. Diese Vorhersageaufgaben können mit Hilfe von STGNNs oder Spatial-Temporal Graph Neural Networks durchgeführt werden.

Hier wird das Verkehrsnetz als räumlich-zeitlicher Graph mit Knoten als Sensoren betrachtet, die auf Straßen positioniert sind, und Kanten sind die Abstände zwischen Knotenpaaren. Bedenken Sie auch, dass jeder Knoten eine durchschnittliche Verkehrsgeschwindigkeit als Eingabe hat.

# 14. Andere Anwendungen

Abgesehen von dem oben Genannten werden GNNs bei der Modellierung von E-Health-Datensätzen, der Verhinderung von gegnerischen Angriffen, Gehirnnetzwerken, der Vorhersage sozialer Einflüsse, Programmen, Argumentationen, Programmüberprüfungen, der Vorhersage von Wahlergebnissen und vielem mehr verwendet.

Learning Resources

Nachfolgend finden Sie einige der besten Bücher, um etwas über GNNs zu lernen.

# 1. Graph Neural Networks von Lingfei Wu und anderen

Dieses Buch ist ein umfassender Leitfaden für GNNs, der die Ziele des Lernens von Graphdarstellungen erörtert.

Es erläutert auch die aktuellen Entwicklungen, die Geschichte und die Zukunft von GNNs zusammen mit einigen ihrer grundlegenden Theorien und Methoden.

# 2. Graph Neuronale Netze in Aktion

Vorschau Produkt Rating Preis
Graph Neuronale Netze in Aktion Graph Neuronale Netze in Aktion Noch keine Bewertungen $ 59.99

Es ist ein praktischer Leitfaden für Deep-Learning-Modelle auf der Grundlage von Graphen und zum Erstellen fortschrittlicher GNNs für molekulare Modellierung, Empfehlungsmaschinen und mehr.

# 3. Einführung in Graph Neural Networks von Zhiyuan Liu

Lernen Sie die grundlegenden Konzepte, Anwendungen und Modelle von GNNs kennen.   

# 4. Graph Neural Network von Younes Sadat-Nejad

Es ist ein Einführungskurs in GNNs, der auf Udemy verfügbar ist. Es wird Ihnen helfen, Graph Representational Learning und GNN zu lernen. 

Fazit

Mit der zunehmenden Popularität von KI und Graphen, die ausgefeilter und datenreicher werden, werden Graph Neural Networks (GNNs) immer nützlicher. Sie sind ein leistungsfähiges Werkzeug zur Erstellung von Vorhersagen und werden in zahlreichen Bereichen eingesetzt, von Netzwerken und Computer Vision bis hin zu Chemie, Physik und Gesundheitswesen. 

Sie können auch erkunden Regression vs. Klassifikation im maschinellen Lernen.

Danke an unsere Sponsoren
Weitere großartige Lektüre zu KI
Treiben Sie Ihr Geschäft an
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder