DE102021004591A1 - Für Graphen vorgesehene neuronale Netzwerke für Datensätze mit Heterophilie - Google Patents

Für Graphen vorgesehene neuronale Netzwerke für Datensätze mit Heterophilie Download PDF

Info

Publication number
DE102021004591A1
DE102021004591A1 DE102021004591.2A DE102021004591A DE102021004591A1 DE 102021004591 A1 DE102021004591 A1 DE 102021004591A1 DE 102021004591 A DE102021004591 A DE 102021004591A DE 102021004591 A1 DE102021004591 A1 DE 102021004591A1
Authority
DE
Germany
Prior art keywords
node
graph
data structure
assumption
neural network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102021004591.2A
Other languages
English (en)
Inventor
Ryan Rossi
Tung Mai
Nedim Lipka
Jiong Zhu
Anup Rao
Viswanathan Swaminathan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adobe Inc
Original Assignee
Adobe Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Adobe Inc filed Critical Adobe Inc
Publication of DE102021004591A1 publication Critical patent/DE102021004591A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2132Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
    • G06F18/21322Rendering the within-class scatter matrix non-singular
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24147Distances to closest patterns, e.g. nearest neighbour classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/29Graphical models, e.g. Bayesian networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Databases & Information Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)

Abstract

Bereitgestellt werden Techniken zum Trainieren von für Graphen vorgesehenen neuronalen Netzwerken mit heterophilen Datensätzen und Generieren von Vorhersagen für derartige Datensätze mit Heterophilie. Eine Rechenvorrichtung empfängt einen Datensatz, der eine Graphendatenstruktur beinhaltet, und verarbeitet den Datensatz unter Nutzung eines für Graphen vorgesehenen neuronalen Netzwerkes. Das für Graphen vorgesehene neuronale Netzwerk definiert Vorannahmevektoren jeweils entsprechend Knoten der Graphendatenstruktur, führt eine kompatibilitätsgeleitete Weitergabe ausgehend von dem Satz von Vorannahmevektoren aus und nutzt dabei eine Kompatibilitätsmatrix. Das für Graphen vorgesehene neuronale Netzwerk sagt ein Klassenetikett für einen Knoten der Graphendatenstruktur auf Grundlage der kompatibilitätsgeleiteten Weitergaben und einer Kenngröße wenigstens eines Knotens innerhalb einer Nachbarschaft des Knotens vorher. Die Rechenvorrichtung gibt die Graphendatenstruktur aus, die von einem Softwarewerkzeug zum Modifizieren des Betriebes einer Rechenumgebung nutzbar ist.

Description

  • Technisches Gebiet
  • Die vorliegende Offenbarung betrifft allgemein für Graphen vorgesehene neuronale Netzwerke (Graph Neural Networks). Die vorliegende Offenbarung betrifft insbesondere, jedoch nicht im Sinne einer Beschränkung, für Graphen vorgesehene neuronale Netzwerke zum Lernen aus heterophilen Datensätzen und Generieren von Vorhersagen für derartige Datensätze mit Heterophilie.
  • Hintergrund
  • Für Graphen vorgesehene neuronale Netzwerke GNNe (Graph Neural Networks GNNs) modellieren Datensätze unter Nutzung von Knoten, die durch Kanten miteinander verbunden sind. Die Datensätze können von den GNNen verarbeitet werden, um Vorhersagen herzuleiten, die den Datensätzen zugeordnet sind (so beispielsweise ein Merkmal, ein Klassenetikett (class label), einen Typ und dergleichen). Allgemein beinhalten bestehende GNNe eine implizit vorausgesetzte starke Homophilie (beispielsweise eine Angabe dahingehend, dass Datensätze verwandt sind oder gemeinsame Merkmale aufweisen). Bestehende GNNe setzen beispielsweise voraus, dass Knoten des für Graphen vorgesehenen neuronalen Netzwerkes, die durch eine Kante verbunden sind, beispielsweise dadurch zusammenhängen, dass sie denselben Attributwert, denselben Typ, dasselbe Klassenetikett oder dergleichen aufweisen. Diese GNNe können gute Ergebnisse (beispielsweise entsprechend dem mittleren absoluten Fehler, der Wurzel aus dem mittleren quadrierten Fehler, der Prozentkorrekturklassifizierung oder dergleichen) liefern, wenn die von den GNNen verarbeiteten Datensätze eine starke Homophilie beinhalten. Eine derartige starke Homophilie ist jedoch bei realweltlichen Daten, so beispielsweise Kundenprofildaten oder heterogenen Graphendaten, selten zu beobachten. Bei realweltlichen Datensätzen sind Knoten oftmals mit Knoten verbunden, die andere Attributwerte, andere Typen, andere Klassen und dergleichen aufweisen. Daher liefern bestehende GNNe bei realweltlichen Datensätzen keine guten Ergebnisse.
  • Zusammenfassung
  • Bestimmte Ausführungsformen implizieren ein Trainieren von für Graphen vorgesehenen neuronalen Netzwerken mit heterophilen Datensätzen und ein Generieren von Vorhersagen für derartige Datensätze mit Heterophilie. Eine Rechenvorrichtung empfängt beispielsweise einen Datensatz, der eine Graphendatenstruktur (graph data structure) beinhaltet. Die Rechenvorrichtung verarbeitet den Datensatz mit einem für Graphen vorgesehenen neuronalen Netzwerk. Das für Graphen vorgesehene neuronale Netzwerk (graph neural network) definiert einen Satz von Vorannahmevektoren (prior belief vectors) jeweils entsprechend Knoten der Graphendatenstruktur. Das für Graphen vorgesehene neuronale Netzwerk führt eine kompatibilitätsgeleitete Weitergabe ausgehend von dem Satz von Vorannahmevektoren unter Nutzung einer Kompatibilitätsmatrix aus. Die Kompatibilitätsmatrix modelliert eine Wahrscheinlichkeit dafür, dass Knoten aus verschiedenen Klassen verbunden sind. Das für Graphen vorgesehene neuronale Netzwerk sagt ein Klassenetikett (dass label) für einen Knoten der Graphendatenstruktur auf Grundlage der kompatibilitätsgeleiteten Weitergaben und einer Kenngröße wenigstens eines Knotens innerhalb einer Nachbarschaft des Knotens vorher. Das für Graphen vorgesehene neuronale Netzwerk wendet das Klassenetikett sodann auf den Knoten an. Die Rechenvorrichtung gibt die Graphendatenstruktur, die von dem für Graphen vorgesehenen neuronalen Netzwerk verarbeitet wird, aus. Die so verarbeitete Graphendatenstruktur ist von einem Softwarewerkzeug zum Modifizieren des Betriebes einer Rechenumgebung nutzbar.
  • Diese illustrativen Beispiele sind nicht dafür aufgeführt, die Offenbarung zu beschränken oder zu definieren, sondern sollen zu deren Verständnis beizutragen. Zusätzliche Ausführungsformen werden in der Detailbeschreibung erläutert, wobei die weitere Beschreibung dort erfolgt.
  • Figurenliste
  • Merkmale, Ausführungsformen und Vorteile der vorliegenden Offenbarung erschließen sich besser bei einem Studium der nachfolgenden Detailbeschreibung in Verbindung mit der begleitenden Zeichnung.
    • 1 zeigt ein Beispiel für eine Rechenumgebung zum Konfigurieren und Nutzen eines CPGNN, das Klassenetiketten für Knoten von Eingabegraphen bestimmt, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 2 zeigt ein Beispiel für eine Eingabegraphendatenstruktur, die von einem Graphenverarbeitungssystem verarbeitet wird, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 3 zeigt ein Beispiel für ein CPGNN, das Vorannahmevektoren für Knoten einer Graphendatenstruktur definiert, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 4 ist ein Beispiel für ein CPGNN, das Annahmevektoren über Knoten einer Graphendatenstruktur hinweg weitergibt, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 5 zeigt ein Beispiel für ein CPGNN, das eine Iteration einer kompatibilitätsgeleiteten Weitergabe von Annahmevektoren über Knoten einer Graphendatenstruktur hinweg durchführt, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 6 zeigt ein Beispiel für ein trainiertes CPGNN entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 7 zeigt ein Beispiel für einen Prozess zum Trainieren und Nutzen eines CPGNN zum Vorhersagen einer Kenngröße von Knoten einer Graphendatenstruktur entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 8 zeigt ein Beispiel für einen Prozess zum Trainieren eines CPGNN zum Vorhersagen einer Kenngröße von Knoten einer Graphendatenstruktur entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 9 zeigt ein Beispiel für ein Rechensystem, das zum Implementieren von bestimmten hier beschriebenen Ausführungsformen geeignet ist.
    • 10 zeigt einen exemplarischen Graphen, der die Genauigkeit eines CPGNN, das verschiedene Datensätze verarbeitet, beschreibt, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 11 zeigt eine exemplarische Bewertung der Genauigkeit eines CPGNN bei homophilen und heterophilen Graphen mit Merkmalen entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
    • 12 zeigt eine exemplarische Bewertung der Genauigkeit eines CPGNN bei homophilen und heterophilen Graphen ohne Merkmale entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
  • Detailbeschreibung
  • Die vorliegende Offenbarung beinhaltet Systeme und Verfahren zum Generieren und Trainieren von für Graphen vorgesehenen neuronalen Netzwerken zum Vorhersagen von Kenngrößen unter Nutzung von Datensätzen mit Heterophilie. Wie vorstehend erläutert worden ist, sind bestehende für Graphen vorgesehene neuronale Netzwerke, die Datensätze modellieren und Kenngrößen dieser Datensätze vorhersagen, dahingehend beschränkt, dass sie Homophilie in den Datensätzen voraussetzen, was bei für Graphen vorgesehenen neuronalen Netzwerken eine verringerte Leistungsfähigkeit bedingt. Bestimmte hier beschriebene Ausführungsformen verbessern für Graphen vorgesehene neuronale Netzwerke beispielsweise durch Einbeziehen von Kompatibilitätsmatrizen für eine kompatibilitätsgeleitete Weitergabe von Knoten des für Graphen vorgesehenen neuronalen Netzwerkes. Die hier beschriebenen für Graphen vorgesehenen neuronalen Netzwerke nehmen beispielsweise ein Abbilden bzw. Definieren einer Kompatibilitätsmatrix unter Nutzung von Annahmevektoren von Knoten vor. Die Kompatibilitätsmatrix wird in einem Ende-zu-Ende-Lernsystem gelernt, wenn das für Graphen vorgesehene neuronale Netzwerk dafür trainiert wird, die Leistungsfähigkeit des für Graphen vorgesehenen neuronalen Netzwerkes für Datensätze mit Heterophilie zu verbessern. Das trainierte für Graphen vorgesehene neuronale Netzwerk sagt Merkmale, Typen, Klassenetiketten und dergleichen von Daten in dem Datensatz unabhängig von der Heterophilie oder Homophilie in dem Datensatz vorher, was die Leistungsfähigkeit von für Graphen vorgesehenen neuronalen Netzwerken bei Nutzung von realweltlichen Datensätzen verbessert.
  • Das nachfolgende nicht beschränkende Beispiel ist vorgesehen, um bestimmte Ausführungsformen einzuführen. Eine Rechenvorrichtung empfängt (beispielsweise von einem Nutzer, einer Clientvorrichtung, einer Datenbank und dergleichen) einen Datensatz, der Nutzerprofildaten für eine Grundgesamtheit von Nutzern beinhaltet. Der Datensatz kann in Form einer Graphendatenstruktur oder dergleichen vorliegen, die die Nutzerprofildaten als Knoten, die über Kanten miteinander verbunden sind, darstellt. Jeder Knoten der Graphendatenstruktur stellt ein Nutzerprofil (beispielsweise einen einzelnen Nutzer) dar und beinhaltet einen Merkmalssatz entsprechend dem Nutzerprofil. Jeder Knoten ist mit einer oder mehreren anderen Knoten der Graphendatenstruktur über eine gerichtete oder ungerichtete Kante verbunden.
  • Die Rechenvorrichtung nutzt ein zweites neuronales Netzwerk zum Generieren eines Satzes von Vorhersagen für jeden Knoten der Graphendatenstruktur entsprechend Werten einer Kenngröße des Knotens, für die das für Graphen vorgesehene neuronale Netzwerk eine Vorhersage generieren soll. Das zweite neuronale Netzwerk ist beispielsweise ein Klassifikator, der einen Vorannahmevektor für jeden Knoten der Graphendatenstruktur auf Grundlage der Merkmale dieses Knotens generiert. Der Vorannahmevektor entspricht einer Wahrscheinlichkeitsverteilung von Werten der Kenngröße des Knotens. Entspricht die Kenngröße beispielsweise einem Klassenetikett (beispielsweise einem von einem Etikett A, einem Etikett B, einem Etikett C und so weiter) des Knotens, so stellt der Vorannahmevektor eine Wahrscheinlichkeitsverteilung dar, die jede geschätzte Wahrscheinlichkeit dafür, dass der Knoten einem bestimmten Klassenetikett entspricht, beinhaltet. Dies bedeutet, dass der Vorannahmevektor eine geschätzte Wahrscheinlichkeit dafür, dass der Knoten dem Etikett A entspricht, eine geschätzte Wahrscheinlichkeit dafür, dass der Knoten dem Etikett B entspricht, eine geschätzte Wahrscheinlichkeit dafür, dass der Knoten dem Etikett C entspricht, und so weiter beinhaltet, wobei sich die Wahrscheinlichkeitsverteilung zu 1 summiert.
  • Die Rechenvorrichtung generiert eine Kompatibilitätsmatrix unter Nutzung des Satzes von Vorannahmevektoren. Die Kompatibilitätsmatrix modelliert eine Wahrscheinlichkeit dafür, dass Knoten aus verschiedenen Klassen verbunden sind. Die Rechenvorrichtung gibt den Vorannahmevektor eines jeden Knotens an Knoten in der Nachbarschaft des Knotens (beispielsweise an Knoten, die direkt mit dem Knoten verbunden sind) unter Nutzung der Kompatibilitätsmatrix weiter. Die Rechenvorrichtung führt sodann eine kompatibilitätsgeleitete Weitergabe über k Iterationen, die von der Kompatibilitätsmatrix geleitet werden, durch. Die kompatibilitätsgeleitete Weitergabe aktualisiert jeden Knoten der Graphendatenstruktur, indem sie den Annahmevektor des Knotens und die Annahmevektoren eines jeden Knotens in der Nachbarschaft des Knotens so, wie durch die Kompatibilitätsmatrix geleitet, aggregiert. Die kompatibilitätsgeleitete Weitergabe beinhaltet eine Echounterdrückung, die verhindert, dass der Annahmevektor eines Knotens, der in der Nachbarschaft des Knotens weitergegeben worden ist, zurück an den Knoten weitergegeben wird.
  • Die Rechenvorrichtung trainiert das für Graphen vorgesehene neuronale Netzwerk mit Blick auf die Annahmevektoren und die Kompatibilitätsmatrix, indem sie die Werte der Kompatibilitätsmatrix iterativ zuweist bzw. aktualisiert und dabei eine Verlustfunktion minimiert. Die Verlustfunktion weist drei Komponenten auf, nämlich (1) einen Kreuzentropieverlust aus der Ausgabe des für Graphen vorgesehenen neuronalen Netzwerkes, (2) einen Cotrainingsverlust aus dem zweiten neuronalen Netzwerk und (3) einen Regulierungsterm, der sicherstellt, dass die Kompatibilitätsmatrix um Null herum zentriert bleibt. Während des Trainings weist die Rechenvorrichtung ein Klassenetikett (oder beispielsweise die Kenngröße, zu deren Vorhersage das für Graphen vorgesehene neuronale Netzwerk konfiguriert ist) für jeden Knoten der Graphendatenstruktur, der kein Klassenetikett aufweist, zu.
  • Durch Weitergabe der Annahmevektoren, Durchführen der kompatibilitätsgeleiteten Weitergabe der Annahmevektoren durch k Iterationen und Aktualisieren der Kompatibilitätsmatrix durch Minimieren der Verlustfunktion trainiert die Rechenvorrichtung das für Graphen vorgesehene neuronale Netzwerk dafür, bei Datensätzen mit Heterophilie und/oder Homophilie gute Ergebnisse zu liefern. Die Heterophilie beinhaltet beispielsweise eine Kenngröße eines Datensatzes, bei der vorausgesetzt wird, dass Entitäten, die in einem Datensatz verbunden sind, verschiedenen Klassen entsprechen. Die Heterophilie in einem Datensatz, der zwei Nutzerprofile beinhaltet, die (beispielsweise aufgrund dessen, dass sie dieselbe Webpage besucht haben) verbunden sind, setzt beispielsweise nicht voraus, dass eine Ähnlichkeit zwischen den beiden Nutzerprofilen mit Blick auf die von Interesse seienden Kenngrößen vorhanden ist. Die Homophilie beinhaltet beispielsweise eine Kenngröße eines Datensatzes, bei der vorausgesetzt wird, dass Entitäten, die in dem Datensatz verbunden sind, mit Blick auf die von Interesse seienden Kenngrößen ähnlich sind. Die Homophilie in einem Datensatz, der zwei Nutzerprofile beinhaltet, die (beispielsweise aufgrund dessen, dass sie dieselbe Webpage besucht haben) verbunden sind, setzt beispielsweise voraus, dass eine Ähnlichkeit zwischen den beiden Nutzerprofilen vorhanden ist und dass die beiden Nutzerprofile daher eine gemeinsame von Interesse seiende Kenngröße (beispielsweise ein Attribut, einen Typ, eine Klasse und dergleichen) teilen müssen.
  • Wie hier beschrieben wird, stellen bestimmte Ausführungsformen Verbesserungen für für Graphen vorgesehene neuronale Netzwerke bereit. Das Generieren des für Graphen vorgesehenen neuronalen Netzwerkes beinhaltet die Anwendung von bestimmten Prozessen, darunter das Definieren der Kompatibilitätsmatrix, die Weitergabe von Annahmevektoren, die kompatibilitätsgeleitete Weitergabe und dergleichen, um eine verbesserte technische Wirkung mit Blick auf die Leistungsfähigkeit des für Graphen vorgesehenen neuronalen Netzwerkes bei realweltlichen Datensätzen zu erreichen. Bei einigen Ausführungsformen werden Softwarewerkzeuge benutzt, um Vorgänge auf Grundlage von Vorhersagen, die von dem für Graphen vorgesehenen neuronalen Netzwerk generiert werden, durchzuführen. Beispiele für derartige Vorgänge beinhalten unter anderem das Modifizieren der Betriebsumgebung des für Graphen vorgesehenen neuronalen Netzwerkes (beispielsweise Nutzerschnittstellen entsprechend der Graphendatenstruktur des für Graphen vorgesehenen neuronalen Netzwerkes, das Modifizieren von Datensätzen, die von dem für Graphen vorgesehenen neuronalen Netzwerk verarbeitet werden, das Modifizieren des für Graphen vorgesehenen neuronalen Netzwerkes selbst), das Modifizieren von interaktivem Content auf eine Weise, die für eine Zielentität spezifisch ist (beispielsweise ein Nutzer oder eine Rechenvorrichtung, der/die einem Nutzerprofil zugeordnet ist, und dergleichen), das Generieren einer Empfehlung zum Modifizieren von interaktivem Content auf eine Weise, die für eine Zielentität spezifisch ist, das Übertragen von interaktivem Content an eine bestimmte Rechenvorrichtung, die einer Zielentität zugeordnet ist, Kombinationen hieraus und dergleichen.
  • Beispiele für eine Betriebsumgebung zur Bestimmung von Klassenetiketten für Knoten eines Graphen
  • In der Zeichnung zeigt 1 ein Beispiel für eine Rechenumgebung zum Konfigurieren und Nutzen eines Graphenverarbeitungssystems, das CPGNNe benutzt, um Klassenetiketten für Knoten von Eingabegraphen zu bestimmen, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. Bei dem in 1 dargestellten Beispiel beinhaltet eine Rechenumgebung 100 ein oder mehrere Graphenverarbeitungssysteme 104 und ein Trainingssystem 136. Das Graphenverarbeitungssystem 104 beinhaltet eine oder mehrere Rechenvorrichtungen, die einen Programmcode ausführen, der ein Datensatz verarbeitendes Softwarewerkzeug bereitstellt. Das Graphenverarbeitungssystem 104 beinhaltet, wie in 1 dargestellt ist, ein mit kompatibilitätsgeleiteter Weitergabe (prorogation) arbeitendes für Graphen vorgesehenes neuronales Netzwerk (Compatibility-Guided Propagation (Prorogation) Graph Neural Network CPGNN) 108, eine Nutzerschnittstellenengine 112 und ein neuronales Netzwerk 124. In einigen Fällen kann das Graphenverarbeitungssystem 104 mehrere CPGNNe 108 und/oder neuronale Netzwerke 124 beinhalten. In diesen Fällen ist jedes CPGNN 104 mit einem neuronalen Netzwerk 124 gepaart (beispielsweise in einer Eins-zu-Eins-Beziehung, wenn mehr als ein neuronales Netzwerk 124 vorhanden ist, oder in einer Viele-zu-Eins-Beziehung, wenn weniger neuronale Netzwerke 124 als CPGNNe 108 vorhanden sind).
  • Das Graphenverarbeitungssystem 104 kommuniziert mit einer Nutzervorrichtung 118 und/oder einer oder mehreren anderen Vorrichtungen (nicht gezeigt) unter Nutzung einer Ul-Engine 112 (User Interface Ul, Nutzerschnittstelle), um einen Eingabegraphen 120 zu empfangen. Die Nutzervorrichtung 118 überträgt den Eingabegraphen 120 beispielsweise an die Ul-Engine 112 des Graphenverarbeitungssystems 104. Alternativ kann die Nutzervorrichtung 118 die Übertragung des Eingabegraphen 120 aus einer anderen Quelle, so beispielsweise einer Rechenvorrichtung, einer Datenbank, einem Server, einem Trainingssystem 126 oder dergleichen, veranlassen, indem sie einen Ort des Eingabegraphen 120 an das Graphenverarbeitungssystem 104 überträgt, damit das Graphenverarbeitungssystem 104 diesen erhält, oder indem sie eine Kommunikation an die andere Quelle, die die Übertragung des Eingabegraphen 120 anfordert, überträgt. Die Nutzervorrichtung 118 kann zudem Regeln zur Verarbeitung des Eingabegraphen 120, Randbedingungen zur Verarbeitung des Eingabegraphen 120, Metadaten, die dem Eingabegraphen zugeordnet sind, Etiketten für einen oder mehrere Knoten des Eingabegraphen 120 oder dergleichen übertragen. Die Nutzervorrichtung 118 übermittelt beispielsweise Regeln, die einen Typ der Vorhersage angeben, den das CPGNN beim Verarbeiten des Eingabegraphen 120 generieren soll (beispielsweise Klassenetiketten, ein oder mehrere Merkmale, einen Typ und dergleichen).
  • Der Eingabegraph 120 ist eine Graphendatenstruktur, die einen Satz von Knoten, die miteinander durch Kanten verbunden sind, beinhaltet. Die Graphendatenstruktur stellt einen Datensatz dar (oder modelliert diesen). Ein Beispiel für einen Datensatz beinhaltet Nutzerprofile (beispielsweise Daten, die einzelnen Nutzern zugeordnet sind). Bei diesem Beispiel stellt jeder Knoten der Graphendatenstruktur ein Nutzerprofil unter Nutzung eines Merkmalsvektors dar. In einigen Fällen können Knoten unvollständig sein (beispielsweise einen Teilsatz einer Maximalmenge von Merkmalen beinhalten) oder nicht passende Eigenschaften von Daten relativ zu anderen Knoten beinhalten. Bei dem Beispiel mit dem Nutzerprofil beinhaltet ein erstes Nutzerprofil demographische Information (so beispielsweise Alter, Geschlecht und dergleichen), die einem Nutzer des Nutzerprofils zugeordnet ist, während das zweite Nutzerprofil Verbindungsinformation (beispielsweise die Internetprotokolladresse, die Media-Access-Control-Adresse, den geographischen Ort einer Vorrichtung, die zum Verbinden mit der Webpage benutzt wird, und dergleichen mehr), jedoch keine demographische Information beinhaltet. Jeder Knoten der Graphendatenstruktur ist einem Klassenetikett oder einer Angabe dessen, dass der Knoten unetikettiert ist (dass beispielsweise das Klassenetikett unbekannt ist), zugeordnet.
  • Die Kanten eines Graphen können gerichtet sein (beispielsweise einen Anfangsknoten und einen Zielknoten angeben) oder ungerichtet sein. Die Kante kann angeben, dass zwei Knoten einige Kenngrößen oder Verbindungen teilen, impliziert jedoch gegebenenfalls keine Ähnlichkeit bei den vorherzusagenden Kenngrößen (beispielsweise bei Klassenetiketten, einem oder mehreren Merkmalen, einem Typ und dergleichen) zwischen verbundenen Knoten. Bei einem Beispiel sind zwei Knoten durch eine Kante verbunden, die eine Reihenfolge angibt, in der die Daten, die den Knoten zugeordnet sind, generiert oder empfangen worden sind. Obwohl die beiden Knoten durch eine Kante verbunden sind, weisen die Knoten nicht unbedingt eine Ähnlichkeit mit Blick auf die von Interesse seienden Kenngrößen auf (beispielsweise entsprechen sie verschiedenen Klassen, Typen, beinhalten andere Merkmale und dergleichen).
  • Die Ul-Engine 112 führt Programmcode aus, um eine Schnittstelle zwischen dem Graphenverarbeitungssystem 104 und der Nutzervorrichtung 118 und/oder einer oder mehreren anderen Vorrichtungen bereitzustellen. In einigen Fällen sind die Schnittstellen graphische Nutzerschnittstellen, die graphische Darstellungen des Eingabegraphen 120, des verarbeiteten Eingabegraphen 120 (beispielsweise die Ausgabe aus dem CPGNN 108) und von Information, die der Konfiguration und/oder Ausführung des Graphenverarbeitungssystems 104 zugeordnet ist, bereitstellen. Die Ul-Engine 112 führt zudem Programmcode aus, der Ausgaben, so beispielsweise visuelle Indikatoren der Annahmevektoren und Kompatibilitätsmatrizen, generiert. Die Ul-Engine 112 kann die Annahmevektoren und Kompatibilitätsmatrizen beispielsweise nutzen, um eine visuelle Darstellung des Eingabegraphen 120 mit einer Darstellung von Klassenetiketten, Merkmalen, Typen und dergleichen eines jeden Knotens zu generieren.
  • Die Ul-Engine 112 beinhaltet einen oder mehrere Elemente zum Identifizieren des Eingabegraphen 120 für das Graphenverarbeitungssystem 104. Bei einem Beispiel stellt die Ul-Engine 112 eine graphische Schnittstelle mit einem Eingabeelement bereit, das dafür konfiguriert ist, den Eingabegraph von einer Speichervorrichtung auf der Nutzervorrichtung 118 oder zugeordnet zu dieser in das Graphenverarbeitungssystem 104 hochzuladen. Bei einem weiteren Beispiel stellt die Nutzerschnittstellenengine 106 eine graphische Schnittstelle mit einem Eingabeelement bereit, das dafür konfiguriert ist, einen Ort, so beispielsweise eine Netzwerkadresse oder eine Speicheradresse zu identifizieren, von dem das Graphenverarbeitungssystem 104 den Eingabegraphen 120 beziehen kann.
  • Bei einigen Ausführungsformen präsentiert die Ul-Engine 112 Schnittstellen (beispielsweise Anwendungsprogrammierschnittstellen oder dergleichen), die eine Konfigurierung des Graphenverarbeitungssystems 104 durch die Nutzervorrichtung 118 und/oder durch eine oder mehrere andere Vorrichtungen ermöglichen oder die eine Eingabe in ein Format, das von dem Graphenverarbeitungssystem 104 nutzbar ist, modifizieren. Liegt der Eingabegraph 120 beispielsweise nicht in einem Format (beispielsweise mit Blick auf Dateitypen, Dateistrukturtypen und dergleichen) vor, das von dem Graphenverarbeitungssystem 104 verarbeitet werden kann, so nimmt die Ul-Schnittstelle 104 eine Vorverarbeitung des Eingabegraphen 120 vor, um den Eingabegraphen 120 in einem Format, das verarbeitet werden kann, zu formatieren. In einigen Fällen kann die Ul-Engine 112 den Eingabegraph 120 auch entsprechend der von der Nutzervorrichtung 118 empfangenen Eingabe formatieren, darunter unter anderem durch Strukturieren des Eingabegraphen 120, Hinzufügen von Knoten und/oder Kanten, Entfernen von Knoten und/oder Kanten, Kombinationen hieraus und dergleichen. Die Ul-Engine 120 reicht den Eingabegraphen 120 und die Eingabe von der Nutzervorrichtung 118 sodann an das neuronale Netzwerk 124 weiter.
  • Das Graphenverarbeitungssystem 104 führt das neuronale Netzwerk 124 aus, um Vorannahmevektoren 128 für die Knoten der Graphendatenstruktur zu generieren. Das neuronale Netzwerk 124 ist ein Klassifikator, der einen Satz von Vorhersagen entsprechend Schätzungen von möglichen Klassenetiketten (oder der Kenngröße, die von dem CPGNN 108 vorhergesagt wird) auf Grundlage der Merkmalsvektoren der Knoten generiert. In einigen Fällen kann das neuronale Netzwerk 124 ein beliebiges neuronales Netzwerk sein, das beim Generieren von Vorhersagen keine Homophilie voraussetzt. Ein Vorannahmevektor ist eine Wahrscheinlichkeitsverteilung, die für jedes mögliche Klassenetikett eine Wahrscheinlichkeit dafür angibt, dass ein Knoten zugewiesen werden kann. Bei den Klassenetiketten A, B und C gibt die Annahme beispielsweise eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett A entspricht, eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett B entspricht, und eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett C entspricht, an, wobei die Summe der Wahrscheinlichkeiten gleich 1 ist. Die von dem neuronalen Netzwerk 124 ausgegebenen Vorannahmevektoren 128 werden an das CPGNN 108 weitergereicht.
  • Bei einigen Ausführungsformen werden die Vorannahmevektoren 128 während einer Vortrainingsphase des Graphenverarbeitungssystems 104 generiert. In der Vortrainingsphase wird das neuronale Netzwerk 124 von dem Trainingsenginesystem 136 trainiert. Das Trainingssystem 136 beinhaltet eine Trainingsengine 140, die das Vortraining und das Training des neuronalen Netzwerkes unter Nutzung von Trainingsdaten 144 leitet. Die Trainingsdaten 144 sind Daten, die dem Eingabegraphen 120 (beispielsweise mit ähnlichem Typ oder dergleichen) zugeordnet sind oder entsprechen. Alternativ sind die Trainingsdaten 144 beliebige Daten, die ermöglichen, dass das neuronale Netzwerk 124 dafür trainiert wird, Annahmevektoren zu generieren. Bei einer weiteren Alternative beruhen die Trainingsdaten 144 auf dem Eingabegraphen 120. In diesem Fall setzen die Trainingsdaten 144 Etiketten von Knoten, die in dem Eingabegraphen 120 beinhaltet sind, ein, wenn der Eingabegraph 120 in das Graphenverarbeitungssystem 104 eingegeben wird. Das neuronale Netzwerk 124 wird von der Trainingsengine 140 über eine vorbestimmte Iterationsanzahl trainiert, während das neuronale Netzwerk aus den etikettierten Knoten die Vorannahmevektoren für Knoten, die unetikettiert sind, extrapoliert. Während jeder Iteration wird das neuronale Netzwerk unter Nutzung einer Verlustfunktion, die auf dem Kreuzentropieverlust und der L2-Regulierungsgewichtung beruht, aktualisiert.
  • Das CPGNN 108 empfängt die Vorannahmevektoren 128 von dem neuronalen Netzwerk 124 und dem Eingabegraphen 120. Das Graphenverarbeitungssystem 104 initialisiert eine Kompatibilitätsmatrix 116 (die hier auch als H dargestellt wird). In einigen Fällen, so beispielsweise denjenigen, in denen das CPGNN 108 eine Gewichtungsmatrix beinhaltet, kann die Kompatibilitätsmatrix 116 die Gewichtungsmatrix ersetzen. Die Kompatibilitätsmatrix 116 gibt eine Wahrscheinlichkeit dafür an, dass Knoten, die verbunden sind, verschiedenen Klassen entsprechen. Die Kompatibilitätsmatrix 116 kann durch eine Schätzung Ĥ der (beispielsweise während der Initialisierung) unbekannten Kompatibilitätsmatrix 116 unter Nutzung der Vorannahmevektoren 128, die während des Vortrainings generiert werden, und von Klassenetiketten von Knoten in den Trainingsdaten 144 des Trainingssystems 136 initialisiert werden. Alternativ kann die Kompatibilitätsmatrix 116 unter Nutzung der Vorannahmevektoren 128 und Klassenetiketten von Knoten des Eingabegraphen 120 (beispielsweise von Knoten, die bereits mit einem Klassenetikett etikettiert sind, wenn sie in das Graphenverarbeitungssystem 104 eingegeben werden) initialisiert werden. In einigen Fällen kann das Schätzen der Werte der Kompatibilitätsmatrix 116 des Weiteren auf einer Maskenmatrix und einer Funktion beruhen, wodurch sichergestellt wird, dass die initialisierte Kompatibilitätsmatrix 116 doppelt stochastisch ist (dass sich beispielsweise jede Reihe zu 1 summiert und jede Spalte zu 1 summiert).
  • Das CPGNN 108 nutzt die Kompatibilitätsmatrix 116 und die Vorannahmevektoren 128 zur Weitergabe der Vorannahmevektoren an benachbarte Knoten. Das CPGNN 108 iteriert beispielsweise über den Satz von Knoten und für jeden Knoten des Satzes von Knoten, wobei das CPGNN 108 den Vorannahmevektor dieses Knotens an die Knoten in der Nachbarschaft dieses Knotens unter Nutzung der Kompatibilitätsmatrix 116 weitergibt. Die Knoten innerhalb einer Nachbarschaft der Knoten beinhalten Knoten, die direkt mit dem Knoten verbunden sind. In einigen Fällen kann die Eingabe für die Nutzervorrichtung 118 einen Nachbarschaftsparameter beinhalten, der angibt, dass Knoten innerhalb eines Abstandes von dem Knoten von dem CPGNN 108 als Nachbar des Knotens betrachtet werden sollen. Der Nachbarschaftsparameter kann beispielsweise eine ganze Zahl sein, die größer oder gleich 1 ist, wobei „1“ angibt, dass Knoten, die direkt mit dem Knoten verbunden sind, in der Nachbarschaft des Knotens befindlich sind, „2“ angibt, dass Knoten, die direkt mit Knoten verbunden sind, die wiederum direkt mit dem Knoten verbunden sind, in der Nachbarschaft des Knotens befindlich sind, und so weiter.
  • Das CPGNN 108 führt sodann eine kompatibilitätsgeleitete Weitergabe durch, die für jeden Knoten der Graphendatenstruktur den Annahmevektor des aktuellen Knotens und die Annahmevektoren eines jeden Knotens innerhalb einer Nachbarschaft des aktuellen Knotens aggregiert und den Annahmevektor des aktuellen Knotens aktualisiert. Das CPGNN 108 kann einen Echounterdrückungsterm beinhalten, der verhindert, dass der Wert, der von dem aktuellen Knoten an die Nachbarn des aktuellen Knotens weitergegeben wird, in den aggregierten Annahmevektoren der Knoten in der Nachbarschaft des aktuellen Knotens beinhaltet ist. Das CPGNN 108 führt die kompatibilitätsgeleitete Weitergabe für eine vorbestimmte Anzahl von Iterationen, bei denen die Annahmevektoren eines jeden Knotens aktualisiert werden, durch. Die vorbestimmte Anzahl von Iterationen (die hier beispielsweise mit k bezeichnet wird) kann eine ganze Zahl sein, die größer oder gleich 1 ist. Bestimmt werden kann die vorbestimmte Menge von Iterationen auf Grundlage einer Schwellenwahrscheinlichkeit (beispielsweise wird eine Wahrscheinlichkeit dafür erreicht, dass ein Knoten ein bestimmtes Klassenetikett aufweist; eine Schwellendifferenz zwischen einer höchsten Wahrscheinlichkeit eines Klassenetiketts und eines nächsthöchsten Klassenetiketts und dergleichen), einer Eingabe von der Nutzervorrichtung 118, einer Schwellengenauigkeit des CPGNN 108, auf Grundlage einer Menge von Knoten in der Graphendatenstruktur, auf Grundlage von Kombinationen hieraus oder dergleichen. Die aktualisierten Annahmevektoren 132 beinhalten den Zustand eines jeden Annahmevektors einer jeden Iteration der kompatibilitätsgeleiteten Weitergabe. Sobald bei diesem Beispiel die kompatibilitätsgeleitete Weitergabe (beispielsweise nach einer vorbestimmten Menge von Iterationen) endet, werden die aktualisierten Annahmevektoren 132 zu den Endannahmevektoren für das CPGNN 108.
  • Das CPGNN 108 aktualisiert die Werte in der Kompatibilitätsmatrix 116 auf Grundlage der aktualisierten Annahmevektoren und einer Verlustfunktion. Das CPGNN 108 kann die Kompatibilitätsmatrix 116 nach der kompatibilitätsgeleiteten Weitergabe oder nach jeder Iteration der kompatibilitätsgeleiteten Weitergabe aktualisieren. Die Verlustfunktion kann auf dem Kreuzentropieverlust des CPGNN 108 (beispielsweise auf vorhergesagten Klassenetiketten), auf einem Cotrainingsverlust aus dem neuronalen Netzwerk 124 und einem Regularisierungsterm, der die Kompatibilitätsmatrix 116 um Null herum zentriert hält, beruhen. Der Cotrainingsverlust aus dem neuronalen Netzwerk 124 misst den Abstand von Vorannahmevektoren 128 zur Ground-Truth-Verteilung für Knoten in den Trainingsdaten (beispielsweise in den Trainingsdaten 144 oder den Knotenetiketten bezüglich des Eingabegraphen 120), während die Endannahmevektoren optimiert werden.
  • Die Endannahmevektoren haben auf vielerlei Gebieten und bei nachgeordneten Aufgaben zahlreiche Anwendungen. So generiert das CPGNN 108 beispielsweise Vorhersagen eines Klassenetiketts für jeden Knoten der Graphendatenstruktur des Eingabegraphen 120 unter Nutzung der Endannahmevektoren. Das CPGNN 108 wählt als Klassenetikett für einen Knoten das Klassenetikett in dem Endannahmevektor mit der höchsten Wahrscheinlichkeit aus. Sodann kann eine zusätzliche Analyse an dem Eingabegraphen 120 auf Grundlage der vorhergesagten Klassenetiketten durchgeführt werden. Die Endannahmevektoren ermöglichen, dass das CPGNN 108 Klassenetiketten vorhersagt, ohne dass eine Homophilie zwischen Knoten des Eingabegraphen 120 vorausgesetzt wird.
  • Das Graphenverarbeitungssystem 104 kommuniziert die Ergebnisse der Verarbeitung des Eingabegraphen 120 durch die Ul-Engine 112 an die Nutzervorrichtung 118. Wie vorstehend beschrieben worden ist, kann die Ul-Engine 112 für die Nutzervorrichtung 118 eine graphische Nutzerschnittstelle bereitstellen, die präsentiert: eine graphische Darstellung des Eingabegraphen 120, des verarbeiteten Eingabemodells (beispielsweise so, wie es von dem CPGNN 108 ausgegeben wird) und der Information, die man aus der Ausführung des Graphenverarbeitungssystems 104 bezieht, so beispielsweise der Leistungsfähigkeit des neuronalen Netzwerkes 124 und/oder (beispielsweise auf Grundlage des mittleren absoluten Fehlers, der Wurzel aus dem mittleren quadrierten Fehler, der Prozentkorrekturklassifizierung oder dergleichen) der Zwischenergebnisse, der Vorannahmevektoren 128, der Endannahmevektoren und/oder dergleichen.
  • Das Graphenverarbeitungssystem beinhaltet, wie vorstehend beschrieben worden ist, Vorgänge, die von der UI-Schnittstelle 112, dem CPGNN 108 und dem neuronalen Netzwerk 124 durchgeführt werden. Bei einigen Ausführungsformen können einige oder alle der Vorgänge des Graphenverarbeitungssystems 104 von dem CPGNN 108 oder dem neuronalen Netzwerk 124 durchgeführt werden. Zusätzlich kann das Training des neuronalen Netzwerkes 124 und des CPGNN 108 von dem Trainingssystem 136 (beispielsweise von der Trainingsengine 140), wie vorstehend beschrieben worden ist, oder anstatt dessen von dem Graphenverarbeitungssystem 104, dem CPGNN 108 und/oder dem neuronalen Netzwerk 124 durchgeführt werden.
  • Beispiele für Vorgänge zum Trainieren und Nutzen eines Modells zur Bestimmung von Klassenetiketten eines Graphen
  • 2 zeigt ein Beispiel für eine Eingabegraphendatenstruktur, die von einem Graphenverarbeitungssystem verarbeitet wird, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. Die Graphendatenstruktur 200 ist eine graphische Darstellung eines Datensatzes, der von einem Graphenverarbeitungssystem (so beispielsweise dem Graphenverarbeitungssystem 104 von 1) verarbeitet werden soll. In einigen Fällen kann die Eingabe in das Graphenverarbeitungssystem die Graphendatenstruktur 200 sein. In anderen Fällen kann die Eingabe in das Graphenverarbeitungssystem gleich strukturierten Daten sein, die in graphischer Form dargestellt sein können, dies jedoch nicht unbedingt müssen. Die Graphendatenstruktur 200 beinhaltet einen Satz von Knoten, der diskreten Abschnitten des Datensatzes entspricht. Bei einem Beispiel kann der Datensatz einen Satz von Nutzerprofilen darstellen, wobei jeder Knoten einem Nutzerprofil entspricht. Die Knoten sind über Kanten verbunden, die eine Entsprechung zwischen zwei Knoten herstellen. Obwohl zwei Knoten durch eine Kante verbunden sein können, impliziert die Verbindung nicht, dass die Knoten hinsichtlich der von Interesse seienden Kenngrößen (beispielsweise mit demselben Klassenetikett, demselben Merkmal, demselben Merkmalsvektor, demselben Typ oder dergleichen) ähnlich sind. Die Graphendatenstruktur 200 beinhaltet eine Mischung aus Homophilie und Heterophilie.
  • Die Graphendatenstruktur beinhaltet einen oder mehrere etikettierte Knoten (beispielsweise das Etikett entsprechend einer Kenngröße des Knotens, die von dem Graphenverarbeitungssystem vorhergesagt werden soll) sowie einen oder mehrere unetikettierte Knoten. Knoten können beispielsweise mit einem Klassenetikett etikettiert sein. Wie gezeigt ist, können die Knoten 204, die mit dem Klassenetikett A etikettiert sind, durch einen durchgezogenen Kreis dargestellt sein, die Knoten 208, die mit dem Klassenetikett B etikettiert sind, können durch eine Querschraffur dargestellt sein, die Knoten 212, die mit dem Klassenetikett C etikettiert sind, können durch Diagonalen dargestellt sein, und die unetikettierten Knoten 216 können durch einen leeren Kreis dargestellt sein. Obwohl spezifische Darstellungen eines jeden Klassenetiketts beschrieben werden, können Knoten, um ein Klassenetikett anzugeben, mit einer graphischen Angabe dargestellt werden, so beispielsweise in einer bestimmten Farbe, mit einem alphanummerischen Code, einem Symbol oder dergleichen. Bei nicht graphischen Darstellungen der Graphendatenstruktur 200 können die Klassenetiketten als beliebiger alphanummerischer Code dargestellt sein.
  • Die Graphendatenstruktur 200 wird knotenweise in einer Anzahl von Iterationen von dem CPGNN verarbeitet. Jeder Knoten kann auf Grundlage der Nachbarschaft (beispielsweise Knoten, die direkt mit besagtem Knoten verbunden sind) verarbeitet werden. Als Beispiel ist die Nachbarschaft 220 des Knotens 224 gezeigt und wird in 3 bis 5 in Verbindung mit denjenigen Vorgängen beschrieben, die während des Trainings und der Nutzung des Graphenverarbeitungssystems durchgeführt werden. Die Nachbarschaft 220 des Knotens 224 beinhaltet den unetikettierten Knoten 224, den unetikettierten Knoten 228, den (beispielsweise mit dem Klassenetikett B) etikettierten Knoten 232 und den (beispielsweise auch mit dem Klassenetikett B) etikettierten Knoten 236.
  • 3 zeigt ein Beispiel für ein CPGNN, das Vorannahmevektoren für Knoten einer Graphendatenstruktur definiert, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. Die Graphendatenstruktur 300 entspricht der Nachbarschaft 220 von 2 und beinhaltet den unetikettierten Knoten 324, den unetikettierten Knoten 328, den (beispielsweise mit dem Klassenetikett B) etikettierten Knoten 332 und den (beispielsweise auch mit dem Klassenetikett B) etikettierten Knoten 336.
  • Ein erstes neuronales Netzwerk (das hier beispielsweise als neuronales Netzwerk oder als Vorannahmeschätzer (prior belief estimator) bezeichnet wird) des Graphenverarbeitungssystems kann für eine vorbestimmte Menge von Iterationen (die mit β1 bezeichnet wird) vortrainiert werden, um eine Vorannahmematrix Bp auf Grundlage der Merkmale eines jeden Knotens zu generieren. Die Vorannahmematrix beinhaltet einen Vorannahmevektor eines jeden Knotens in der Graphendatenstruktur. Das erste neuronale Netzwerk kann ein beliebiges neuronales Netzwerk sein, das Homophilie nicht implizit voraussetzt. Ein Beispiel für ein derartiges neuronales Netzwerk beinhaltet unter anderem ein mehrere Schichten umfassendes Perzeptron. Durch Vortrainieren des ersten neuronalen Netzwerkes kann das Graphenverarbeitungssystem eine Kompatibilitätsmatrix (mit H̅ bezeichnet) unter Nutzung von informativen Vorannahmen der Knoten trainieren. Das Vortrainieren des ersten neuronalen Netzwerkes kann die Endleistungsfähigkeit des CPGNN erhöhen. Während des Vortrainings minimiert das Graphenverarbeitungssystem die Verlustfunktion L p ( Θ p ) = v T v H ( B p ( v ; Θ p ) , y v ) + λ p Θ p 2 .
    Figure DE102021004591A1_0001
     
    Figure DE102021004591A1_0002
    In der Verlustfunktion sind Θp trainierbare Parameter des ersten neuronalen Netzwerkes, v entspricht einem Knoten, yv sind bekannte Klassenetiketten für den Trainingssatz Tv (beispielsweise für einen separaten Datensatz, der Ground-Truth-Daten beinhaltet, oder entsprechend den Knoten der Graphendatenstruktur, für die Etiketten bereits bekannt sind), H entspricht der Kreuzentropiefunktion, und λp ist die L2-Regularisierungsgewichtung (beispielsweise eine Ridge-Regression) für die Vorannahmen.
  • Die Vorannahmen beinhalten eine Wahrscheinlichkeitsverteilung, die eine Wahrscheinlichkeit dafür angibt, dass ein Knoten einem bestimmten Klassenetikett entspricht. Der Vorannahmevektor 304 des Knotens 324 zeigt beispielsweise die Wahrscheinlichkeit 305 dafür, dass der Knoten 324 dem Etikett A entspricht, die Wahrscheinlichkeit 306 dafür, dass der Knoten 324 dem Etikett B entspricht, und die Wahrscheinlichkeit 307 dafür, dass der Knoten 324 dem Etikett C entspricht. Der Vorannahmevektor 308 des Knotens 328 beinhaltet zudem eine Wahrscheinlichkeit dafür, dass der Knoten 328 jedem von dem Knoten A, dem Knoten B und dem Knoten C entspricht. Die Knoten 332 und 336 sind in das Graphenverarbeitungssystem mit einem jeweiligen Etikett eingegeben worden. Im Ergebnis geben die Vorannahmevektoren 312 und 316 der Knoten 332 und 336 jeweils an, dass die Wahrscheinlichkeit dafür, dass der Knoten dem Etikett B (das heißt dem Eingabeetikett) entspricht, nahe 1 ist. Demgegenüber sind die Wahrscheinlichkeiten dafür, dass der Knoten 332 oder 336 dem Etikett A oder dem Etikett C entspricht, nahe 0.
  • In einigen Fällen präsentiert das Graphenverarbeitungssystem die Knoten für jede Nachbarschaft (so beispielsweise die Nachbarschaft 220) und den Vorannahmevektor eines jeden Knotens über eine graphische Nutzerschnittstelle, um das Vortraining des ersten neuronalen Netzwerkes darzustellen. 3 zeigt beispielsweise ein Beispiel, bei dem die Vorannahmevektoren graphisch als Balken- bzw. Säulengraphen dargestellt sind. Dargestellt sein können die Vorannahmevektoren in einem beliebigen alphanummerischen oder graphischen Format, das dafür konfiguriert ist, die einzelnen Wahrscheinlichkeiten eines jeden möglichen Klassenetiketts zu vermitteln.
  • Das Graphenverarbeitungssystem initialisiert die Kompatibilitätsmatrix H auf Grundlage der Vorannahmematrix Bp. Insbesondere initialisiert das Graphenverarbeitungssystem die Parameter von H mit einer Schätzung H einer unbekannten Kompatibilitätsmatrix H bezüglich der Vorannahmematrix Bp. Bei einigen Ausführungsformen leitet das Graphenverarbeitungssystem die Schätzung von H unter Nutzung von Knotenetiketten in dem Trainingssatz Ytrain (beispielsweise einem separaten Datensatz, der Ground-Truth-Daten beinhaltet, oder entsprechend den Knoten der Graphendatenstruktur, für die Etiketten bereits bekannt sind) und der Vorannahmematrix Bp, die unter Nutzung von Bp = softmax(R(k)) geschätzt wird, her, wobei R(k) die Endschichtausgabe des ersten neuronalen Netzwerkes ist. Ist das erste neuronale Netzwerk beispielsweise ein graphenagnostisches mehrere Schichten umfassendes Perzeptron (Multi-Layer Perceptron MLP), so kann R(k) eine k-te Schicht sein, die als R(k) = σ(RC(k-1)W(k)) formuliert ist, wobei R(0) die Eingabemerkmalsmatrix X ist und W(k) lernbare Parameter sind.
  • Das Graphenverarbeitungssystem generiert eine Trainingsmaskenmatrix M und eine verbesserte Annahmen betreffende Matrix B̃, die sich der bekannten Klassenetiketten in dem Trainingssatz Tv bedienen. Das Graphenverarbeitungssystem bezeichnet M als [ M ] i , j = { 1,   w e n n   i T v 0,   s o n s t
    Figure DE102021004591A1_0003
    und B̃ als B̃ = M ◦ Y + (1 - M) ◦ Bp, wobei ◦ das Hadamar-Produkt (elementweise) ist. Das Graphenverarbeitungssystem leitet die Schätzung Ĥ als H ^ = S ( ( M Y ) τ A B ˜ )
    Figure DE102021004591A1_0004
    her, wobei A eine Adjazenzmatrix ist, die als A ∈ {0,1}|v|×|v| definiert ist, und S eine Funktion ist, die sicherstellt, dass Ĥ doppelt stochastisch ist. Ein Beispiel für eine Funktion, die sicherstellt, dass Ĥ doppelt stochastisch ist, beinhaltet unter anderem den Sinkhorn-Knopp-Algorithmus. Das Graphenverarbeitungssystem zentriert den Anfangswert von H um Null herum, indem H ¯ ( 0 ) = H ¯ 1 | y |
    Figure DE102021004591A1_0005
    eingestellt wird. Um sicherzustellen, dass die Reihen von H während des Trainingsprozesses um Null herum zentriert bleiben, implementiert das Graphenverarbeitungssystem einen Regularisierungsterm Φ(H) für H als Φ(H) = Σij H ij.
  • 4 und 5 zeigen eine kompatibilitätsgeleitete Weitergabe von Annahmevektoren über Knoten der Graphendatenstruktur hinweg. Das CPGNN gibt die Vorannahmevektoren von Knoten innerhalb ihrer Nachbarschaften unter Nutzung der initialisierten Kompatibilitätsmatrix H weiter. Um die Vorannahmevektoren durch lineare Bildungen weiterzugeben, zentriert das CPGNN die Vorannahmematrix Bp unter Nutzung von B ¯ ( 0 ) = B p 1 | y | ,
    Figure DE102021004591A1_0006
    wobei y der Ground-Truth-Klassenetikettvektor für alle Knoten ist. Das CPGNN formuliert Zwischenschichten der Weitergabe als B̂(k) = σ(B̂(0) + AB̂(k-1) H - DB̂(k-1) H 2), wobei A eine Adjazenzmatrix ist, die als A ∈ {0,1}|v|×|v| definiert ist, und D = diag({di: i = 1, ..., |yl) gilt, wobei d i = j = 1 | v | A i j
    Figure DE102021004591A1_0007
    gilt. Der letzte Term in der Gleichung für die Zwischenschichten der Weitergabe dient als Echounterdrückungsterm, der das Echo der Selbstannahme eines jeden Knotens unterdrückt. Für die Endschicht der Weitergabe beinhaltet das CPGNN den letzten Term nicht, da die Echounterdrückung gegebenenfalls nicht benötigt wird, was die Gleichung B (k) = σ(B (0) + AB (k-1) H) ergibt.
  • 4 ist ein Beispiel für ein CPGNN, das Annahmevektoren über Knoten einer Graphendatenstruktur hinweg weitergibt, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. Die Graphendatenstruktur 400 entspricht der Umgebung 220 von 2 und beinhaltet den unetikettierten Knoten 424, den unetikettierten Knoten 428, den etikettierten Knoten 432 und den etikettierten Knoten 436.
  • Wie gezeigt ist, werden Annahmevektoren in der Umgebung eines Knotens 424 an den Knoten 424 weitergegeben. Der Vorannahmevektor der Knoten 432 wird an den Knoten 424 (wie durch die gerichtete Kante 440 gezeigt ist) weitergegeben, der Vorannahmevektor des Knotens 428 wird, wie durch die gerichtete Kante 444 gezeigt ist, an den Knoten 424 weitergegeben, und der Vorannahmevektor des Knotens 436 wird, wie durch die gerichtete Kante 448 gezeigt ist, an den Knoten 424 weitergegeben. Die Weitergabe kann von der initialisierten Kompatibilitätsmatrix geleitet werden. Eine vereinfachte Darstellung der Weitergabe kann als B = B · H definiert sein.
  • 5 zeigt ein Beispiel für ein CPGNN, das eine Iteration einer kompatibilitätsgeleiteten Weitergabe von Annahmevektoren über Knoten einer Graphendatenstruktur hinweg durchführt, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. Die Graphendatenstruktur 500 entspricht der Nachbarschaft 220 von 2 und beinhaltet den unetikettierten Knoten 524, den unetikettierten Knoten 528, den etikettierten Knoten 532 und den etikettierten Knoten 536.
  • Jede Iteration der kompatibilitätsgeleiteten Weitergabe aktualisiert die Annahmevektoren eines jeden Knotens auf Grundlage der weitergegebenen Annahmevektoren der Knoten in der Nachbarschaft. Der Knoten 524 aggregiert beispielsweise die Vorannahmevektoren, die von den Knoten 528, 532 und 536 (wie anhand 4 beschrieben wird) empfangen werden, um den Annahmevektor 504 des Knotens 524 zu aktualisieren. Der aktualisierte Annahmevektor der Zwischenschicht der Weitergabe (in dem beispielsweise die aktuelle Iteration nicht die letzte Iteration ist) ist B̂(k) = σ(B̂(0) + AB̂(k-1) H - DB̂(k-1) H 2). Der Term DB̂(k-1) H 2 dient der Echounterdrückung, um zu verhindern, dass die Weitergabe des Annahmevektors eines Knotens bei Voriterationen Auswirkungen auf den aktualisierten Annahmevektor dieses Knotens hat.
  • Der Knoten 524 gibt den Annahmevektor 504 beispielsweise an die Knoten 532, 536 und 528 weiter und empfängt Annahmevektoren von den Knoten 532, 536 und 538. Die Echounterdrückung verhindert, dass der Annahmevektor, der an die anderen Knoten (beispielsweise während dieser oder der Voriteration) weitergegeben worden ist, benutzt wird, um den Annahmevektor 504 (während dieser Iteration) zu aktualisieren. In einigen Fällen führt das CPGNN den Weitergabevorgang, wie anhand 4 beschrieben worden ist, in Bezug auf jeden Knoten der Graphendatenstruktur aus und aktualisiert die Annahmevektoren sodann auf Grundlage des Aggregiervorganges. In anderen Fällen führt das CPGNN die Weitergabe- und Aggregiervorgänge parallel durch (beispielsweise mit mehreren Knoten, die gleichzeitig weitergegeben und aggregiert werden). In wieder anderen Fällen wird die kompatibilitätsgeleitete Weitergabe als ein einziger zusammengesetzter Vorgang (beispielsweise anstatt separater Vorgänge) durchgeführt.
  • 6 zeigt ein Beispiel für ein trainiertes CPGNN entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. Nach k Schichten der Weitergabe (Iterationen) gibt das CPGNN die Endannahmematrix Bf aus, die den Endannahmevektoren für jeden Knoten entspricht. Die Endannahmematrix beinhaltet eine Wahrscheinlichkeitsverteilung, die Wahrscheinlichkeiten dafür angibt, dass der Knoten jedem möglichen Klassenetikett entspricht. Die Endannahme für einen Knoten der Graphendatenstruktur ist durch Bƒ = softmax(B (K)) bestimmt. Für einen Knoten v kann die Endannahme zusätzlich als Bƒ(v, Hp) ausgedrückt werden, wobei hier die Parameter Θp aus der Phase der Vorannahmeschätzung Berücksichtigung finden.
  • Bei einigen Ausführungsformen wird, sobald die kompatibilitätsgeleitete Weitergabe endet und die Endannahmevektoren generiert sind, das CPGNN entsprechend der Verlustfunktion L ƒ ( H ¯ , Θ p ) = v T v H ( B ƒ ( v ; H ¯ , Θ p ) , y v ) + η L p ( Θ p ) + Θ ( H ¯ )
    Figure DE102021004591A1_0008
     
    Figure DE102021004591A1_0009
    trainiert. Die Verlustfunktion beinhaltet drei Teile. Der erste Teil ist der Kreuzentropieverlust aus der CPGNN-Ausgabe, der zweite Teil ist der Cotrainingsverlust aus dem Vorannahmeschätzer, und der dritte Teil ist der Regularisierungsterm, der H um Null herum zentriert hält. Der Cotrainingsverlust aus dem Vorannahmeschätzer misst den Abstand von Vorannahmen zur Ground-Truth-Verteilung für Knoten in dem Trainingssatz und optimiert dabei auch die Endannahmen. Während dieses Vorganges generiert das CPGNN Vorhersagen für jeden unetikettierten Knoten der Graphendatenstruktur und aktualisiert die Kompatibilitätsmatrix auf Grundlage der Endannahmevektoren.
  • In einigen Fällen sagt das CPGNN ein Klassenetikett für einen Knoten voraus, indem es aus der Wahrscheinlichkeitsverteilung des Endannahmevektors das Klassenetikett mit der höchsten Wahrscheinlichkeit identifiziert. In anderen Fällen bestimmt das CPGNN zudem, ob das identifizierte Klassenetikett größer als eine Wahrscheinlichkeitsschwelle ist. Ist das zugewiesene Klassenetikett größer als die Wahrscheinlichkeitsschwelle, so weist das CPGNN das Klassenetikett dem Knoten zu. Ist das zugewiesene Klassenetikett nicht größer als die Wahrscheinlichkeitsschwelle, so kann das CPGNN angeben, dass der Knoten unetikettiert bleiben soll. Ist das CPGNN beispielsweise darauf trainiert, ein Klassenetikett unter zehn möglichen Klassenetiketten vorherzusagen, so ist gegebenenfalls möglich, dass die Wahrscheinlichkeit eines jeden Klassenetiketts kleiner als die Wahrscheinlichkeitsschwelle (von beispielsweise 50% oder dergleichen) ist, wobei sich die kombinierten Wahrscheinlichkeiten weiterhin zu 1 summieren. Bleibt ein Knoten unetikettiert, so können ein bzw. mehrere Handlungen unternommen werden, darunter das erneute Trainieren des CPGNN, das Anfordern von zusätzlichen Merkmalen für den Knoten und das Generieren eines aktualisierten Annahmevektors, das Anfordern einer Nutzereingabe zur Verifizierung der Vorhersage oder dergleichen.
  • Wie in 6 gezeigt ist, stellt die Graphendatenstruktur einen Datensatz dar, der eine Mischung aus Homophilie und Heterophilie beinhaltet. Der linke Abschnitt 604 des Graphen stellt den Abschnitt des Datensatzes mit Heterophilie dar. Wie gezeigt ist, beinhaltet der linke Abschnitt 604 eine Verteilung von Knoten, bei der diejenigen, die nicht verbunden sind, notwendigerweise mit Knoten desselben Klassenetiketts verbunden sind. Der rechte Abschnitt 608 der Graphendatenstruktur stellt den Abschnitt des Datensatzes mit Homophilie dar. Es ist wahrscheinlicher, dass die Knoten des rechten Abschnittes 608 der Graphendatenstruktur mit einem anderen Knoten verbunden sind, der dasselbe Klassenetikett teilt. CPGNNe, die so, wie hier beschrieben wird, trainiert worden sind, sind dafür konfiguriert, an Datensätzen mit Homophilie, Heterophilie und einer Mischung aus Homophilie und Heterophilie zu arbeiten.
  • Ein trainiertes CPGNN kann die Graphendatenstruktur an eine Nutzervorrichtung (so beispielsweise an die Nutzervorrichtung 118 von 1), an eine Anzeigevorrichtung (beispielsweise über eine graphische Nutzerschnittstelle), eine Datenbank oder dergleichen ausgeben. Das CPGNN kann mit der Verarbeitung von neuen Daten, die zu dem Datensatz hinzugefügt werden, fortfahren. Daten, die beispielsweise einem neuen Knoten entsprechen, können zu der Graphendatenstruktur als unetikettierter Knoten hinzugefügt werden. Das CPGNN kann den neuen Knoten (wie vorstehend beschrieben worden ist) sodann verarbeiten, um einen Endannahmevektor zu generieren, der zur Vorhersage des Klassenetiketts des neuen Knotens benutzt werden kann.
  • Beispiele für Vorgänge zum Trainieren und Nutzen eines Modells zur Bestimmung von Klassenetiketten eines Graphen
  • 7 zeigt ein Beispiel für einen Prozess zum Trainieren und Nutzen eines CPGNN zur Vorhersage einer Kenngröße von Knoten einer Graphendatenstruktur entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. Bei Block 704 empfängt eine Rechenvorrichtung einen Datensatz. In einigen Fällen ist der Datensatz ein Eingabegraph, der Daten als Knoten, die über Kanten verbunden sind, darstellt, oder beinhaltet einen solchen. Jede Kante verbindet zwei Knoten auf Grundlage eines zugehörigen Merkmals der zwei Knoten. In anderen Fällen kann der Datensatz gleich strukturierten Daten sein. In diesen Fällen generiert die Rechenvorrichtung (oder eine andere Vorrichtung) einen Eingabegraphen aus dem Datensatz. Der Datensatz kann von einer Nutzervorrichtung (so beispielsweise der Nutzervorrichtung 118 von 1), von einem Server oder dergleichen empfangen werden. In einigen Fällen kann die Rechenvorrichtung den Datensatz (beispielsweise von einer Nutzervorrichtung, einem Server, einer Datenbank und dergleichen) abrufen. Die Rechenvorrichtung ist eine Verarbeitungsvorrichtung, die Programmanweisungen beinhaltet, die bei Ausführung durch einen oder mehrere Prozessoren der Rechenvorrichtung einige oder alle der in Verbindung mit 7 beschriebenen Vorgänge durchführt.
  • Bei Block 708 verarbeitet die Rechenvorrichtung mit einem CPGNN den Datensatz (der beispielsweise den Eingabegraphen beinhaltet) und generiert eine neue Graphendatenstruktur, die extrapolierte zusätzliche Eigenschaften von Knoten (beispielsweise Merkmale, Merkmalsvektoren, Klassenetiketten, Typen und dergleichen) beinhaltet.
  • Das CPGNN verarbeitet bei Block 712 den Datensatz durch Definieren eines Satzes von Vorannahmevektoren, die jeweils Knoten der Graphendatenstruktur entsprechen. Das CPGNN nutzt einen Vorannahmeschätzer (beispielsweise ein zweites neuronales Netzwerk, so beispielsweise das neuronale Netzwerk 124 von 1), der Annahmevektoren für jeden Knoten der Graphendatenstruktur generiert. Der Vorannahmeschätzer kann ein beliebiges neuronales Netzwerk sein, das Homophilie nicht implizit voraussetzt. Das CPGNN ist dafür konfiguriert, eine Vorhersage zu generieren, die einer Kenngröße eines Knotens der Graphendatenstruktur entspricht. Beispiele für Kenngrößen beinhalten unter anderem ein Merkmal, einen Merkmalsvektor, ein Klassenetikett, einen Typ, Kombinationen hieraus und dergleichen. Die Annahmevektoren beinhalten eine Wahrscheinlichkeitsverteilung, die eine Wahrscheinlichkeit für jeden möglichen Wert der Kenngröße des Knotens angibt. Ist das CPGNN beispielsweise dafür konfiguriert, Klassenetiketten, nämlich das Etikett A, das Etikett B oder das Etikett C vorherzusagen, so beinhaltet der Annahmevektor eines Knotens eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett A entspricht, eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett B entspricht, und eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett C entspricht. Die Summe der Wahrscheinlichkeiten der Wahrscheinlichkeitsverteilung ist gleich 1.
  • Der Vorannahmeschätzer kann einen Trainingsannahmevektor bzw. Trainingsannahmevektoren während einer Vortrainingsphase des CPGNN generieren. Die Trainingsannahmevektoren können auf Grundlage der Merkmale eines jeden Knotens generiert werden. In einigen Fällen können die Trainingsannahmevektoren die Annahmevektoren sein. In anderen Fällen können die Trainingsannahmevektoren Anfangsannahmevektoren sein, die aktualisiert werden, um die Annahmevektoren zu bilden.
  • Das Generieren der Graphendatenstruktur wird bei Block 716 fortgesetzt, wo das CPGNN unter Nutzung einer Kompatibilitätsmatrix, die eine Wahrscheinlichkeit dafür modelliert, dass Knoten aus verschiedenen Klassen verbunden sind, eine kompatibilitätsgeleitete Weitergabe unter Nutzung des Satzes von Vorannahmevektoren ausführt. Die Kompatibilitätsmatrix wird unter Nutzung der Trainingsannahmevektoren, die während der Vortrainingsphase des CPGNN generiert werden, initialisiert. Das CPGNN nutzt die Kompatibilitätsmatrix und die Annahmevektoren zur Durchführung einer kompatibilitätsgeleiteten Aggregierung. Die kompatibilitätsgeleitete Aggregierung (1) gibt den Vorannahmevektor eines jeden Knotens an die Knoten innerhalb der Nachbarschaft des Knotens weiter und (2) aggregiert den Annahmevektor eines Knotens mit den Annahmevektoren, die von den Knoten, die mit dem Knoten verbunden sind, weitergegeben (prorogated) werden, um den Annahmevektor des Knotens zu aktualisieren. Die kompatibilitätsgeleitete Aggregierung kann für k Iterationen durchgeführt werden, wobei k eine ganze Zahl ist, die größer oder gleich 1 ist. Im Ergebnis kann der Annahmevektor eines jeden Knotens bis zu k Mal aktualisiert werden.
  • Das Generieren der Graphendatenstruktur wird bei Block 720 fortgesetzt, wo das CPGNN ein Klassenetikett für einen Knoten der Graphendatenstruktur auf Grundlage der kompatibilitätsgeleiteten Weitergabe und einer Kenngröße wenigstens eines Knotens innerhalb einer Nachbarschaft des Knotens generiert. Das CPGNN kann das Klassenetikett für den Knoten der Graphendatenstruktur generieren und dabei eine Verlustfunktion, die dafür konfiguriert ist, die Kompatibilitätsmatrix zu aktualisieren, minimieren. Die Verlustfunktion beruht auf dem Kreuzentropieverlust, dem Cotrainingsverlust aus dem Vorannahmeschätzer und einem Regulierungsterm, der sicherstellt, dass die Kompatibilitätsmatrix um Null herum zentriert bleibt. Beinhalten kann das Generieren des Klassenetiketts in einigen Fällen ein aus einem Annahmevektor eines Knotens erfolgendes Identifizieren des Klassenetiketts mit der höchsten Wahrscheinlichkeit und ein an den Knoten erfolgendes Zuweisen des identifizierten Klassenetiketts. Alternativ kann das CPGNN aus einem Annahmevektor eines Knotens das Klassenetikett mit einer Wahrscheinlichkeit, die eine Wahrscheinlichkeitsschwelle übersteigt, identifizieren.
  • Das Minimieren der Verlustfunktion kann einem Endvorgang beim Trainieren des CPGNN entsprechen. Das Minimieren der Verlustfunktion beinhaltet ein Modifizieren von Werten der Kompatibilitätsmatrix auf Grundlage der aktualisierten Annahmevektoren, die während der kompatibilitätsgeleiteten Weitergaben generiert werden.
  • Das Generieren der Graphendatenstruktur wird bei Block 724 fortgesetzt, wo das identifizierte Klassenetikett für den Knoten dem Knoten zugewiesen wird. Beinhalten kann dies ein Modifizieren des Knotens der Graphendatenstruktur, um das identifizierte Klassenetikett einzubeziehen.
  • Bei Block 728 gibt die Rechenvorrichtung die neue Graphendatenstruktur, die von dem CPGNN generiert wird, aus. Beinhalten kann das Ausgeben der neuen Graphendatenstruktur unter anderem ein Übertragen der neuen Graphendatenstruktur an eine Nutzervorrichtung (die beispielsweise den Eingabegraphen übertragen hat), eine oder mehrere andere Vorrichtungen, einen Server, eine Datenbank, Kombinationen hieraus und dergleichen. Beinhalten kann das Ausgeben der neuen Graphendatenstruktur in einigen Fällen ein Anzeigen der neuen Graphendatenstruktur über eine Nutzerschnittstelle einer Anzeigevorrichtung.
  • Die neue Graphendatenstruktur ist von einem Softwarewerkzeug zum Modifizieren des Betriebes einer Rechenumgebung nutzbar. Das Modifizieren des Betriebs der Rechenumgebung beinhaltet bei einem Beispiel ein auf Grundlage einer Entitätsbeziehung, die durch Kanten in der neuen Graphendatenstruktur dargestellt wird, erfolgendes Modifizieren von interaktivem Content auf eine Weise, die für eine Zielentität, die durch den Knoten mit dem Klassenetikett dargestellt wird, spezifisch ist. Die neue Graphendatenstruktur, die bei Block 728 ausgegeben wird, wird auf einem nichttemporären computerlesbaren Medium gespeichert, das für ein Host-Rechensystem zugänglich ist, das für Nutzervorrichtungen einen Zugang zu einer Online-Plattform oder einer anderen interaktiven Rechenumgebung bereitstellt. Benutzt werden kann die neue Graphendatenstruktur zum Identifizieren von Kenngrößen von Entitäten, die auf die Online-Plattform oder die andere interaktive Rechenumgebung mit den Nutzervorrichtungen zugreifen. Diese Kenngrößen, die aus der neuen Graphendatenstruktur identifiziert werden, können veranlassen, dass ein oder mehrere Merkmale der Online-Plattform oder der anderen interaktiven Rechenumgebung geändert werden. Benutzt werden kann das Host-Rechensystem entweder automatisch oder in Reaktion auf zusätzliche Nutzereingaben beispielsweise zum Modifizieren von interaktivem Content, der von der Online-Plattform an eine Nutzervorrichtung übermittelt wird. Beinhalten kann das Modifizieren des interaktiven Contents ein Neuanordnen des Layouts einer Schnittstelle, um bestimmte Schnittstellenelemente prominenter zu präsentieren, darunter innerhalb des interaktiven Contents befindliche spezifische Links, die ermöglichen, dass eine Nutzervorrichtung zu bestimmten Online-Plattformen navigiert, und so weiter.
  • Beinhalten kann das Modifizieren des Betriebs der Rechenumgebung bei einem weiteren Beispiel zudem ein Modifizieren eines Teilsatzes von Datenelementen des Datensatzes auf Grundlage von Klassenetiketten in der neuen Graphendatenstruktur, die mit den kompatibilitätsgeleiteten Weitergaben generiert werden. Die Vorhersagen, die von dem CPGNN generiert werden, können durch die neue Graphendatenstruktur weitergegeben werden, was ermöglicht, dass das CPGNN oder ein anderes neuronales Netzwerk weitere Vorhersagen auf Grundlage von vorherigen Vorhersagen generiert. Bei einem weiteren Beispiel ermöglicht das Vorhersagen eines Klassenetiketts für einen Knoten, dass das CPGNN oder das andere neuronale Netzwerk das Klassenetikett des Knotens nutzt (sowie andere Information, die dem Knoten und/oder der neuen Graphendatenstruktur zugeordnet ist), um andere Kenngrößen des Knotens oder der anderen Knoten in der neuen Graphendatenstruktur vorherzusagen, so beispielsweise Merkmale, Merkmalsvektoren, Typen und dergleichen. Das CPGNN ermöglicht das Eintragen von Information eines Knotens, die gegebenenfalls unvollständig oder unbekannt ist.
  • Beinhalten kann das Modifizieren des Betriebs der Rechenvorrichtung bei einem anderen Beispiel ein Abwickeln einer Anfrage für den Datensatz durch aus der neuen Graphendatenstruktur erfolgendes Abrufen von Entitätsdaten, die dem Knoten mit dem Klassenetikett entsprechen. Die neue Graphendatenstruktur, die bei Block 728 ausgegeben wird, wird auf einem nichttemporären computerlesbaren Medium gespeichert, das für ein Host-Rechensystem zugänglich ist. Die Host-Vorrichtung wickelt Anfragen unter Nutzung der neuen Graphendatenstruktur ab und gibt einen Abschnitt des Datensatzes, der von der neuen Graphendatenstruktur dargestellt wird, in Reaktion auf die Anfrage aus. Bei einem Beispiel beinhaltet die Anfrage ein Klassenetikett. Die Host-Vorrichtung identifiziert Knoten der neuen Graphendatenstruktur, die dem Klassenetikett entsprechen, und gibt Entitätsdaten, die den identifizierten Knoten entsprechen, aus. Die Host-Vorrichtung nutzt die neue Graphendatenstruktur, um eine Grundgesamtheit von Entitäten zu definieren, die derselben einen oder denselben mehreren Kenngrößen (die beispielsweise durch die Anfrage definiert sind) entsprechen. Die Host-Vorrichtung führt einen oder mehrere Vorgänge auf Grundlage der Grundgesamtheit von Entitäten durch, so beispielsweise unter anderem das Übertragen von interaktivem Content auf eine Weise, die für die Grundgesamtheit von Entitäten spezifisch ist, das Modifizieren einer Netzwerkressource zum Übertragen von interaktivem Content und dergleichen mehr.
  • 8 zeigt ein Beispiel für einen Prozess zum Trainieren und Nutzen eines CPGNN zum Vorhersagen einer Kenngröße von Knoten einer Graphendatenstruktur entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. Bei Block 804 empfängt eine Rechenvorrichtung eine Graphendatenstruktur, die einen Datensatz modelliert. In einigen Fällen beinhaltet die Graphendatenstruktur Knoten, die über Kanten verbunden sind. Jede Kante verbindet zwei Knoten auf Grundlage eines zugehörigen Merkmals der zwei Knoten. In anderen Fällen empfängt die Rechenvorrichtung strukturierte Daten (beispielsweise Daten in einem Nichtgraphenformat). In diesen Fällen generiert die Rechenvorrichtung (oder eine andere Vorrichtung) eine Graphendatenstruktur aus dem Datensatz. Der Datensatz kann von einer Nutzervorrichtung (so beispielsweise der Nutzervorrichtung 118 von 1), einem Server oder dergleichen empfangen werden. In einigen Fällen kann die Rechenvorrichtung den Datensatz (beispielsweise von einer Nutzervorrichtung, einem Server, einer Datenbank und dergleichen) abrufen.
  • Einer oder mehrere der Knoten der Graphendatenstruktur beinhalten einen bekannten Wert einer Kenngröße (beispielsweise ein Etikett eines Ground-Truth-Segments) des Knotens, für dessen Vorhersage ein CPGNN trainiert werden soll. Die verbleibenden Knoten der Graphendatenstruktur beinhalten keine bekannten Werte für die Kenngröße. Beinhalten können Beispiele für die Kenngröße unter anderem ein Klassenetikett, ein Merkmal, einen Merkmalsvektor, einen Typ und dergleichen. Der Datensatz beinhaltet beispielsweise Klassenetiketten für einige Knoten einer Graphendatenstruktur. Die verbleibenden Knoten sind unetikettiert (sie beinhalten beispielsweise keine Klassenetiketten).
  • Die Rechenvorrichtung kann eine Verarbeitungsvorrichtung sein, die Programmanweisungen beinhaltet, die bei Ausführung durch einen oder mehrere Prozessoren der Rechenvorrichtung einige oder alle der in Verbindung mit 8 beschriebenen Vorgänge durchführen.
  • Bei Block 808 empfängt die Rechenvorrichtung ein CPGNN (Compatibility-based Propagation Graph Neural Network). Das CPGNN ist ein untrainiertes Modell, das dafür konfiguriert ist, unter Nutzung der Graphendatenstruktur trainiert zu werden, um eine Vorhersage zu generieren, die den Knoten der Graphendatenstruktur entspricht.
  • Bei Block 812 betreibt die Berechnung bzw. Rechenvorrichtung ein neuronales Netzwerk (so beispielsweise das neuronale Netzwerk 124 von 1), um einen Annahmevektor für einen Knoten der Graphendatenstruktur zu generieren. Das neuronale Netzwerk kann ein beliebiges neuronales Netzwerk sein, das Homophilie nicht explizit voraussetzt. Der Annahmevektor beinhaltet eine Wahrscheinlichkeitsverteilung, die eine Wahrscheinlichkeit für jeden möglichen Wert der Kenngröße des Knotens angibt. Ist das CPGNN beispielsweise dafür konfiguriert, Klassenetiketten vorherzusagen, die dem Etikett A, dem Etikett B oder dem Etikett C entsprechen, so beinhaltet der Annahmevektor des Knotens eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett A entspricht, eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett B entspricht, und eine Wahrscheinlichkeit dafür, dass der Knoten dem Etikett C entspricht. Die Summe der Wahrscheinlichkeiten der Wahrscheinlichkeitsverteilung ist gleich 1.
  • Der Vorannahmeschätzer kann die Vorannahmevektoren während einer Vortrainingsphase des CPGNN generieren. Das neuronale Netzwerk generiert die Trainingsannahmevektoren auf Grundlage der Merkmale des Knotens.
  • Bei Block 816 wendet das CPGNN eine Kompatibilitätsmatrix auf den Knoten der Graphendatenstruktur an. Das CPGNN nutzt die Kompatibilitätsmatrix zum Modifizieren des Annahmevektors des Knotens auf Grundlage von Annahmevektoren von Knoten in einer Nachbarschaft des Knotens. Bei einem Beispiel kann die Kompatibilität bzw. Kompatibilitätsmatrix den Annahmevektor als Teil einer kompatibilitätsgeleiteten Weitergabe modifizieren. Die Kompatibilitätsmatrix wird unter Nutzung der Annahmevektoren, die während der Vortrainingsphase des CPGNN generiert werden, initialisiert. Die kompatibilitätsgeleitete Aggregierung (1) gibt den Vorannahmevektor eines jeden Knotens an die Knoten innerhalb der Nachbarschaft des Knotens so, wie von der Kompatibilitätsmatrix geleitet, weiter und (2) aggregiert den Annahmevektor eines Knotens mit den Annahmevektören, die von denjenigen Knoten, die mit dem Knoten verbunden sind, weitergegeben (prorogated) werden, um den Annahmevektor des Knotens zu aktualisieren. Die kompatibilitätsgeleitete Aggregierung wird für k Iterationen durchgeführt, wobei k eine ganze Zahl ist, die größer oder gleich 1 ist. Im Ergebnis kann der Annahmevektor eines jeden Knotens bis zu k Mal aktualisiert werden.
  • In einigen Fällen ersetzt die Kompatibilitätsmatrix eine Gewichtungsfunktion des für Graphen vorgesehenen neuronalen Netzwerkes. Die Kompatibilitätsmatrix wird auf jeden Knoten und die Knoten innerhalb der Nachbarschaft dieses Knotens gleichermaßen angewendet, wobei das Zentrum der Kompatibilitätsmatrix um die Null herum zentriert ist. Die Kompatibilitätsmatrix wird als Verschiebefenster über die Graphendatenstruktur hinweg angewendet.
  • Die Anwendung der Kompatibilitätsmatrix auf die Knoten der Graphendatenstruktur aktualisiert den Annahmevektor des Knotens iterativ auf Grundlage der Annahmevektoren der benachbarten Knoten. Nach k Iterationen ist der Annahmevektor des Knotens der Endannahmevektor des Knotens.
  • Bei Block 820 berechnet das CPGNN auf Grundlage der Annahmevektoren einen Verlustwert, wobei der Verlustwert auf Grundlage (a) eines Cotrainingsverlustes aus dem neuronalen Netzwerk und (b) eines Regulierungswertes, der Reihen der Kompatibilitätsmatrix um Null herum zentriert hält, berechnet wird. Bei einem Beispiel wird das CPGNN entsprechend der Verlustfunktion L ƒ ( H ¯ , Θ p ) = v T v H ( B ƒ ( v ; H ¯ , Θ p ) , y v ) + η L p ( Θ p ) + Θ ( H ¯ )
    Figure DE102021004591A1_0010
     
    Figure DE102021004591A1_0011
    trainiert. Die Verlustfunktion beinhaltet drei Teile. Der erste Teil ist der Kreuzentropieverlust aus der CPGNN-Eingabe, der zweite Teil ist der Cotrainingsverlust aus dem Vorannahmeschätzer, und der dritte Teil ist der Regularisierungsterm, der H ¯
    Figure DE102021004591A1_0012
    um Null herum zentriert hält. Der Cotrainingsverlust aus dem Vorannahmeschätzer misst den Abstand von Vorannahmen zur Ground-Truth-Verteilung für Knoten in dem Trainingssatz und optimiert dabei die Endannahmen. Während dieses Vorganges generiert das CPGNN Vorhersagen für jeden unetikettierten Knoten der Graphendatenstruktur und aktualisiert die Kompatibilitätsmatrix auf Grundlage der Endannahmevektoren.
  • Das CPGNN sagt ein Klassenetikett für einen Knoten voraus, indem es aus der Wahrscheinlichkeitsverteilung des Endannahmevektors das Klassenetikett mit der höchsten Wahrscheinlichkeit identifiziert. In anderen Fällen bestimmt das CPGNN zudem, ob das identifizierte Klassenetikett größer als eine Wahrscheinlichkeitsschwelle ist. Ist das zugewiesene Klassenetikett größer als die Wahrscheinlichkeitsschwelle, so weist das CPGNN dem Knoten das Klassenetikett zu. Ist das zugewiesene Klassenetikett nicht größer als die Wahrscheinlichkeitsschwelle, so kann das CPGNN angeben, dass der Knoten unetikettiert bleiben soll. Ist das CPGNN beispielsweise darauf trainiert, ein Klassenetikett unter zehn möglichen Klassenetiketten vorherzusagen, so ist möglich, dass die Wahrscheinlichkeit eines jeden Klassenetiketts kleiner als die Wahrscheinlichkeitsschwelle (von beispielsweise 50% oder dergleichen) ist, wobei sich die kombinierten Wahrscheinlichkeiten weiterhin zu 1 summieren. Bleibt ein Knoten unetikettiert, so können eine oder mehrere Handlungen unternommen werden, so beispielsweise unter anderem das erneute Trainieren des CPGNN, das Anfordern von zusätzlichen Merkmalen für den Knoten und das Generieren eines aktualisierten Annahmevektors, das Anfordern einer Nutzereingabe zum Verifizieren der Vorhersage oder dergleichen.
  • Bei Block 824 aktualisiert das CPGNN Parameter der Kompatibilitätsmatrix auf Grundlage des Verlustwertes. Das Minimieren der Verlustfunktion beinhaltet ein Modifizieren von Werten der Kompatibilitätsmatrix auf Grundlage der aktualisierten Annahmevektoren, die während der kompatibilitätsgeleiteten Weitergaben generiert werden. Dies ermöglicht, dass die Kompatibilitätsmatrix im Ende-zu-Ende-Stil (also während des Trainings des CPGNN) gelernt werden kann.
  • Bei Block 828 gibt die Rechenvorrichtung die Graphendatenstruktur mit der Kompatibilitätsmatrix in aktualisierter Form aus. Beinhalten kann das Ausgeben der Graphendatenstruktur unter anderem ein Übertragen der Graphendatenstruktur an eine Nutzervorrichtung (die beispielsweise den Eingabegraphen übertragen hat), eine oder mehrere andere Vorrichtungen, einen Server, eine Datenbank, Kombinationen hieraus und dergleichen. In einigen Fällen kann das Ausgeben der Graphendatenstruktur das Anzeigen der Graphendatenstruktur über eine Nutzerschnittstelle einer Anzeigevorrichtung beinhalten.
  • Die Graphendatenstruktur ist von einem Softwarewerkzeug (beispielsweise dem für Graphen vorgesehenen neuronalen Netzwerk, einem anderen Softwarewerkzeug und dergleichen) zum Modifizieren des Betriebes einer Rechenumgebung nutzbar. Bei einem Beispiel beinhaltet das Modifizieren des Betriebs der Rechenvorrichtung ein auf Grundlage einer Entitätsbeziehung, die durch Knoten in der Graphendatenstruktur dargestellt wird, erfolgendes Modifizieren von interaktivem Content auf eine Weise, die für eine Zielentität, die von dem Knoten mit dem Klassenetikett dargestellt wird, spezifisch ist, wie vorstehend beschrieben worden ist.
  • Beinhalten kann das Modifizieren des Betriebs der Rechenumgebung bei einem weiteren Beispiel zudem ein Modifizieren eines Teilsatzes von Datenelementen des Teilsatzes auf Grundlage von Klassenetiketten in der Graphendatenstruktur, die mit den kompatibilitätsgeleiteten Weitergaben generiert werden, wie vorstehend beschrieben worden ist.
  • Beinhalten kann das Modifizieren des Betriebs der Rechenumgebung bei einem weiteren Beispiel ein Abwickeln einer Anfrage für den Datensatz durch aus der Graphendatenstruktur erfolgendes Abrufen von Entitätsdaten, die den Knoten mit dem Klassenetikett entsprechen, wie vorstehend beschrieben worden ist.
  • Beispiel für ein Rechensystem zum Implementieren von bestimmten Ausführungsformen
  • Es können ein beliebiges geeignetes Rechensystem oder eine Gruppe von Rechensystemen zur Durchführung der hier beschriebenen Vorgänge benutzt werden. 9 zeigt beispielsweise ein Beispiel für ein Rechensystem 900. Die Implementierung des Rechensystems 900 kann für eines oder mehrere von dem Graphenverarbeitungssystem 104, der Nutzervorrichtung 118 und dem Trainingssystem 136 benutzt werden. Bei anderen Ausführungsformen kombiniert eine einzelne Rechenvorrichtung 900, die Vorrichtungen (beispielsweise einen Prozessor, einen Speicher und dergleichen) aufweist, die zu den in 9 dargestellten ähnlich sind, den einen oder die mehreren Vorgänge und Datenspeicher, die in 1 als separate Systeme dargestellt sind.
  • Das dargestellte Beispiel für ein Rechensystem 900 beinhaltet einen Prozessor 902, der kommunikationstechnisch mit einer oder mehreren Speichervorrichtungen 904 gekoppelt ist. Der Prozessor 902 führt computerausführbaren Programmcode aus, der in einer Speichervorrichtung 904 gespeichert ist, greift auf Information zu, die in der Speichervorrichtung 904 gespeichert ist, oder beides. Beispiele für den Prozessor 902 beinhalten einen Mikroprozessor, eine anwendungsspezifische integrierte Schaltung („ASIC“), ein feldprogrammierbares Gate-Array („FPGA“) oder eine beliebige andere geeignete Verarbeitungsvorrichtung. Der Prozessor 902 kann eine beliebige Anzahl von Verarbeitungsvorrichtungen, darunter auch nur eine einzige Verarbeitungsvorrichtung, beinhalten.
  • Eine Speichervorrichtung 904 beinhaltet ein beliebiges geeignetes nichttemporäres computerlesbares Medium zum Speichern von Programmcode 912, Programmdaten 914 oder beidem. Beinhalten kann ein computerlesbares Medium eine beliebige elektronische, optische, magnetische oder andere Speichervorrichtung, die für einen Prozessor computerlesbare Anweisungen oder anderen Programmcode bereitstellen kann. Nicht beschränkende Beispiele für ein computerlesbares Medium beinhalten eine magnetische Platte, einen Speicherchip, einen ROM, einen RAM, eine ASIC, einen optischen Speicher, ein Magnetband oder einen anderen magnetischen Speicher oder ein beliebiges anderes Medium, von dem eine Verarbeitungsvorrichtung Anweisungen lesen kann. Beinhalten können die Anweisungen prozessorspezifische Anweisungen, die von einem Compiler oder Interpreter aus Code generiert werden, der in einer beliebigen geeigneten Computerprogrammiersprache geschrieben ist, darunter beispielsweise C, C++, C#, Visual Basic, Java, Python, Perl, JavaScript und ActionScript.
  • Das Rechensystem 900 kann zudem eine Anzahl von externen oder internen Vorrichtungen, eine Eingabevorrichtung 916, eine Präsentationsvorrichtung 918 oder andere Eingabe- oder Ausgabevorrichtungen beinhalten. Das Rechensystem 900 ist beispielsweise mit einer oder mehreren I/O-Schnittstellen (Input/Output I/O, Eingabe/Ausgabe) 908 gezeigt. Eine I/O-Schnittstelle 908 kann eine Eingabe von Eingabevorrichtungen empfangen oder eine Ausgabe für Ausgabevorrichtungen bereitstellen. Ein oder mehrere Busse 906 sind zudem in dem Rechensystem 900 beinhaltet. Der Bus 406 bzw. 906 koppelt eine oder mehrere Komponenten einer jeweiligen von dem Rechensystem 900 kommunikationstechnisch.
  • Das Rechensystem 900 führt Programmcode 912 aus, der den Prozessor 902 dafür konfiguriert, einen oder mehrere der hier beschriebenen Vorgänge durchzuführen. Beispiele für den Programmcode 912 beinhalten bei verschiedenen Ausführungsformen Algorithmen, die von dem Graphenverarbeitungssystem 104 (beispielsweise Funktionen des CPGNN 108), der Ul-Engine 112, der Trainingsengine 140 oder anderen geeigneten Anwendungen, die einen oder mehrere der hier beschriebene Vorgänge durchführen, ausgeführt werden. Der Programmcode kann in der Speichervorrichtung 904 oder auf einem beliebigen geeigneten computerlesbaren Medium residieren und kann von dem Prozessor 902 oder einem beliebigen anderen geeigneten Prozessor ausgeführt werden.
  • Bei einigen Ausführungsformen speichern eine oder mehrere Speichervorrichtungen 904 Programmdaten 914, die einen oder mehrere Datensätze und Modelle, die hier beschrieben werden, beinhalten. Beispiele für diese Datensätze beinhalten Interaktionsdaten, Trainingsdaten und/oder Parameterwerte. Bei einigen Ausführungsformen sind eines oder mehrere von den Datensätzen, Modellen und Funktionen in derselben Speichervorrichtung (beispielsweise in einer der Speichervorrichtungen 904) gespeichert. Bei zusätzlichen oder alternativen Ausführungsformen sind eines oder mehrere von den Programmen, Datensätzen, Modellen und Funktionen, die hier beschrieben werden, in verschiedenen Speichervorrichtungen 904, die über ein Datennetzwerk zugänglich sind, gespeichert.
  • Bei einigen Ausführungsformen beinhaltet das Rechensystem 900 zudem eine Netzwerkschnittstellenvorrichtung 910. Die Netzwerkschnittstellenvorrichtung 910 beinhaltet eine beliebige Vorrichtung oder eine beliebige Gruppe von Vorrichtungen, die dafür geeignet sind, eine verdrahtete oder drahtlose Datenverbindung zu einem oder mehreren Datennetzwerken herzustellen. Nicht beschränkende Beispiele für die Netzwerkschnittstellenvorrichtung 910 beinhalten einen Ethernet-Netzwerkadapter, ein Modem und/oder dergleichen. Die Rechenvorrichtung 900 kann mit einer oder mehreren anderen Rechenvorrichtungen (beispielsweise einer Nutzervorrichtung) über ein Datennetzwerk unter Nutzung der Netzwerkschnittstellenvorrichtung 910 kommunizieren.
  • Bei einigen Ausführungsformen beinhaltet das Rechensystem 900 zudem die Eingabevorrichtung 916 und die Präsentationsvorrichtung 918, die in 9 dargestellt sind. Beinhalten kann die Eingabevorrichtung 916 eine beliebige Vorrichtung oder eine beliebige Gruppe von Vorrichtungen, die dafür geeignet sind, eine visuelle, akustische oder andere geeignete Eingabe, die die Betriebsvorgänge des Prozessors 902 steuert bzw. regelt oder beeinflusst, zu empfangen. Nicht beschränkende Beispiele für die Eingabevorrichtung 916 beinhalten einen berührungsempfindlichen Bildschirm (Touchscreen), eine Maus, eine Tastatur, ein Mikrofon und/oder eine separate mobile Rechenvorrichtung. Beinhalten kann die Präsentationsvorrichtung 918 eine beliebige Vorrichtung oder eine beliebige Gruppe von Vorrichtungen, die dafür geeignet sind, eine visuelle, akustische oder andere geeignete sensorische Ausgabe bereitzustellen. Nicht beschränkende Beispiele für die Präsentationsvorrichtung 918 beinhalten einen berührungsempfindlichen Bildschirm (Touchscreen), einen Monitor, einen Lautsprecher und/oder eine separate mobile Rechenvorrichtung.
  • Obwohl 9 die Eingabevorrichtung 916 und die Präsentationsvorrichtung 918 derart darstellt, dass diese lokal auf der Rechenvorrichtung, die das Graphenverarbeitungssystem 104 ausführt, befindlich sind, sind auch andere Implementierungen möglich. Bei einigen Ausführungsformen können eine oder mehrere von der Eingabevorrichtung 916 und der Präsentationsvorrichtung 918 beispielsweise eine Remote-Client-Rechenvorrichtung beinhalten, die mit dem Rechensystem 900 über die Netzwerkschnittstellenvorrichtung 910 unter Nutzung eines oder mehrerer Datennetzwerke, wie sie hier beschrieben sind, kommuniziert.
  • Experimentelle Ergebnisse
  • 10 zeigt einen exemplarischen Graphen, der die Genauigkeit eines CPGNN, das verschiedene Datensätze verarbeitet, beschreibt, entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung.
  • Ein CPGNN, das dafür konfiguriert ist, einen Eingabegraphen zu verarbeiten, um Klassenetiketten von Knoten des Eingabegraphen vorherzusagen, wird unter Nutzung von sowohl synthetischen wie auch realweltlichen Eingabegraphen bewertet. Die synthetischen Graphen und Knotenetiketten werden gemäß einem Lösungsansatz generiert, der das Barabasi-Albert-Modell mit konfigurierbaren Klassenkompatibilitätseinstellungen erweitert. Die Merkmalsvektoren für Knoten in den synthetischen Graphen werden zugewiesen, indem die Merkmalsvektoren ausgehend von bestehenden Referenzorientierungsmarken übertragen werden, wobei Knoten mit denselben Klassenetiketten in dem synthetischen Graphen stets Merkmalsvektoren zugewiesen werden, die demselben Klassenetikett in der referenzierten Orientierungsmarke entsprechen. Die realweltlichen Graphen beinhalten drei heterophile Graphen und drei homophile Graphen. Die heterophilen Graphen werden durch die Identifikatoren „Texas“, „Squirrel“ und „Chameleon“ dargestellt, während die homophilen Graphen durch die Identifikatoren „Cora“, „Pubmed“ und „Citeseer“ dargestellt werden. Die Bewertung der realweltlichen Graphen beinhaltet vorher bestimmte Merkmale und Klassenetiketten.
  • Es werden vier Variationen von CPGNNen analysiert. Die vier Variationen beinhalten ein CPGNN, das ein mehrere Schichten umfassendes Perzeptron als Vorannahmeschätzer mit einer Aggregierungsschicht nutzt („CPGNN-MLP-1“), ein CPGNN, das ein mehrere Schichten umfassendes Perzeptron als Vorannahmeschätzer mit zwei Aggregierungsschichten nutzt („CPGNN-MLP-2“), ein CPGNN, das ein Tschebyschow-Polynom-basiertes neuronales Netzwerk für den Vorannahmeschätzer mit einer Aggregierungsschicht nutzt („CPGNN-Cheby-1“), und ein CPGNN, das ein Tschebyschow-Polynom-basiertes neuronales Netzwerk für den Vorannahmeschätzer mit zwei Aggregierungsschichten nutzt („CPGNN-Cheby-2“). Bewertet werden die vier Variationen im Vergleich zu als Maßstab dienenden für Graphen vorgesehenen neuronalen Netzwerken (beispielsweise bestehenden für Graphen vorgesehenen neuronalen Netzwerken). Beispiele für als Maßstab dienende neuronale Netzwerke beinhalten ein für Graphen vorgesehenes faltungstechnisches Netzwerk („GCN“), „ein Graph-Attention-Network „GAT“), GCN-Cheby, GraphSAGE, MixHop und MLP.
  • Eine erste Bewertung beruht auf einer Knotenklassifizierung für Graphen mit kontextbezogenen Merkmalen. Es wurden drei synthetische Graphen für jeden Grad der Heterophilie h ∈ (0; 0,1; 0,2; ...,0,9; 1} generiert. Sodann wurden zufällig 10% der Knoten in jeder Klasse zum Training, 10% zur Bewertung und 80% zur Testung ausgewählt. Die durchschnittliche Klassifizierungsgenauigkeit wurde als Leistungsfähigkeit eines jeden Modells in allen Fällen mit demselben Grad der Heterophilie dargestellt. Die Nutzung von synthetischen Graphen zur Bewertung ermöglicht eine Analyse dessen, wie sich die Leistungsfähigkeit des Modells als Funktion des Grades der Heterophilie in dem Graphen ändert. Der Grad der Heterophilie wurde in dem Graphen beispielsweise ausgehend von einer starken Heterophilie zu einer starken Homophilie angepasst, während andere Faktoren, also beispielsweise die Gradverteilung und Differenzen der kontextbezogenen Merkmale, konstant gehalten worden sind. Für die realweltlichen Graphen wurden zehn zufällige Splits für Trainings-, Bewertungs- und Testsätze generiert. Für jeden Split wurden zufällig 10% der Knoten in jeder Klasse zur Bildung des Trainingssatzes ausgewählt, während weitere 10% für den Bewertungssatz und der Rest als Testsatz ausgewählt worden sind.
  • CPGNN-Cheby-1 zeigte durchweg bessere Leistungen als die als Maßstab dienenden Modelle, und zwar über das vollständige Spektum von niedriger bis zu hoher Homophilie (oder von hoher bis zu niedriger Heterophilie). Im Vergleich zu den CPGNN-Varianten zeigte CPGNN-Cheby-1 die beste Leistung bei allen Einstellungen mit h ≥ 0,2. Für h < 0,2 zeigt CPGNN-MLP-1 die beste Leistung für Graphen mit starker Heterophilie. Die hier beschriebenen CPGNNe zeigen eine merkliche Verbesserung der Leistungsfähigkeit im Vergleich zu bestehenden Verfahren. Durch Einbeziehen und Ende-zu-Ende-Lernen der Klassenkompatibilitätsmatrix erreicht CPGNN-Cheby-1 einen Gewinn von bis zu 7% im Vergleich zu GCN-Chegy bei heterophilen Einstellungen, während CPGNN-MLP-1 eine bis zu 30% bessere Leistung bei Heterophilie und eine 50% bessere Leistung bei Homophilie im Vergleich zum graphenagnostischen MLP-Modell erreicht.
  • 11 zeigt eine exemplarische Bewertung der Genauigkeit eines CPGNN für homophile und heterophile Graphen mit Merkmalen entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. In Tabelle 1 stellt 1104 die Genauigkeit eines CPGNN bei heterophilen Eingabegraphen mit Merkmalen dar. Wie in Tabelle 1 gezeigt ist, ist das die beste Leistung zeigende Verfahren für jeden Graphen eine der vier CPGNN-Varianten, was die Verbesserung durch das Einbeziehen und Lernen der Kompatibilitätsmatrix H in CPGNNe im Vergleich zu herkömmlichen für Graphen vorgesehenen neuronalen Netzwerken (beispielsweise GraphSage, GCN-Cheby, MixHop, GCN und GAT) demonstriert. Insgesamt zeigte CPGNN-Cheby-1 eine bessere Gesamtleistung in Bezug auf den mittleren Leistungsgewinn über alle Graphen hinweg. Die Bewertungsergebnisse demonstrieren die Effektivität des CPGNN bei heterophilen Einstellungen an realweltlichen Orientierungsmarken.
  • In Tabelle 2 stellt 1108 die Genauigkeit eines CPGNN bei homophilen Eingabegraphen mit Merkmalen dar. Jede CPGNN-Variante zeigte eine bessere oder eine mit dem Maßstab vergleichbare Leistung, darunter diejenigen, die implizit eine starke Homophilie voraussetzten. Das hier beschriebene CPGNN ist vielseitiger einsetzbar, da es bei heterophilen Eingabegraphen gut funktioniert und dabei denselben Grad der Leistungsfähigkeit wie diejenigen für Graphen vorgesehenen neuronalen Netzwerke beibehält, die unter der Voraussetzung einer strengen Homophilie optimiert werden.
  • 12 zeigt eine exemplarische Bewertung der Genauigkeit eines CPGNN für homophile und heterophile Graphen ohne Merkmale entsprechend bestimmten Ausführungsformen der vorliegenden Offenbarung. In Tabelle 3 stellt 1204 die Genauigkeit eines CPGNN bei heterophilen Eingabegraphen ohne kontextbezogene Merkmale dar. Die Knotenmerkmale an jeder Orientierungsmarke wurden durch eine Identitätsmatrix ersetzt. Jede der vier CPGNN-Varianten zeigte eine bessere Leistung als die als Orientierungsmarke dienenden für Graphen vorgesehenen neuronalen Netzwerke. Vom Standpunkt eines mittleren Leistungsgewinns aus brachten die vier CPGNN-Varianten hinsichtlich der Gesamtleistung bessere Leistungen als die drei Maßstäbe, wobei CPGNN-MLP-1 die beste Gesamtleistung, gefolgt von CPGNN-Cheby-1 zeigte. Die Leistung von GCN-Cheby und MLP, auf denen die Vorannahmeschätzer bezüglich des CPGNN beruhen können, sind erheblich schlechter als bei anderen Verfahren. In Tabelle 3 stellt 1204 die Effektivität des Einbeziehens der Klassenkompatibilitätsmatrix H in CPGNN-Modelle und das Ende-zu-Ende-Lernen derselben beim Verbessern der Leistungsfähigkeit des CPGNN im Vergleich zu als Orientierungsmarke dienenden für Graphen vorgesehenen neuronalen Netzwerken dar.
  • In Tabelle 4 stellt 1208 die Genauigkeit eines CPGNN für homophile Eingabegraphen ohne kontextbezogene Merkmale dar. Das merkmalslose Einstellen bei Graphen mit starker Homophilie ist eine fundamental einfachere Aufgabe im Vergleich zu Graphen mit starker Heterophilie, und zwar insbesondere bei Verfahren mit implizit vorausgesetzter Homophilie, da diese Verfahren tendenziell eine sehr ähnliche Vorhersage innerhalb der Nachbarschaft eines jeden Knotens liefern. Ungeachtet dessen zeigten die vier CPGNN-Varianten im Vergleich zu Verfahren aus dem Stand der Technik eine vergleichbare Leistung. 10 bis 12 zeigen, dass jedes der vier CPGNNe eine verbesserte Leistung im Vergleich zu als Orientierungsmarke dienenden für Graphen vorgesehenen neuronalen Netzwerken zeigte, wenn heterophile (heterphony) Eingabegraphen (mit Merkmalen oder ohne Merkmale) verarbeitet werden, und eine verbesserte oder beibehaltene Leistung zeigte, wenn homophile Eingabegraphen (mit Merkmalen oder ohne Merkmale) verarbeitet werden.
  • Allgemeine Betrachtungen
  • Obwohl der vorliegende Erfindungsgegenstand detailliert anhand spezifischer Ausführungsformen beschrieben worden ist, sollte einsichtig sein, dass ein Fachmann auf dem Gebiet beim Erwerb eines Verständnisses für das Vorbeschriebene ohne Weiteres Alternativen für solche Ausführungsformen, Varianten hiervon und Äquivalente hierzu konzipieren kann. Es sind hier zahlreiche spezifische Details aufgeführt, um ein eingehendes Verständnis des beanspruchten Erfindungsgegenstandes zu ermöglichen. Einem Fachmann auf dem Gebiet erschließt sich jedoch, dass der beanspruchte Erfindungsgegenstand auch ohne diese spezifischen Details praktisch umgesetzt werden kann. In anderen Fällen sind Verfahren, Einrichtungen oder Systeme, die einem Durchschnittsfachmann bekannt sein dürften, nicht detailliert beschrieben, um den beanspruchten Erfindungsgegenstand nicht unklar zu machen. Entsprechend ist die vorliegende Offenbarung zu Zwecken des Beispiels und nicht zur Beschränkung präsentiert worden und schließt die Einbeziehung von solchen Abwandlungen, Varianten und/oder Hinzufügungen zu dem vorliegenden Erfindungsgegenstand nicht aus, die sich einem Durchschnittsfachmann auf dem Gebiet ohne Weiteres erschließen.
  • Es wird, außer dies ist spezifisch anders angegeben, davon ausgegangen, dass in der vorliegenden Beschreibung Diskussionen, die Begriffe wie „verarbeiten“, „rechnen“, „berechnen“, „bestimmen“ und „identifizieren“ oder dergleichen einsetzen, Handlungen oder Prozesse einer Rechenvorrichtung betreffen, so beispielsweise eines oder mehrerer Computer oder ähnlicher elektronischer Rechenvorrichtungen, die Daten verändern oder umwandeln, die als physikalische, elektronische oder magnetische Größen innerhalb von Speichern, Registern, oder anderen Informationsspeichervorrichtungen, Übertragungsvorrichtungen oder Anzeigevorrichtungen der Rechenplattform dargestellt werden. Die Nutzung von „ausgelegt für“ oder „konfiguriert für“ ist sprachlich offen und inklusiv gemeint, was Vorrichtungen nicht ausschließt, die für die Durchführung zusätzlicher Aufgaben oder Schritte ausgelegt oder konfiguriert sind. Zusätzlich ist die Nutzung von „auf Grundlage von“ dahingehend offen und inklusiv gemeint, dass ein Prozess, ein Schritt, eine Berechnung oder eine andere Handlung „auf Grundlage“ einer oder mehrerer aufgeführter Bedingungen oder eines oder mehrerer aufgeführter Werte in der Praxis auch auf zusätzlichen Bedingungen oder Werten über die aufgeführten hinausgehend beruhen kann. Hier enthaltene Überschriften, Listen und Nummerierungen dienen lediglich der leichteren Erläuterung und sind nicht beschränkend gemeint.
  • Das hier beschriebene System oder die hier beschriebenen Systeme sind nicht auf eine bestimmte Hardwarearchitektur oder Konfiguration beschränkt. Eine Rechenvorrichtung kann eine beliebige geeignete Anordnung von Komponenten beinhalten, die ein Ergebnis, das von einer oder mehreren Eingaben abhängig ist, bereitstellen. Geeignete Rechenvorrichtungen beinhalten mikroprozessorbasierte Mehrzweckcomputersysteme, die auf gespeicherte Software zugreifen, die das Rechensystem von einer Allzweckrechenvorrichtung in eine Spezialzweckvorrichtung, die eine oder mehrere Ausführungsformen des vorliegenden Erfindungsgegenstandes implementiert, programmiert oder konfiguriert. Eine beliebige geeignete Programmierung, ein solches Scripting oder ein anderer Typ von Sprache oder Kombinationen von Sprachen können zur Implementierung der hier enthaltenen Lehren in Software zur Verwendung beim Programmieren oder Konfigurieren einer Rechenvorrichtung benutzt werden.
  • Ausführungsformen der hier beschriebenen Verfahren können im Betrieb derartiger Rechenvorrichtungen praktisch umgesetzt werden. Die Reihenfolge der Blöcke, die bei den vorstehenden Beispielen angeführt ist, kann variiert werden. So können Blöcke beispielsweise umgeordnet, kombiniert und/oder in Teilblöcke zerlegt werden. Bestimmte Blöcke oder Prozesse können auch parallel durchgeführt werden.

Claims (20)

  1. Verfahren, beinhaltend ein mit einer oder mehreren Verarbeitungsvorrichtungen erfolgendes Durchführen von Vorgängen, die umfassen: Empfangen eines Datensatzes, der eine Graphendatenstruktur beinhaltet; mit einem für Graphen vorgesehenen neuronalen Netzwerk erfolgendes Verarbeiten des Datensatzes zum Generieren einer neuen Graphendatenstruktur, wobei das Verarbeiten des für Graphen vorgesehenen neuronalen Netzwerkes wenigstens beinhaltet: Definieren eines Satzes von Vorannahmevektoren jeweils entsprechend Knoten der Graphendatenstruktur, Ausführen einer kompatibilitätsgeleiteten Weitergabe ausgehend von dem Satz von Vorannahmevektoren unter Nutzung einer Kompatibilitätsmatrix, die eine Wahrscheinlichkeit dafür modelliert, dass Knoten aus verschiedenen Klassen verbunden sind, durch das für Graphen vorgesehene neuronale Netzwerk erfolgendes Vorhersagen eines Klassenetiketts für einen Knoten der Graphendatenstruktur auf Grundlage der kompatibilitätsgeleiteten Weitergaben und einer Kenngröße wenigstens eines Knotens innerhalb einer Nachbarschaft des Knotens, und Zuweisen des Klassenetiketts an den Knoten; und Ausgeben der neuen Graphendatenstruktur, wobei die neue Graphendatenstruktur von einem Softwarewerkzeug zum Modifizieren des Betriebes einer Rechenumgebung nutzbar ist.
  2. Verfahren nach Anspruch 1, wobei das Modifizieren des Betriebes einer Rechenumgebung eines oder mehrere umfasst von: Abwickeln einer Anfrage für den Datensatz durch aus der neuen Graphendatenstruktur erfolgendes Abrufen von Entitätsdaten entsprechend dem Knoten mit dem Klassenetikett; Modifizieren eines Teilsatzes von Datenelementen des Datensatzes auf Grundlage von Klassenetiketten in der neuen Graphendatenstruktur, die mit der kompatibilitätsgeleiteten Weitergabe generiert werden; und auf Grundlage einer Entitätsbeziehung, die durch Kanten in der neuen Graphendatenstruktur dargestellt wird, erfolgendes Modifizieren von interaktivem Content auf eine Weise, die für eine Zielentität, die von dem Knoten mit dem Klassenetikett dargestellt wird, spezifisch ist.
  3. Verfahren nach Anspruch 1 oder 2, wobei die Vorgänge des Weiteren umfassen: Trainieren des für Graphen vorgesehenen neuronalen Netzwerkes wenigstens durch: über Modifizierungen an einem oder mehreren Parametern des für Graphen vorgesehenen neuronalen Netzwerkes erfolgendes Minimieren einer Verlustfunktion, die auf einem Kreuzentropieverlust, einem Cotrainingsverlust des neuronalen Netzwerkes und einem Regulierungsterm, der die Kompatibilitätsmatrix um Null herum zentriert, beruht.
  4. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Vorgänge des Weiteren beinhalten: Vortrainieren des neuronalen Netzwerkes für eine vorbestimmte Iterationsmenge unter Nutzung eines Trainingsdatensatzes zum Generieren eines Trainingssatzes von Annahmevektoren jeweils entsprechend Knoten des für Graphen vorgesehenen neuronalen Netzwerkes; Generieren der Kompatibilitätsmatrix; und Berechnen von Werten für Matrixelemente der Kompatibilitätsmatrix unter Nutzung des Trainingssatzes von Annahmevektoren.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Ausführen der kompatibilitätsgeleiteten Weitergabe beinhaltet: Parametrisieren der Kompatibilitätsmatrix; und Anwenden der parametrisierten Kompatibilitätsmatrix auf den Knoten des für Graphen vorgesehenen neuronalen Netzwerkes zum Weitergeben einer Kenngröße eines Annahmevektors entsprechend dem Knoten an Knoten innerhalb der Nachbarschaft des Knotens.
  6. Verfahren nach Anspruch 5, wobei das Anwenden der parametrisierten Kompatibilitätsmatrix beinhaltet: iteratives Anwenden der parametrisierten Kompatibilitätsmatrix in einem Verschiebefenster auf die Knoten des für Graphen vorgesehenen neuronalen Netzwerkes.
  7. Verfahren nach Anspruch 5 oder 6, wobei das Ausführen der kompatibilitätsgeleiteten Weitergabe beinhaltet: Durchführen einer Echounterdrückung zum Unterbinden dessen, dass die Weitergabe der Kenngröße des Annahmevektors entsprechend dem Knoten bei nachfolgenden Iterationen zurück an den Knoten weitergegeben wird.
  8. Verfahren, beinhaltend ein mit einer oder mehreren Verarbeitungsvorrichtungen erfolgendes Durchführen von Vorgängen, die umfassen: Zugreifen auf einen Datensatz, wobei ein Abschnitt von Daten des Datensatzes mit Ground-Truth-Segmenten etikettiert ist; Empfangen eines für Graphen vorgesehenen neuronalen Netzwerkes, das eine Graphendatenstruktur beinhaltet, wobei Knoten der Graphendatenstruktur den Datensatz modellieren; unter Nutzung eines neuronalen Netzwerkes erfolgendes Generieren eines Annahmevektors für einen Knoten der Graphendatenstruktur, wobei der Annahmevektor eine Wahrscheinlichkeit eines Klassenetiketts des Knotens beinhaltet; Anwenden einer Kompatibilitätsmatrix auf den Knoten der Graphendatenstruktur, wobei die Kompatibilitätsmatrix den Annahmevektor des Knotens auf Grundlage von Annahmevektoren von Knoten in einer Nachbarschaft des Knotens modifiziert; auf Grundlage der Annahmevektoren erfolgendes Berechnen eines Verlustwertes, wobei der Verlustwert auf Grundlage (a) eines Cotrainingsverlustes aus dem neuronalen Netzwerk und (b) eines Regulierungswertes, der Reihen der Kompatibilitätsmatrix um Null herum zentriert hält, berechnet wird; Aktualisieren von Parametern der Kompatibilitätsmatrix auf Grundlage des Verlustwertes; und Ausgeben der Graphendatenstruktur mit der Kompatibilitätsmatrix so, wie sie aktualisiert ist.
  9. Verfahren nach Anspruch 8, wobei die Vorgänge des Weiteren umfassen: Bestimmen eines Klassenetiketts für den Knoten der Graphendatenstruktur auf Grundlage des Annahmevektors des Knotens und eines Ground-Truth-Segmentes entsprechend einem weiteren Knoten der Graphendatenstruktur.
  10. Verfahren nach Anspruch 8 oder 9, wobei die Vorgänge des Weiteren beinhalten: Anwenden der Kompatibilitätsmatrix auf jeden Knoten des für Graphen vorgesehenen neuronalen Netzwerkes in einem Verschiebefenster über eine Iterationenmenge, die auf einer Menge von Knoten in der Graphendatenstruktur beruht.
  11. Verfahren nach Anspruch 10, wobei das Anwenden der Kompatibilitätsmatrix auf den Knoten der Graphendatenstruktur beinhaltet: Durchführen einer Echounterdrückung, die verhindert, dass der Annahmevektor des Knotens von den Knoten in der Nachbarschaft des Knotens aus zurück an den Knoten weitergegeben wird.
  12. Verfahren nach einem der Ansprüche 8 bis 11, wobei der Cotrainingsverlust aus dem neuronalen Netzwerk einen Abstand zwischen einem Anfangssatz von Annahmevektoren zu einer Ground-Truth-Verteilung für Knoten in einem Trainingsdatensatz misst.
  13. Nichttransitorisches bzw. nichttemporäres computerlesbares Medium, auf dem Programmcode gespeichert ist, der bei Ausführung durch eine verarbeitende Hardware Vorgänge durchführt, die umfassen: Empfangen eines Datensatzes; einen Schritt zum Generieren einer Graphendatenstruktur zum Modellieren des Datensatzes unter Nutzung eines für Graphen vorgesehenen neuronalen Netzwerkes, das eine Kompatibilitätsmatrix aufweist, die eine Wahrscheinlichkeit dafür modelliert, dass Knoten aus verschiedenen Klassen verbunden sind; und Ausgeben der Graphendatenstruktur.
  14. Nichttemporäres computerlesbares Medium nach Anspruch 13, wobei ein Modifizieren des Betriebes einer Rechenumgebung eines oder mehrere umfasst von: Abwickeln einer Anfrage für den Datensatz durch aus der Graphendatenstruktur erfolgendes Abrufen von Entitätsdaten entsprechend einem Knoten mit einem Klassenetikett; Modifizieren eines Teilsatzes von Datenelementen des Datensatzes auf Grundlage von Klassenetiketten in der Graphendatenstruktur, die mit einer kompatibilitätsgeleiteten Weitergabe generiert werden; und auf Grundlage einer Entitätsbeziehung, die durch Kanten in der Graphendatenstruktur dargestellt wird, erfolgendes Modifizieren von interaktivem Content auf eine Weise, die für eine Zielentität, die von dem Knoten mit dem Klassenetikett dargestellt wird, spezifisch ist.
  15. Nichttemporäres computerlesbares Medium nach Anspruch 13 oder 14, wobei die Vorgänge des Weiteren umfassen: einen Schritt zum Vorhersagen eines Klassenetiketts für einen Knoten auf Grundlage eines Annahmevektors des Knotens.
  16. Nichttemporäres computerlesbares Medium nach einem der Ansprüche 13 bis 15, wobei die Vorgänge des Weiteren beinhalten: Vortrainieren eines neuronalen Netzwerkes für eine vorbestimmte Iterationsmenge unter Nutzung eines Trainingsdatensatzes zum Generieren eines Satzes von Annahmevektoren jeweils entsprechend Knoten des für Graphen vorgesehenen neuronalen Netzwerkes; Generieren der Kompatibilitätsmatrix; und Schätzen von Werten der Kompatibilitätsmatrix unter Nutzung des Satzes von Annahmevektoren.
  17. Nichttemporäres computerlesbares Medium nach einem der Ansprüche 13 bis 16, wobei die Vorgänge des Weiteren beinhalten: Ausführen einer kompatibilitätsgeleiteten Weitergabe, die beinhaltet: Parametrisieren der Kompatibilitätsmatrix; und Anwenden der parametrisierten Kompatibilitätsmatrix auf einen Knoten des für Graphen vorgesehenen neuronalen Netzwerkes zum Weitergeben einer Kenngröße eines Annahmevektors entsprechend dem Knoten an Knoten innerhalb einer Nachbarschaft des Knotens.
  18. Nichttemporäres computerlesbares Medium nach Anspruch 17, wobei das Anwenden der parametrisierten Kompatibilitätsmatrix beinhaltet: iteratives Anwenden der parametrisierten Kompatibilitätsmatrix in einem Verschiebefenster auf die Knoten des für Graphen vorgesehenen neuronalen Netzwerkes.
  19. Nichttemporäres computerlesbares Medium nach Anspruch 17 oder 18, wobei das Ausführen der kompatibilitätsgeleiteten Weitergabe beinhaltet: Durchführen einer Echounterdrückung zum Unterbinden dessen, dass die Weitergabe einer Kenngröße des Annahmevektors entsprechend dem Knoten bei nachfolgenden Iterationen zurück an den Knoten weitergegeben wird.
  20. Nichttemporäres computerlesbares Medium nach einem der Ansprüche 13 bis 19, wobei die Vorgänge des Weiteren beinhalten: Modifizieren von Werten der Kompatibilitätsmatrix auf Grundlage eines Minimierens eines Verlustwertes, wobei der Verlustwert auf Grundlage (a) eines Cotrainingsverlustes aus dem neuronalen Netzwerk und (b) eines Regulierungswertes, der Reihen der Kompatibilitätsmatrix um Null herum zentriert hält, berechnet wird.
DE102021004591.2A 2021-03-23 2021-09-10 Für Graphen vorgesehene neuronale Netzwerke für Datensätze mit Heterophilie Pending DE102021004591A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/210,157 2021-03-23
US17/210,157 US20220309334A1 (en) 2021-03-23 2021-03-23 Graph neural networks for datasets with heterophily

Publications (1)

Publication Number Publication Date
DE102021004591A1 true DE102021004591A1 (de) 2022-09-29

Family

ID=83150026

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021004591.2A Pending DE102021004591A1 (de) 2021-03-23 2021-09-10 Für Graphen vorgesehene neuronale Netzwerke für Datensätze mit Heterophilie

Country Status (5)

Country Link
US (1) US20220309334A1 (de)
CN (1) CN115130643A (de)
AU (1) AU2021236553A1 (de)
DE (1) DE102021004591A1 (de)
GB (1) GB2605218A (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220382741A1 (en) * 2021-05-28 2022-12-01 Neo4J Sweden Ab Graph embeddings via node-property-aware fast random projection
US11836538B2 (en) * 2021-10-11 2023-12-05 International Business Machines Corporation Heterogeneous graph generation for application microservices
CN116189809B (zh) * 2023-01-06 2024-01-09 东南大学 一种基于对抗攻击的药物分子重要节点预测方法
CN115925076B (zh) * 2023-03-09 2023-05-23 湖南大学 一种基于机器视觉与深度学习的混凝自动投药方法与系统
CN116049769B (zh) * 2023-04-03 2023-06-20 湖南大学 离散对象数据关联性预测方法及系统与存储介质
CN117495481A (zh) * 2023-10-25 2024-02-02 宁夏大学 一种基于异构时序图关注度网络的物品推荐方法
CN117350461B (zh) * 2023-12-05 2024-03-19 湖南财信数字科技有限公司 企业异常行为预警方法、系统、计算机设备及存储介质

Also Published As

Publication number Publication date
GB2605218A (en) 2022-09-28
AU2021236553A1 (en) 2022-10-13
US20220309334A1 (en) 2022-09-29
CN115130643A (zh) 2022-09-30

Similar Documents

Publication Publication Date Title
DE102021004591A1 (de) Für Graphen vorgesehene neuronale Netzwerke für Datensätze mit Heterophilie
Liu et al. Flow straight and fast: Learning to generate and transfer data with rectified flow
DE112020000281T5 (de) Vereinigen von modellen, die jeweilige zielklassen aufweisen, mit destillation
DE112017002799B4 (de) Verfahren und system zum generieren multimodaler digitaler bilder
DE112021004908T5 (de) Computerbasierte systeme, rechenkomponenten und rechenobjekte, die eingerichtet sind, dynamische ausreisser-verzerrungs-verringerung bei maschinenlernmodellen zu implementieren
DE102018111905A1 (de) Domänenspezifische Sprache zur Erzeugung rekurrenter neuronaler Netzarchitekturen
DE112018006047T5 (de) Deformation von aufwandsfunktionen bei der quanten-näherungsoptimierung
DE112019005750T5 (de) Erlernen des Erzeugens synthetischer Datensätze zum Trainieren neuronalerNetze
DE112018006189T5 (de) Robuste gradienten-gewichtskomprimierungsschemata für deep-learning-anwendungen
DE112016001796T5 (de) Feinkörnige bildklassifizierung durch erforschen von etiketten von einem bipartiten graphen
DE112017005538T5 (de) Automatisierte Erzeugung von Arbeitsabläufen
DE10311311A1 (de) Berechnung von Preiselastizität
EP3336800A1 (de) Bestimmen einer trainingsfunktion zum generieren von annotierten trainingsbildern
DE112019003910T5 (de) Informationsverarbeitungsverfahren, informationsverarbeitungsvorrichtung und informationsverarbeitungsprogramm
DE112019006156T5 (de) Erkennung und behandlung von unsachgemässen eingaben durch neuronale netzwerke
DE112020001774T5 (de) Datensatzabhängiges niedrigrang-zerlegen von neuronalen netzwerken
DE112021004559T5 (de) System zur robusten vorhersage bei unregelmässigen zeitreihen in dialysepatientenakten
DE102022113243A1 (de) Score-basierte generative Modellierung im latenten Raum
DE102018204514A1 (de) Handhaben einer signalsättigung in gepulsten neuronalen netzen
DE112021005925T5 (de) Domänenverallgemeinerter spielraum über metalernen zur tiefen gesichtserkennung
DE112021003761T5 (de) Prädiktive modelle mit zerlegbaren hierarchischen ebenen, die konfiguriert werden, um interpretierbare resultate zu erzeugen
DE112016007411T5 (de) Fuzzy-eingabe für autoencoder
DE102021124445A1 (de) Metamerkmal-trainingsmodelle für maschinenlernalgorithmen
DE102016220561A1 (de) Verfahren zur Ermittlung von Fahrrouten für Landfahrzeuge
DE102023202593A1 (de) Verfahren und System zum Empfehlen von Modulen für ein Engineering-Projekt

Legal Events

Date Code Title Description
R012 Request for examination validly filed