Kapitel 1. Verbindungen sind alles

Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com

In einer extremen Sichtweise kann die Welt nur als Verbindungen gesehen werden, nichts anderes. Wir denken, dass ein Wörterbuch der Aufbewahrungsort für Bedeutungen ist, aber es definiert Wörter nur in Bezug auf andere Wörter. Mir gefiel der Gedanke, dass eine Information nur dadurch definiert wird, womit sie in Verbindung steht und wie sie in Verbindung steht. Es gibt kaum etwas anderes als die Bedeutung. Die Struktur ist alles.

Tim Berners-Lee, Weaving the Web: The Original Design and Ultimate Destiny of the World Wide Web (1999), S. 14

Das 20. Jahrhundert zeigte wie viel wir mit Tabellenkalkulationen und relationalen Datenbanken erreichen konnten. Tabellarische Daten regierten. Das 21. Jahrhundert hat uns bereits gezeigt, dass das nicht genug ist. Tabellen verflachen unsere Perspektive und zeigen Verbindungen in nur zwei Dimensionen. In der realen Welt stehen die Dinge mit unzähligen anderen Dingen in Beziehung und sind mit ihnen verbunden, und diese Beziehungen bestimmen, was ist und was passieren wird. Um ein umfassendes Verständnis zu erlangen, müssen wir diese Verbindungen modellieren.

Personalcomputer wurden in den 1970er Jahren eingeführt, aber sie kamen erst in Schwung, als sie ihre ersten Killeranwendungen fanden: Tabellenkalkulationen. VisiCalc auf dem Apple II und dann Lotus 1-2-3 auf dem IBM PC1 automatisierten die mühsamen und fehleranfälligen Berechnungen, die Buchhalterinnen und Buchhalter seit der Erfindung der Schrift und der Arithmetik von Hand gemacht hatten: das Zusammenzählen von Zahlenreihen und -spalten und dann vielleicht noch komplexere statistische Berechnungen.

1970 veröffentlichte E. F. Codd seine bahnbrechende Arbeit über das relationale Datenbankmodell. In diesen frühen Tagen der Datenbanken kursierten einige Modelle, darunter auch das Netzwerkdatenbankmodell. Codds relationales Modell basierte auf etwas, mit dem sich jeder identifizieren konnte und das leicht zu programmieren war: die Tabelle.

Darüber hinaus sind die Matrixalgebra und viele statistische Methoden auch für die Arbeit mit Tabellen geeignet. Sowohl Physiker als auch Wirtschaftsanalysten haben Matrizen verwendet, um optimale Lösungen zu definieren und zu finden - von der Konstruktion von Kernreaktoren bis zum Lieferkettenmanagement. Tabellen eignen sich gut für die parallele Verarbeitung; man muss die Arbeitslast nur vertikal oder horizontal aufteilen. Tabellenkalkulationen, relationale Datenbanken und Matrixalgebra: Der tabellarische Ansatz schien die Lösung für alles zu sein.

Dann kam das World Wide Web, und alles änderte sich.

Verbindungen verändern alles

Das Web ist mehr als das Internet. Das Internet begann in den frühen 1970er Jahren als Datenverbindungsnetzwerk zwischen ausgewählten US-Forschungseinrichtungen. Das World Wide Web, das 1989 von dem CERN-Forscher Tim Berners-Lee erfunden wurde, besteht aus einer Reihe von Technologien, die auf dem Internet aufbauen und die Veröffentlichung, den Zugriff und die Verbindung von Daten in einem Format erleichtern, das für Menschen leicht zu konsumieren ist und mit dem sie interagieren können. Browser, Hyperlinks und Webadressen sind auch die Markenzeichen des Webs. Zur gleichen Zeit, als das Web entwickelt wurde, lockerten die Regierungen ihre Kontrollen über das Internet und erlaubten privaten Unternehmen, es zu erweitern. Heute gibt es Milliarden miteinander verbundener Webseiten, die Menschen, Multimedia, Fakten und Meinungen in einem wahrhaft globalen Maßstab miteinander verbinden. Daten zu haben ist nicht genug. Es kommt darauf an, wie die Daten strukturiert sind.

Was ist eine Grafik?

Als das Wort "Web" ( ) neue Bedeutungen annahm, wurde auch das Wort "Graph" bekannt. Für die meisten Menschen war "Graph" gleichbedeutend mit einem Liniendiagramm, das z. B. den Kurs einer Aktie im Laufe der Zeit darstellt. Mathematiker hatten jedoch eine andere Bedeutung für das Wort, und als Netzwerke und Verbindungen in der Geschäftswelt an Bedeutung gewannen, rückte die mathematische Bedeutung in den Vordergrund.

Ein Graph ist eine abstrakte Datenstruktur, die aus Eckpunkten (oder Knoten) und Verbindungen zwischen Eckpunkten, den Kanten, besteht. Das war's. Ein Graph ist die Vorstellung eines Netzwerks, das aus diesen beiden Arten von Elementen aufgebaut ist. Diese Abstraktion ermöglicht es uns, Netzwerke (oder Graphen) im Allgemeinen zu untersuchen, Eigenschaften zu entdecken und Algorithmen zur Lösung allgemeiner Aufgaben zu entwickeln. Die Graphentheorie und die Graphenanalyse geben Unternehmen die Werkzeuge an die Hand, die sie brauchen, um die plötzliche Fülle an vernetzten Daten zu nutzen.

In Abbildung 1-1 sehen wir das Beziehungsnetz zwischen den Schauspielern und Regisseuren von Star Wars (1977) und Das Imperium schlägt zurück (1980). Dies lässt sich leicht als Graph mit verschiedenen Kanten modellieren, die die verschiedenen Arten von Eckpunkten verbinden. Schauspieler und Filme können durch einen acted_in Knoten verbunden sein, Filme und andere Filme können durch einen is_sequel_of Knoten verbunden sein und Filme und Regisseure können durch eine directed_by Kante verbunden sein.

A graph showing some key players and connections in early Star Wars films
Abbildung 1-1. Ein Diagramm mit einigen wichtigen Akteuren und Verbindungen in den frühen Star Wars-Filmen

Warum Diagramme wichtig sind

Das Web hat uns gezeigt, dass wir manchmal mehr erreichen, wenn wir verschiedene Daten miteinander verknüpfen, als wenn wir versuchen, sie alle in ein paar starren Tabellen zusammenzufassen. Es hat uns auch gezeigt, dass Verbindungen selbst eine Form von Information sind. Es gibt unendlich viele Arten von Beziehungen: Eltern-Kind, Käufer-Produkt, Freund-Freundin und so weiter. Wie Berners-Lee feststellte, erhalten wir durch Verbindungen eine Bedeutung. Wenn wir wissen, dass jemand ein Elternteil ist, können wir daraus schließen, dass er bestimmte Lebenserfahrungen gemacht hat und bestimmte Sorgen hat. Wir können auch Vermutungen darüber anstellen, wie die Eltern und das Kind miteinander umgehen werden.

Das Web hat jedoch nur verdeutlicht, was schon immer galt: Datenbeziehungen sind wichtig, wenn es darum geht, Daten darzustellen und zu analysieren. Diagramme können den Informationsgehalt von Beziehungen besser darstellen als Tabellen. Dieses angereicherte Datenformat eignet sich besser zur Darstellung komplexer Informationen und liefert aufschlussreichere Ergebnisse für die Analyse. Geschäftsorientierte Datenanalysten schätzen den intuitiven Aspekt der grafischen Darstellung von Beziehungen, und Daten wissenschaftler stellen fest, dass der reichhaltigere Inhalt zu genaueren maschinellen Lernmodellen führt. Außerdem sind Graphdatenbanken oft schneller als relationale Datenbanken, wenn es darum geht, mehrere Ebenen von Verbindungen (oder mehrere Hops) zu durchsuchen.

Struktur ist wichtig

Die Gründer von Google erkannten, dass das Internet zu groß werden würde, um von jedem erfasst zu werden. Wir würden Werkzeuge brauchen, die uns bei der Suche nach Seiten und deren Empfehlung helfen. Eine Schlüsselkomponente von Googles frühem Erfolg war PageRank, ein Algorithmus, der das Internet als eine Reihe miteinander verbundener Seiten modelliert und entscheidet, welche die einflussreichsten oder maßgeblichen Seiten sind, und zwar allein auf der Grundlage ihres Vernetzungsmusters.

Im Laufe der Jahre sind die Suchmaschinen immer besser darin geworden, aus unseren Suchanfragen abzuleiten, was wir wirklich wissen wollen und nützlich finden. Eines von Googles Werkzeugen dafür ist der Knowledge Graph, eine vernetzte Sammlung von kategorisierten und getaggten Fakten und Konzepten, die aus dem gesamten Web stammen. Nachdem die Suchanfrage des Nutzers analysiert wurde, um nicht nur die oberflächlichen Wörter, sondern auch die impliziten Kategorien und Ziele zu verstehen, durchsucht Google seinen Knowledge Graph, um die am besten passenden Fakten zu finden, und stellt sie dann in einer gut formatierten Seitenleiste dar. Nur ein Graph hat die Flexibilität und Ausdruckskraft, um dieses Universum von Fakten sinnvoll zu nutzen.

Gemeinschaften sind wichtig

Facebook startete als soziales Netzwerk für College-Studenten und hat sich zum weltweit größten sozialen Online-Netzwerk entwickelt. Es liegt auf der Hand, dass sich Facebook um Netzwerke und Graphen kümmert. Aus der Sicht eines jeden Nutzers gibt es sich selbst und seine Freunde. Auch wenn wir individuell handeln, neigen Menschen dazu, sich in Gemeinschaften zusammenzuschließen, die sich entwickeln und Einfluss haben, als wären sie selbst lebendige Wesen. Gemeinschaften haben einen starken Einfluss darauf, welche Informationen wir erhalten und wie wir uns eine Meinung bilden. Unternehmen nutzen das Verhalten von Gemeinschaften, um ihre Produkte zu bewerben. Menschen nutzen soziale Netzwerke auch, um für politische Ziele zu werben. Das Aufspüren dieser Gemeinschaften ist wichtig, um die soziale Dynamik zu verstehen, aber du wirst die Gemeinschaften nicht in einer tabellarischen Ansicht sehen.

Muster von Verbindungen sind wichtig

Die gleichen Informationen können entweder in tabellarischer oder in grafischer Form dargestellt werden, aber die grafische Form zeigt uns Dinge, die in der Tabelle nicht sichtbar sind. Denk an einen Stammbaum. Wir könnten alle Eltern-Kind-Beziehungen in einer Tabelle auflisten, aber der Tabelle würden wichtige Muster entgehen, die sich über mehrere Beziehungen erstrecken: Familie, Enkelkinder, Cousins.

Ein weniger offensichtliches Beispiel ist eine Grafik von Finanztransaktionen. Finanzinstitute und Anbieter suchen nach bestimmten Transaktionsmustern, die auf mögliche betrügerische oder geldwäscherelevante Aktivitäten hindeuten. Ein Muster ist ein großer Geldbetrag, der von einer Partei zur anderen transferiert wird, wobei ein hoher Prozentsatz des Geldes zum Ursprung zurückkehrt: ein geschlossener Kreislauf. Abbildung 1-2 zeigt solche Schleifen, die aus einer Graphdatenbank mit Millionen von Transaktionen aus unserem Finanzbetrugsbeispiel in Kapitel 5 extrahiert wurden. Andere Muster können linear oder Y-förmig sein; alles ist möglich. Das Muster hängt von der Art der Daten und der Frage ab, die dich interessiert.

Graph search results showing sequences of transactions in a closed loop
Abbildung 1-2. Graphische Suchergebnisse, die die Abfolge von Transaktionen in einem geschlossenen Kreislauf zeigen (eine größere Version dieser Abbildung findest du unter https://oreil.ly/gpam0102)

Muster können nicht nur von der Form, sondern auch von der Art des Scheitels und der Art der Kante abhängen. In Abbildung 1-2 gibt es zwei Arten von Scheitelpunkten: Konten und Transaktionen (ja, die Transaktionen sind Scheitelpunkte, nicht die Kanten). Wenn wir wollen, können wir Person und Konto in verschiedene Einheiten aufteilen. Eine Person kann mit mehreren Konten verbunden sein. Diese Aufteilung ermöglicht es uns, das Verhalten einer Person und nicht nur eines Kontos zu analysieren. Die Modellierung wichtiger Konzepte als Vertex-Typen ermöglicht umfangreichere analytische Suchmöglichkeiten, wie wir in späteren Kapiteln sehen werden .

Kanten schneiden besser ab als Tabellenverbindungen

Es stimmt , dass man Eckpunkte als Tabellen und Kanten als Tabellen darstellen kann. Was ist eigentlich anders an einem Graphen, und warum behaupten wir, dass er bei Multihop-Operationen schneller ist? Zunächst einmal ist der Graph nicht nur die Visualisierung. Wir visualisieren Daten für den menschlichen Komfort, aber der Computer braucht diesen visuellen Aspekt gar nicht.

Der Leistungsvorteil von Graphen ergibt sich aus der Art und Weise, wie die Suche nach und die Nutzung von Verbindungen in einer relationalen Datenbank im Gegensatz zu einer Graphdatenbank abläuft. In einer relationalen Datenbank gibt es keine Verbindung zwischen Tabellen, bis du eine Abfrage ausführst. Ja, wenn du einen Fremdschlüssel in einer Tabelle deklariert und erzwungen hast, um auf eine andere Tabelle zu verweisen, dann weißt du, dass der Wert der Fremdschlüsselspalte einem Primärschlüsselwert in der zugehörigen Tabelle entsprechen wird. Das bedeutet nur, dass in zwei verschiedenen Tabellen doppelte Daten gespeichert sind, aber du musst trotzdem nach den passenden Datensätzen suchen.

Nehmen wir eine einfache Datenbank, die die Einkäufe der Kunden verfolgt. Wir haben drei Tabellen: Person, Artikel und Einkäufe, wie in Abbildung 1-3 dargestellt. Angenommen, wir wollen alle Einkäufe von Person B wissen. Die Tabelle Käufe ist nach Datum und nicht nach Person geordnet, also müssen wir die gesamte Tabelle durchsuchen, um die Einkäufe von Person B zu finden. Bei großen Datenbanken ist das sehr ineffizient.

Relational table structure for Person-Purchase-Item database
Abbildung 1-3. Relationale Tabellenstruktur für die Datenbank Person-Kauf-Artikel

Das ist ein häufiges Problem. Deshalb haben relationale Datenbanken eine Lösung entwickelt: Sekundärindizes. So wie der Index eines Nachschlagewerks dir die Seitenzahlen der Stellen nennt, an denen bestimmte wichtige Themen auftauchen, sagt dir ein Tabellenindex die Zeilenadresse, in der bestimmte Spaltenwerte erscheinen. Abbildung 1-4 skizziert die Idee der Indizes für die Spalten PID (Personen-ID) und IID (Artikel-ID) in der Tabelle Einkäufe. Toll, jetzt wissen wir, dass die Einkäufe von Person B in den Zeilen 4, 6, 8 und 10 der Tabelle aufgeführt sind. Es gibt jedoch noch einige Kompromisse. Es kostet Zeit und Speicherplatz, einen Index zu erstellen und ihn dann zu pflegen, wenn sich die Datenbank weiterentwickelt, und es ist immer noch ein zusätzlicher Schritt, den Index aufzurufen, anstatt direkt zu den Datenzeilen zu gehen, die das Gesuchte enthalten. Der Index selbst ist eine Tabelle. Wie schnell können wir Person B unter allen Personen finden?

Ohne Index:

  1. Jede Zeile in der Tabelle Einkäufe lesen (langsam und nicht skalierbar).

Mit Index:

  1. Gehe zu einem sekundären Index für die Tabelle "Einkäufe".

  2. Finde die Zeile, die dich interessiert (kann schnell sein).

  3. Verwende den Index.

Secondary indexes for Purchase table
Abbildung 1-4. Sekundärindizes für die Tabelle Einkäufe

Mit einer Graphdatenbank oder Graphanalyseplattform entfällt das Problem, Tabellen zu durchsuchen und Indizes zu erstellen, um Verbindungen zu finden: Die Verbindungen sind bereits vorhanden.

In einem Graphen zeigt direkt auf den Endpunkt einer Kante. Es ist nicht nötig, eine Tabelle zu lesen und eine zusätzliche Indexierungsstruktur aufzubauen. Während der Geschwindigkeitsunterschied bei einer einzigen Verbindung gering sein mag, kann ein Graph hunderte Male schneller sein, wenn du dies über eine Kette von Verbindungen wiederholen willst und wenn du viele Datensätze, wie z. B. ganze Tabellen, verbinden musst. Nehmen wir zum Beispiel an, wir wollen diese Frage beantworten: "Finde die Artikel, die von Personen gekauft wurden, die auch den Artikel gekauft haben, den du gerade gekauft hast." Abbildung 1-5 zeigt genau das, wobei "du" Person A bist:

  1. Person A hat Gegenstand 1 gekauft.

  2. Die Personen B, C und D haben auch Artikel 1 gekauft.

  3. Die Personen B, C und D haben auch die Artikel 2, 3, 4 und 5 gekauft.

Graph structure for Person-Purchase-Item database
Abbildung 1-5. Graphenstruktur für die Datenbank Person-Kauf-Artikel

Dies ist eine Drei-Hüpfer-Anfrage - ziemlich einfach für einen Graphen. Wir durchlaufen insgesamt 9 Knoten und 11 Kanten, um diese Frage zu beantworten.

In einem tabellenbasierten System würde dies drei Tabellen-Joins erfordern. Eine gute Abfrageoptimierung und Indexierung reduziert den Arbeitsaufwand, so dass er dem sehr effizienten Graphenmodell nahe kommt, allerdings um den Preis, dass zwischen den Datentabellen und den Indizes hin und her gewechselt und die Indexabfragen durchgeführt werden müssen. Der Graph braucht für diese Abfrage keine Indizes, weil die Verbindungen bereits eingebaut und optimiert sind.

Eine Warnung: Der volle Leistungsvorteil kommt nur bei "nativen" Graphen zum Tragen, die von Grund auf als Graphen konzipiert sind. Es ist möglich, ein Graphensystem auf einer tabellarischen Datenbank aufzubauen. Diese Kombination funktioniert wie ein Graph, aber nicht wie ein Graph.

Graph Analytics und maschinelles Lernen

Der vielleicht größte Vorteil von graphenstrukturierten Daten ist, dass sie die Analyseergebnisse und die Leistung verbessern können. Wir sammeln und speichern Daten aus vielen Gründen. Manchmal wollen wir einfach nur eine bestimmte Information genau so abrufen, wie sie zuvor aufgezeichnet wurde. Ein Beispiel: Ein Kreditkartenunternehmen zeichnet jede deiner Transaktionen auf. Jeden Monat schickt es dir einen Kontoauszug, auf dem alle deine Transaktionen und Zahlungen aufgelistet sind. Für diese einfache Auflistung und Summierung reichen Datentabellen aus.

Heutzutage müssen Unternehmen mehr mit ihren Daten machen als nur diese grundlegenden Aufgaben. Sie müssen mehr Einnahmemöglichkeiten finden und nutzen, Verluste durch Betrug und Verschwendung verringern und Risiken reduzieren. Das Erkennen von Mustern in ihren Daten kann bei all diesen Aufgaben helfen. Was ist zum Beispiel das Muster deiner Kreditkartenausgaben im Laufe der Zeit? Kann man dich mit anderen Personen mit ähnlichen Mustern in eine Kategorie einordnen? Wie kann das Unternehmen die Beziehungen in den sozialen Netzwerken für seine Interessen nutzen, z. B. um das Geschäft durch Empfehlungen zu fördern oder das Verhalten aufgrund von Familienbeziehungen vorherzusagen? Das Unternehmen verfügt über Kundendaten aus verschiedenen Quellen. Datenunterschiede wie Tippfehler, Unterschiede bei den erlaubten Zeichen, Namens- oder Adressänderungen und die bewusste Verwendung unterschiedlicher Online-Persönlichkeiten durch die Kunden können dazu führen, dass sie wie mehrere verschiedene Personen erscheinen. Kann das Unternehmen diese Datensätze mithilfe von Analysen erkennen und integrieren? Begehst du Kartenbetrug, oder hat jemand deine Kartennummer gestohlen?

Bei der Analyse geht es darum, Muster zu erkennen. Muster sind Sammlungen von Beziehungen, die auf eine bestimmte Art und Weise strukturiert sind, was auch genau das ist, was Diagramme sind. Ein Muster kann sowohl strukturelle als auch quantitative Aspekte haben, wie z. B. "der durchschnittliche Haushalt hat 1,4 Haustiere". Der strukturelle Teil (die Wohnbeziehungen, die einen Haushalt definieren, und die Beziehung zwischen bestimmten Tieren und Haushalten) kann als Graphmusterabfrage kodiert werden. Graphdatenbanken und Graphanalyseplattformen können natürlich auch quantitative Analysen durchführen. Teil 2 dieses Buches wird dir helfen, Graphanalysen zu verstehen und anzuwenden.

Graph-unterstütztes maschinelles Lernen

Maschinelles Lernen ist und nutzt Daten aus der Vergangenheit, um ein Muster zu erkennen, das uns helfen könnte, zukünftige Aktivitäten vorherzusagen. Da Graphen die natürliche Art sind, Muster darzustellen, zu speichern und zu analysieren, liegt es nahe, dass Graphen uns helfen, bessere Vorhersagen zu treffen.

Konventionelles überwachtes maschinelles Lernen geht von einigen Annahmen über die Daten aus, die die Analyse vereinfachen und gut mit tabellarischen Daten funktionieren. Erstens gehen wir davon aus, dass jeder Datenpunkt isoliert existiert: Jeder Datensatz in unserem Datensatz ist statistisch unabhängig von jedem anderen Datensatz. Zweitens gehen wir davon aus, dass die Datenpunkte identisch verteilt sind, wenn wir überwachte maschinelle Lernmodelle erstellen. Wir gehen also davon aus, dass jede Stichprobe aus der gleichen Verteilung stammt. Der Begriff für diese beiden Annahmen ist als unabhängig und identisch verteilt (i.i.d.) bekannt. In der Realität ist das Phänomen der Gleichverteilung jedoch nicht immer gegeben.

Um die genauesten Modelle für maschinelles Lernen zu erhalten, müssen wir die Beziehungen zwischen den Datenpunkten berücksichtigen. Wenn wir z. B. ein soziales Netzwerk modellieren, in dem Menschen miteinander interagieren, ist es wahrscheinlicher, dass Menschen, die die gleichen Freunde haben, miteinander in Kontakt kommen als mit anderen, die keine gemeinsamen Freunde haben. Graphen ermöglichen es uns, die Beziehungen zwischen den Datenpunkten zwischen gemeinsamen Freunden explizit zu nutzen, weil wir die Beziehungen und nicht nur die Knoten unabhängig voneinander modellieren.

Es gibt verschiedene Möglichkeiten, wie Graphdaten das maschinelle Lernen verbessern können. Eine Möglichkeit besteht darin, ausgewählte Graphenalgorithmen oder andere Graphenabfragen zu verwenden, um die relationalen Eigenschaften von Datenpunkten (Vertices) zu bewerten. Die PageRank-Werte von Parteien in einem Transaktionsgraphen haben zum Beispiel geholfen, Betrüger vorherzusagen. Du kannst diese graphenbasierten Merkmale, die die Beziehungen zwischen Datenpunkten verkörpern, nutzen, um deine bestehenden Merkmalsätze zu erweitern, während du deine bestehenden Methoden zur Modellschulung beibehältst.

Anstatt diesem traditionellen Ansatz des maschinellen Lernens zu folgen, bei dem die Merkmale in der Feature-Engineering-Phase entworfen und handverlesen werden, kannst du Merkmale automatisch aus dem Graphen generieren, indem du die Struktur des Graphen lernst. Dieses so genannte Lernen der Graphenstruktur macht das Feature Engineering überflüssig. Es ist weniger vom Fachwissen des Analysten abhängig, um aussagekräftige Merkmale zu entwickeln, da es einen datengesteuerten Ansatz verfolgt. Es gibt zwei Arten des Lernens der Graphenrepräsentation: Einbettung und graphneutrale Netzwerke. Einbettungstechniken erzeugen Vektoren, die mit jedem Datenpunkt verbunden sind. Wir können diese Einbettungsvektoren an jeden nachgelagerten Algorithmus für maschinelles Lernen weitergeben, um sie in unsere Vorhersageaufgabe einzubeziehen. Neuronale Netze mit Graphen (GNN) entsprechen den herkömmlichen neuronalen Netzen ( ), mit dem Unterschied, dass sie die Verbindungen des Graphen während des Trainingsprozesses in Betracht ziehen. Es ist nur eine leichte Übertreibung zu sagen, dass GNNs das tun, was andere neuronale Netze tun, mit dem Potenzial für bessere Ergebnisse. Teil 3 dieses Buches ist dem graphengestützten maschinellen Lernen gewidmet.

Kapitel Zusammenfassung

In diesem Kapitel haben wir gelernt, dass ein Graph eine abstrakte Datenstruktur ist, die aus Scheitelpunkten und Verbindungen zwischen diesen Scheitelpunkten, den Kanten, besteht. Graphen ermöglichen es uns, Daten miteinander zu verbinden, Muster und Gemeinschaften zu entdecken, besser als relationale Datenbanken. Kanten funktionieren besser als Tabellen-Joins, weil Kanten die Knotenpunkte direkt mit ihrem Endpunkt verbinden und es nicht nötig ist, eine Tabelle zu lesen und eine zusätzliche Indexierungsstruktur aufzubauen.

Die Graphenanalyse ist leistungsstark, weil sie Muster in den Daten effizient erforscht und identifiziert. Graph-Analysen können die Analyseleistung verbessern und Dinge aufdecken, die mit anderen Methoden nicht entdeckt werden.

Schließlich haben wir gesehen, dass grafisch strukturierte Daten uns dabei helfen, mit maschinellen Lernmodellen bessere Vorhersagen zu treffen. Graphen ermöglichen es uns, Beziehungen zwischen Datenpunkten explizit zu nutzen, wodurch unser Modell näher an dem natürlichen Phänomen ist, das wir untersuchen. Wenn wir die Beziehungen auf diese Weise modellieren, können wir Graphdarstellungen lernen, die automatisch Merkmale aus dem Graphen generieren, anstatt sie in der Feature-Engineering-Phase von Hand auszuwählen.

Im nächsten Kapitel werden wir dein Verständnis von Graphenkonzepten und -terminologie erweitern und dich auf den Weg bringen, die Welt durch eine graphische Brille zu sehen.

1 "Killerapplikation", Wikipedia, zuletzt aktualisiert am 14. Mai 2023, https://en.wikipedia.org/wiki/Killer_application.

Get Graphengestützte Analysen und maschinelles Lernen mit TigerGraph now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.