Wissensgraphen und maschinelles Lernen sind beides große Hypes im Technologiebereich. In diesem Blogbeitrag wird die Beziehung zwischen beiden erläutert.
Wenn Sie sich einen Überblick über Wissensgraphen und Anwendungsbeispiele verschaffen wollen, sollten Sie einen Blick auf unseren früheren Blogbeitrag werfen: "Was ist ein Wissensgraph und was kann er für Sie tun?".
Wissensgraphen und maschinelles Lernen lassen sich auf drei verschiedene Arten miteinander verknüpfen:
Alle drei Anwendungsfälle beruhen auf aktuellen Forschungsergebnissen zum maschinellen Lernen.
Der Aufbau eines Wissensgraphen ist traditionell ein langwieriger und manueller Prozess. Sie müssen zwei Dinge tun:
Bei beiden Schritten kann das maschinelle Lernen von Nutzen sein.
Anstatt die Ontologie mit einem Top-Down-Ansatz vorzudefinieren, könnten wir den Prozess umkehren. Stattdessen gehen wir von unstrukturierten Daten wie Text oder Bildern aus und extrahieren Entitäten und ihre Beziehungen aus diesen Daten, während wir nebenbei eine Ontologie lernen.
Nehmen wir an, wir haben die folgenden unstrukturierten Textdaten:
Stan Callewaert ist der größte Filmstar in dem Film Titanic. Auch Leonardo DiCaprio spielt in "Titanic" mit.
Mit Hilfe von zwei maschinellen Lerntechniken(Extraktion von Entitäten und Extraktion von Beziehungen) könnten wir 4 Entitäten extrahieren:
und 2 Beziehungen aus diesem Text:
Als Nächstes benötigen wir einige intelligentere Algorithmen, um die von uns extrahierten Informationen zunächst auf eine gelernte Ontologie abzubilden. In diesem Fall muss der Algorithmus zunächst erkennen, dass es eine Beziehung gibt, die "ist ein Akteur in" darstellt. Dann muss der Algorithmus die beiden extrahierten Beziehungen als diese Beziehung klassifizieren.
Dann müssen wir auch die Entitäten aufeinander abbilden, wenn sie sich auf dieselbe Entität beziehen. In diesem Fall sind "der Film Titanic" und "Die Titanic" tatsächlich derselbe Film, also müssen wir das Entity-Mapping mit noch mehr Algorithmen für maschinelles Lernen durchführen.
Wenn alles gut geht, erhalten wir ein Mini-Wissensdiagramm wie dieses:
Dieser Abschnitt berührt eine wichtige Frage der KI-Forschung: "Was ist Intelligenz und kann man sie erreichen, indem man nur aus Beispielen verallgemeinert?" *geht stumpf vorbei*
Die Befürworter der "Verallgemeinerung nur anhand von Beispielen" glauben fest an die Möglichkeiten des maschinellen Lernens. Sie sagen, dass man nur genügend Daten braucht und dass Musterlernen und die Modellierung von Wahrscheinlichkeitsverteilungen in diesen Daten ausreichen, um Intelligenz zu erreichen.
Auf der anderen Seite stehen diejenigen, die meinen, dass maschinelles Lernen nicht ausreicht. Ihr Argument ist, dass Intelligenz einen "gesunden Menschenverstand" braucht. Dass Intelligenz eine definierte Semantik und eine hierarchische Struktur der ihr bekannten Konzepte braucht.
Nun gut, zurück zu unserem Planeten.
Ein praktisches Beispiel für Fakten, die maschinelle Lernmodelle unterstützen, ist die generative KI. Generative KI ist ein Zweig des maschinellen Lernens, der darauf abzielt, neue, nicht vorhandene Inhalte zu generieren, die so aussehen, als wären sie echt. Wenn Sie Niederländisch oder Deutsch sprechen, können Sie hier das ML6-eigene Textgenerierungsmodell ausprobieren. (Und hier ist eine englische Version)
Wenn Sie die Modelle ausprobieren, werden Sie feststellen, dass sie eine grammatikalisch korrekte Sprache produzieren, die aber aus sachlicher Sicht oft völlig falsch ist.
Eine Lösung könnte darin bestehen, das Wissen aus einem Wissensgraphen in das generative System einfließen zu lassen. ML6 hat eine weitere großartige Demo und einen Blogbeitrag darüber, wie Modelle für maschinelles Lernen Text auf der Grundlage von Fakten generieren können.
In unserem anderen Blogbeitrag über Wissensgraphen haben wir ein zweites Beispiel dafür gegeben, wie Wissensgraphen Modelle für maschinelles Lernen unterstützen können. Wir zeigen, wie eine Suchmaschine anhand der in einem Wissensgraphen gespeicherten Semantik und Hierarchie lernen kann, den Kontext einer Benutzeranfrage zu verstehen.
Wissensgraphen sind eigentlich ein Spezialfall der allgemeineren Kategorie der Graphen. Graphen an sich sind ein großes Thema in der Informatik und umfassen im Grunde alles, was aus verbundenen Knoten besteht. Ein Wissensgraph ist also einfach ein beschrifteter und gerichteter Graph.
Das bedeutet auch, dass wir eine Reihe von Graphenalgorithmen und Theorien aus der Informatik zu Wissensgraphen veröffentlichen können. Da wir an maschinellem Lernen interessiert sind, werden wir uns einige Graphenalgorithmen ansehen, die maschinelles Lernen beinhalten.
Drei Beispiele für Dinge, die wir tun können, sind:
Lassen Sie uns die Klassifizierungsaufgabe näher betrachten.
Wenn wir einen Knoten im Graphen mit maschinellem Lernen klassifizieren wollen, müssen wir eine Funktion lernen. Die Funktion muss den Raum, in dem der Graph lebt, in einen anderen Raum transformieren, der uns eine Klassifizierung ermöglicht.
In diesem Beispiel führt der Algorithmus eine binäre Klassifizierung durch. Jeder Knoten ist entweder rot oder grün und wir haben einige Beispielfarben. Anhand der Beispiele wollen wir die Farben für die leeren Knoten vorhersagen.
Hier ist der Ausgabebereich einfach der Bereich zwischen 0 und 1. Wir werden das Modell so trainieren, dass es den Graphen transformiert und für jeden Knoten eine Zahl zwischen 0 und 1 vorhersagt. Liegt die Ausgabezahl zwischen 0 und 0,5, ist die Klassifizierung rot. Liegt die Zahl zwischen 0,5 und 1, so ist die Klassifizierung grün.
Wir können dieses Beispiel auch auf einen unvollständigen Zitationsgraphen ausweiten. Es handelt sich um einen Graphen, in dem Arbeiten mit ihren Autoren und deren Zitationen verknüpft sind, wir aber nicht für alle Autoren wissen, zu welchem Institut sie gehören. Wir können nun einen Algorithmus trainieren, der die Zugehörigkeit der Autoren vorhersagt, denen eine solche Zugehörigkeit fehlt, so wie wir die Farben im Dummy-Beispiel vorhergesagt haben.
Wenn wir nun einen Blick auf das Modell für maschinelles Lernen werfen, liegt die eigentliche Magie darin, wie der Algorithmus den Graphen in einen Vektor umwandelt, der im Ausgaberaum lebt. Die meisten Modelle für maschinelles Lernen arbeiten mit Bildern oder Text, um Dinge wie Übersetzung oder Objekterkennung zu erledigen. Hier ist die Eingabe ein Graph.
Erst vor kurzem haben Forscher Modellarchitekturen entwickelt, die auch Graphen verarbeiten können. Manchmal sind sie von Computer-Vision-Anwendungen wie Graph Convolutional Neural Networks beeinflusst. Beispiele hierfür sind node2vec und GraphSAGE.
Wissensgraphen und maschinelles Lernen sind die beiden Stränge der Doppelhelix, die die DNA intelligenter Systeme bildet. Beide werden sich weiter entwickeln und sich gegenseitig an neue Grenzen bringen, also behalten Sie dieses Thema im Auge!